Bug 18725: Prevent process_message_queue to send duplicate emails if message_queue...
authorKyle M Hall <kyle@bywatersolutions.com>
Thu, 26 Oct 2017 13:04:59 +0000 (09:04 -0400)
committerFridolin Somers <fridolin.somers@biblibre.com>
Wed, 23 May 2018 05:09:01 +0000 (07:09 +0200)
commitb4ad5070472c0e0f61e4ed016cdd23f6b8bd2dc8
tree4da8afad105240cdcc3b22a7494172b56746984a
parentf54db7492dc703b306239279833a2036ba021e7f
Bug 18725: Prevent process_message_queue to send duplicate emails if message_queue is not writable.

Last week, we had a database server whose disk filled, causing database writes to fail.

This meant that messages in message_queue marked 'pending' were not marked as 'sent' when they were added to the postfix mail queue; messages were sent every 15 minutes (as specified in the cron job) until the disk space issues were cleared.

I would suggest adding a token write to the start of process_message_queue.pl as a 'canary in the coal mine'. If the database write fails, process_message_queue should stop, because it's not safe to proceed sending emails that may not be marked 'sent'.

Test Plan:
1) Apply this patch
2) Make the message_queue table unwriteable somehow
3) Run process_message_queue.pl
4) Script should die with error

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit a1e044094b2c29024dfe66b76c7bf2c619be0c7a)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
C4/Letters.pm