From 1839dcdb747b10bb20cd7837b6c78af919f4fc1c Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Thu, 29 Sep 2022 11:39:24 +0200 Subject: [PATCH] Fix off-by-one error in retry intervals --- src/pretix/base/services/mail.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pretix/base/services/mail.py b/src/pretix/base/services/mail.py index f0c8c70305..2df27d819a 100644 --- a/src/pretix/base/services/mail.py +++ b/src/pretix/base/services/mail.py @@ -506,7 +506,7 @@ def mail_send_task(self, *args, to: List[str], subject: str, body: str, html: st else: # Most likely some other kind of temporary failure, retry again (but pretty soon) max_retries = 5 - retry_after = [10, 30, 60, 300, 900][self.request.retries] + retry_after = [10, 30, 60, 300, 900, 900][self.request.retries] try: self.retry(max_retries=max_retries, countdown=retry_after) @@ -567,7 +567,7 @@ def mail_send_task(self, *args, to: List[str], subject: str, body: str, html: st except Exception as e: if isinstance(e, (smtplib.SMTPServerDisconnected, smtplib.SMTPConnectError, ssl.SSLError, OSError)): try: - self.retry(max_retries=5, countdown=[10, 30, 60, 300, 900][self.request.retries]) + self.retry(max_retries=5, countdown=[10, 30, 60, 300, 900, 900][self.request.retries]) except MaxRetriesExceededError: if log_target: log_target.log_action(