ToDigest failing with missing attribute error
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
GNU Mailman |
Fix Released
|
Medium
|
Unassigned |
Bug Description
One of my list queues has stopped sending messages due
to a missing method:
Mar 03 18:11:02 2006 (16865) Uncaught runner exception:
'str' object has no attribute 'get'
Mar 03 18:11:02 2006 (16865) Traceback (most recent
call last):
File "/usr/lib/
110, in _oneloop
self.
File "/usr/lib/
160, in _onefile
keepqueued = self._dispose(
File
"/usr/lib/
line 130, in _dispose
more = self._dopipelin
File
"/usr/lib/
line 153, in _dopipeline
sys.
File "/usr/lib/
line 91, in process
send_
File "/usr/lib/
line 132, in send_digests
send_
File "/usr/lib/
line 217, in send_i18n_digests
msgsubj = msg.get('subject', _('(no subject)'))
AttributeError: 'str' object has no attribute 'get'
Mar 03 18:11:02 2006 (16865) SHUNTING:
1141426524.
Digest mailbox has now gotten very large (> 4MB) so I
cant attach.
[http://
This looks like Mailman 2.1.5 or earlier. This problem was Handlers/ ToDigest. py you will see
fixed in 2.1.6. At line 210 in your
Mailman/
while msg is not None:
if msg == '':
# It was an unparseable message
msg = mbox.next()
msgcount += 1
You need to add a continue so this becomes
while msg is not None:
continue
if msg == '':
# It was an unparseable message
msg = mbox.next()
msgcount += 1
In the mean time, if you don't mind having your digest out
of sequence, just move the digest.mbox aside. Then you can
patch ToDigest.py and straighten out the digest situation.
Note that you probably don't want to both run bin/unshunt
and replace the digest.mbox as that will result in
duplicates, but if messages haven't reached the list, you
need to run bin/unshunt to finish processing them.