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.
| Comment | File | Size | Author |
|---|---|---|---|
| #4 | notify_race.patch | 3.32 KB | matt2000 |
| #2 | notify-368175-2.patch | 3.14 KB | jromine |
| #1 | notify-368175-1.patch | 1.89 KB | jromine |
Comments
Comment #1
jromine commentedattaching patch
Comment #2
jromine commentedcorrected fix (last part was missing)
Comment #3
jromine commentedThis was also reported against notify-6.x-1.0 as #365700: Need to queue mailings across multiple cron runs for scalability
Comment #4
matt2000 commentedNo 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.
Comment #5
gisleFor 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.
Comment #6
gisleChanging status. Nobody is going to backport this patch to 5.x-1.2.