[ mailman-Patches-860135 ] handle DiscardMessage in ToDigest handler
SourceForge.net
noreply at sourceforge.net
Sun Dec 14 21:27:48 EST 2003
Patches item #860135, was opened at 2003-12-15 13:27
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=300103&aid=860135&group_id=103
Category: mail delivery
Group: Mailman 2.1
Status: Open
Resolution: None
Priority: 5
Submitted By: Martin Pool (mbp)
Assigned to: Nobody/Anonymous (nobody)
Summary: handle DiscardMessage in ToDigest handler
Initial Comment:
Our scrubber was raising DiscardMessage exceptions when
trying to scrub messages from the digest. This
situation may have arisen because of a configuration
change that allowed some messages to get into the
digest mailbox when they would previously have been
scrubbed out.
In any case, it was causing exceptions like this:
Traceback (most recent call last):
File "/usr/local/mailman/cron/senddigests", line 94, in ?
main()
File "/usr/local/mailman/cron/senddigests", line 86,
in main
mlist.send_digest_now()
File "/usr/local/mailman/Mailman/Digester.py", line
60, in send_digest_now
ToDigest.send_digests(self, mboxfp)
File
"/usr/local/mailman/Mailman/Handlers/ToDigest.py", line
131, in send_digests
send_i18n_digests(mlist, mboxfp)
File
"/usr/local/mailman/Mailman/Handlers/ToDigest.py", line
304, in send_i18n_digests
msg = scrubber(mlist, msg)
File
"/usr/local/mailman/Mailman/Handlers/Scrubber.py", line
178, in process
raise DiscardMessage
Mailman.Errors.DiscardMessage
It seems reasonable to have the ToDigest handler
respond to these exceptions by discarding the message,
per this patch
--- ToDigest.py.orig Mon Dec 15 02:21:51 2003
+++ ToDigest.py Mon Dec 15 02:23:19 2003
@@ -44,6 +44,7 @@
from Mailman import Utils
from Mailman import Message
from Mailman import i18n
+from Mailman import Errors
from Mailman.Mailbox import Mailbox
from Mailman.MemberAdaptor import ENABLED
from Mailman.Handlers.Decorate import decorate
@@ -301,7 +302,10 @@
print >> plainmsg, separator30
print >> plainmsg
# Use Mailman.Handlers.Scrubber.process() to
get plain text
- msg = scrubber(mlist, msg)
+ try:
+ msg = scrubber(mlist, msg)
+ except (Errors.DiscardMessage):
+ continue
# Honor the default setting
for h in mm_cfg.PLAIN_DIGEST_KEEP_HEADERS:
if msg[h]:
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=300103&aid=860135&group_id=103
More information about the Mailman-coders
mailing list