From f0e582c1a6fb8575a849a562753b6911dfc0c7c0 Mon Sep 17 00:00:00 2001 From: Son Date: Thu, 23 Dec 2021 19:34:17 +0100 Subject: [PATCH] use postfix retry for SMTPServerDisconnected (in addition to SMTPRecipientsRefused) error --- email_handler.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/email_handler.py b/email_handler.py index f9899122..df98b134 100644 --- a/email_handler.py +++ b/email_handler.py @@ -42,7 +42,7 @@ from email.mime.application import MIMEApplication from email.mime.multipart import MIMEMultipart from email.utils import formataddr, make_msgid, formatdate, getaddresses from io import BytesIO -from smtplib import SMTPRecipientsRefused +from smtplib import SMTPRecipientsRefused, SMTPServerDisconnected from typing import List, Tuple, Optional import newrelic.agent @@ -824,13 +824,14 @@ def forward_email_to_mailbox( envelope.rcpt_options, is_forward=True, ) - except SMTPRecipientsRefused: + except (SMTPServerDisconnected, SMTPRecipientsRefused): # that means the mailbox is maybe invalid LOG.w( - "SMTPRecipientsRefused forward phase %s -> %s -> %s", + "SMTPServerDisconnected or SMTPRecipientsRefused during forward phase %s -> %s -> %s", contact, alias, mailbox, + exc_info=True, ) if should_ignore_bounce(envelope.mail_from): return True, status.E207