Notify looks for nodes created in a time window between the last time
notify was run (notify_send_last), and the current time. After processing
any notifications, notify_send_last is set to the current time.

Bug: nodes created in the time window between when notify begins
executing its query, and the time that notify_send_last is updated,
are missed.

Fix: upon completion, set notify_send_last to be the time notify began
executing, rather than the time it finished.

Comments

jromine’s picture

Status: Active » Needs review
StatusFileSize
new1.89 KB

attaching patch

jromine’s picture

StatusFileSize
new3.14 KB

corrected fix (last part was missing)

jromine’s picture

This was also reported against notify-6.x-1.0 as #365700: Need to queue mailings across multiple cron runs for scalability

matt2000’s picture

Status: Needs review » Patch (to be ported)
StatusFileSize
new3.32 KB

No need to store a variable when we can just pass the value to _notify_send(). I've just committed this patch to the 6.x branch.

gisle’s picture

For the record: This was committed and is part of 6.x-1.2, but the patch was never backported to the 5.x-branch.

It a duplicate of #365700: Need to queue mailings across multiple cron runs for scalability. However, the latter issue also addresses scalability, which need to be looked into separately.

gisle’s picture

Status: Patch (to be ported) » Closed (won't fix)

Changing status. Nobody is going to backport this patch to 5.x-1.2.