Mark Smith (
mark) wrote in
dw_maintenance2019-12-07 09:40 am
Long-standing notification issue fixed
While working on the notifications system, I discovered the cause of an issue that has been around for a while that caused a number of users to be unable to receive some notifications. In the worst cases, you would never get an email or inbox notification of new comments, no matter how many times you toggled it on.
This is now fixed.
The story is kind of gory but the short version is that a couple of years ago when we created a new database cluster and moved a bunch of users to it, some subscriptions got 'left behind' on the old cluster. Our subscriptions and notifications system was seeing these old notifications, but later in the process when attempting to generate a notification, was throwing them out because they didn't match the user's 'correct' cluster.
I've pruned the notification rules that were on the incorrect cluster for all users (about 1.1 million notification rules, actually) and this should resolve the issue where notifications didn't work in a number of cases.
This is now fixed.
The story is kind of gory but the short version is that a couple of years ago when we created a new database cluster and moved a bunch of users to it, some subscriptions got 'left behind' on the old cluster. Our subscriptions and notifications system was seeing these old notifications, but later in the process when attempting to generate a notification, was throwing them out because they didn't match the user's 'correct' cluster.
I've pruned the notification rules that were on the incorrect cluster for all users (about 1.1 million notification rules, actually) and this should resolve the issue where notifications didn't work in a number of cases.

no subject
no subject
no subject
no subject
no subject
no subject
Are notifications being delayed right now due to this? Because I noticed i haven't received a notification for this comment in either my DW inbox or email.
no subject
I have also just received a comment without any form of notification.
[edit] I have now received a second comment without either e-mail or inbox notification. I am used to seeing both.
Thanks!
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
no subject
no subject
no subject
no subject
https://addme.dreamwidth.org
(no subject)
no subject
And, separately, I greatly appreciate the details you provide when things are borked and/or fixed.
no subject
(no subject)
no subject
no subject
Can you test it sometime after I post this and see if it works? If you don't get a notification that you expected, can you give me the link to the comment that should have generated it? (this will help me check the notification logs and see what might have happened.)
(no subject)
(no subject)
(no subject)
no subject
Root cause analysis?
Did you investigate why (and when) your system was programmed that way?
The correct behavior in the situation when code processes inconsistent data -- is to notify developers about unexpected situation that developers have to revisit and recode.
If code silently ignores problems - it leads to years of misdiagnosed misbehavior.
Re: Root cause analysis?
There are a lot of parts of the codebase that are old and full of cobwebs. In the 20 years since LiveJournal started, the art of building reliable web services has improved tremendously. I would love to have the time to rewrite Dreamwidth from scratch, but I'll settle for rewriting systems one by one ... and as I do, adding tons more debugging, metrics, defense-in-depth, modern design practices, etc.
But from time to time, one of the systems that hasn't gotten a modernization will rear its ugly head and we'll have to deal with it. Sucks, but that's the way of it. My present project is to remove the "homebuilt" queueing service (on top of MySQL) which has a tendency to overload the database and cause latency and other issues and replace it with Amazon's SQS. Along the way, this has involved replumbing the notification system, which has led to these adventures.
If you're interested in contributing, we always welcome new developers -- it's a volunteer crew and we're always happy to welcome newcomers.
Re: Root cause analysis?
Re: Root cause analysis?
Re: Root cause analysis?
Re: Root cause analysis?
SQS vs homegrown MySQL notifications
Re: Root cause analysis?
Monolith vs micro-services
Re: Monolith vs micro-services
Re: Monolith vs micro-services
Re: Monolith vs micro-services
Re: Monolith vs micro-services
Re: Monolith vs micro-services
The effect of rewriting app from scratch
no subject
I am currently having an issue where trying to post a poll returns the message: Error updating journal: Poll error: All poll-question (or lj-pq) tags must be nested inside an enclosing poll (or lj-poll) tag.
I have opened a support ticket, but I'm really hoping there's a faster way to figure out what's going on, because the pole in question is kinda time-relevant (it's for holiday cards). Is there somewhere I can check to see if others are having the problem and find a solution?
no subject
(in a pinch, I know a lot of people use google docs forms for holiday card info-gathering)
no subject
no subject
(no subject)
(no subject)
(no subject)
no subject
no subject
Ideally, please go do something to _cause_ a notification, and then let me know. I added tons more tooling to the system so I can look up individual notification events (not the content, but whether or not they fired), but I need to know which journal and when.
(no subject)
(no subject)
(no subject)
(no subject)
no subject
no subject
Have you gotten a notification from one of them? Just to prove it's working?
(no subject)
(no subject)
no subject
I've still been getting notifications sporadically and unpredictably - some have come in that are brand new while I know of older comments I got no notifications for and which haven't been showing up in my DW Inbox either.
no subject
no subject
no subject
It may be worth trying to toggle the beta entry page (https://www.dreamwidth.org/beta) and seeing if posting from the other entry page form works, as they have different form flows.
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
no subject
no subject
no subject
--
Dreamwidth Team
Dreamwidth Studios
If you'd rather not get these updates, you can change your preferences at https://www.dreamwidth.org/manage/settings/?cat=notifications
At the same time, I'm not getting some notifications that I should. Pretty sure these are all notifications of moderated submissions to the community I'm moderating, which is active right now.