[Mailman-Users] /usr/lib/mailman/cron/senddigests error

Mark Sapiro mark at msapiro.net
Fri Aug 21 22:44:38 CEST 2009


Hal Huntley wrote:

>I get this mailman message about digests a few times a week based on the
>senddigests cron job.  Since we don't do digests on any of our mailing
>lists, I've ignored it and no one has complained about not receiving
>messages on any of our lists.


If you don't "do digests" set Digest options -> digestable to No on all
your lists, and this problem can't occur. See the FAQ at
<http://wiki.list.org/x/hYA9> for how to do this for all lists from
the command line.


>But in the interest of learning something and reducing the amount of email I
>may get, I'd like to figure out how to make it go away.  I've deleted most
>of the headers. The text of the traceback is in its entirety.  
>
>It's probably a pretty easy fix, I'd guess.  I _could_ comment out the
>cronjob entry for the senddigests, and I'm willing to do that, but it would
>be more beneficial to learn a bit more of the depths of things.
>
>It's mailman 2.1.5.
>
>Hal Huntley
>SRI International
>
>-----
>[Maybe pertinent headers:]
>X-Cron-Env: <SHELL=/bin/sh>
>X-Cron-Env: <HOME=/usr/lib/mailman>
>X-Cron-Env: <PATH=/usr/bin:/bin>
>X-Cron-Env: <LOGNAME=mailman>
>X-Cron-Env: <USER=mailman>
>Subject: [Mailman] Cron <mailman at host> /usr/lib/mailman/cron/senddigests
>X-Mailman-Version: 2.1.5
>Precedence: list
>
>[body of message:]
>Traceback (most recent call last):
>  File "/usr/lib/mailman/cron/senddigests", line 94, in ?
>    main()
>  File "/usr/lib/mailman/cron/senddigests", line 86, in main
>    mlist.send_digest_now()
>  File "/usr/lib/mailman/Mailman/Digester.py", line 60, in send_digest_now
>    ToDigest.send_digests(self, mboxfp)
>  File "/usr/lib/mailman/Mailman/Handlers/ToDigest.py", line 132, in send_digests
>    send_i18n_digests(mlist, mboxfp)
>  File "/usr/lib/mailman/Mailman/Handlers/ToDigest.py", line 225, in send_i18n_digests
>    addresses = getaddresses([oneline(msg.get('from', ''), lcset)])
>  File "/usr/lib/mailman/Mailman/Handlers/ToDigest.py", line 389, in oneline
>    h = make_header(decode_header(s))
>  File "/usr/lib/mailman/pythonlib/email/Header.py", line 113, in decode_header
>    raise HeaderParseError
>email.Errors.HeaderParseError


There is a lists/LISTNAME/digest.mbox file for some LISTNAME that has
an invalid (unparseable) RFC2047 encoded From: header.

You need to remove this (and maybe all other) digest.mbox files. If you
don't remove it, it will eventually grow until it reaches the list's
Digest options -> digest_size_threshhold at which point every post
will attempt to send a digest and will encounter this exception, and
in Mailman as old as 2.1.5, this will effectively shut down the list.

You might also consider upgrading Mailman. Beginning with 2.1.10,
cron/senddigests handled this more gracefully and reported the
offenting list name and digest.mbox file. Also, since 2.1.6 or 2.1.7,
a defective digest.mbox won't stop list processing.
	
-- 
Mark Sapiro <mark at msapiro.net>        The highway is for gamblers,
San Francisco Bay Area, California    better use your sense - B. Dylan



More information about the Mailman-Users mailing list