Skip to content

Commit 1c0f744

Browse files
committed
update
1 parent 467906d commit 1c0f744

2 files changed

Lines changed: 11 additions & 1 deletion

File tree

Mailman/Queue/BounceRunner.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,11 @@
5050
from Mailman.Logging.Syslog import syslog
5151
from Mailman.i18n import _
5252

53+
# Lazy import to avoid circular dependency
54+
def get_mail_list():
55+
from Mailman.MailList import MailList
56+
return MailList
57+
5358
COMMASPACE = ', '
5459

5560
class BounceMixin:
@@ -172,7 +177,7 @@ def _dispose(self, mlist, msg, msgdata):
172177
# Ensure we have a MailList object
173178
if isinstance(mlist, str):
174179
try:
175-
mlist = MailList.MailList(mlist, lock=0)
180+
mlist = get_mail_list()(mlist, lock=0)
176181
should_unlock = True
177182
except Errors.MMUnknownListError:
178183
syslog('error', 'BounceRunner: Unknown list %s', mlist)

Mailman/Queue/IncomingRunner.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,11 @@ class IncomingRunner(Runner):
131131
_track_messages = True
132132
_max_processed_messages = 10000
133133
_max_retry_times = 10000
134+
135+
# Retry configuration
136+
MIN_RETRY_DELAY = 300 # 5 minutes minimum delay between retries
137+
MAX_RETRIES = 5 # Maximum number of retry attempts
138+
_retry_times = {} # Track last retry time for each message
134139

135140
def __init__(self, slice=None, numslices=1):
136141
mailman_log('debug', 'IncomingRunner: Starting initialization')

0 commit comments

Comments
 (0)