The issue, as reported, is fixed in the next release.
Instant notifications are now processed via deferred task. This mitigates performance issues when the update triggering a notification affects a large number of nodes -- 1 discussion, 1 page, up to 12 books, 1 social group (vBulletin), infinite areas, infinite categories, infinite feeds, 1 entire wiki -- and where each affected node may have hundreds or thousands of subscribers.
- Update activates deferred task. The IDs of known affected parent nodes are passed to the task.
- Deferred task begins. We process one parent-type at a time in order of precedence.
- As before, a list of subscribers for all affected nodes of that type is compiled.
- We process up to 500 subscribers in a batch (could be lower depending on the actual processing speed). Because of a possible multiplicative effect, this number is fixed; see below.
- As before, we determine how many of the affected nodes the user is subscribed to.
- We exclude any subscription where a notification was logged within the last 30 days.
- As before, we only issue a notification for the closest node with a subscription that would include the update content.
- If a notification was sent, we log that a notification was sent for this subscription.
Visiting the node that the subscription was attached to will clear the log for that subscription, allowing new notifications to be sent. Additionally, if a node was not visited for 30 days, its log will be cleared.
Even though there are significantly fewer notifications to be sent, moderator notifications have also been moved to a deferred task.
I will do some more testing locally before I apply the changes at your site. With such massive changes, there is a risk that notifications are sent too often or not at all; due to legal ramifications of either, careful review is needed before roll-out.
In my opinion, it is worth applying similar throttling to the existing cron jobs for daily and weekly notifications and changing them to deferred tasks when they run, because of similar concerns: when 1 thousand nodes have updates in a week and they all have 1 thousand weekly subscribers, currently all 1 million notifications would be processed in a single batch... I am leaving this report open until this is also resolved.