[exim-cvs] Add retry timeout fix to ChangeLog

Top Page
Delete this message
Reply to this message
Author: Exim Git Commits Mailing List
Date:  
To: exim-cvs
Subject: [exim-cvs] Add retry timeout fix to ChangeLog
Gitweb: http://git.exim.org/exim.git/commitdiff/67bd1ab3f4e50e21946731e8d6950f9a6801370e
Commit:     67bd1ab3f4e50e21946731e8d6950f9a6801370e
Parent:     ba9af0af397dd7d395378b883f8d9beb3bdd5ffd
Author:     Tony Finch <dot@???>
AuthorDate: Fri Nov 30 16:01:00 2012 +0000
Committer:  Tony Finch <dot@???>
CommitDate: Fri Nov 30 16:01:00 2012 +0000


    Add retry timeout fix to ChangeLog
---
 doc/doc-txt/ChangeLog |   24 ++++++++++++++++++++++++
 1 files changed, 24 insertions(+), 0 deletions(-)


diff --git a/doc/doc-txt/ChangeLog b/doc/doc-txt/ChangeLog
index 218d255..577ac39 100644
--- a/doc/doc-txt/ChangeLog
+++ b/doc/doc-txt/ChangeLog
@@ -96,6 +96,30 @@ PP/13 Dovecot auth: log better reason to rejectlog if Dovecot did not
       protocol violation error.  Also, make Exim more robust to bad
       data from the Dovecot auth socket.


+TF/01 Fix ultimate retry timeouts for intermittently deliverable recipients.
+
+      When a queue runner is handling a message, Exim first routes the
+      recipient addresses, during which it prunes them based on the retry
+      hints database. After that it attempts to deliver the message to
+      any remaining recipients. It then updates the hints database using
+      the retry rules.
+
+      So if a recipient address works intermittently, it can get repeatedly
+      deferred at routing time. The retry hints record remains fresh so the
+      address never reaches the final cutoff time.
+
+      This is a fairly common occurrence when a user is bumping up against
+      their storage quota. Exim had some logic in its local delivery code
+      to deal with this. However it did not apply to per-recipient defers
+      in remote deliveries, e.g. over LMTP to a separate IMAP message store.
+
+      This commit adds a proper retry rule check during routing so that
+      the final cutoff time is checked against the message's age. I also
+      took the opportunity to unify three very similar blocks of code.
+
+      I suspect this new check makes the old local delivery cutoff check
+      redundant, but I have not verified this so I left the code in place.
+


Exim version 4.80.1
-------------------