[Mailman-Users] Problems in Mailman

Mark Sapiro mark at msapiro.net
Fri Apr 3 17:04:20 CEST 2009


Mario Sergio wrote:
>
>I'm having some problems with a Mailman. When I accept an email that was
>received in a list, I get this in the error log:
>
> 
>
>Apr 01 14:57:01 2009 (2315) SHUNTING:
>1238608621.3245921+6e71fad398d2eba77746fc941cf6b1123ed7ecd3
>
>Apr 01 14:57:01 2009 (2315) Uncaught runner exception: invalid load key,
>'7'.
>
>Apr 01 14:57:01 2009 (2315) Traceback (most recent call last):
>
>  File "/usr/lib/mailman/Mailman/Queue/Runner.py", line 112, in _oneloop
>
>    self._onefile(msg, msgdata)
>
>  File "/usr/lib/mailman/Mailman/Queue/Runner.py", line 170, in _onefile
>
>    keepqueued = self._dispose(mlist, msg, msgdata)
>
>  File "/usr/lib/mailman/Mailman/Queue/IncomingRunner.py", line 130, in
>_dispose
>
>    more = self._dopipeline(mlist, msg, msgdata, pipeline)
>
>  File "/usr/lib/mailman/Mailman/Queue/IncomingRunner.py", line 153, in
>_dopipeline
>
>    sys.modules[modname].process(mlist, msg, msgdata)
>
>  File "/usr/lib/mailman/Mailman/Handlers/Moderate.py", line 109, in
>process
>
>    Hold.hold_for_approval(mlist, msg, msgdata, Hold.NonMemberPost)
>
>  File "/usr/lib/mailman/Mailman/Handlers/Hold.py", line 243, in
>hold_for_approval
>
>    cookie = mlist.pend_new(Pending.HELD_MESSAGE, id)
>
>  File "/usr/lib/mailman/Mailman/Pending.py", line 65, in pend_new
>
>    db = self.__load()
>
>  File "/usr/lib/mailman/Mailman/Pending.py", line 95, in __load
>
>    return cPickle.load(fp)
>
>UnpicklingError: invalid load key, '7'.



For this one, the lists/listname/pending.pck is corrupt. Just remove it
or move it aside.



>And this:
>
> 
>
>Apr 01 15:09:57 2009 (2312) SHUNTING:
>1238609343.8684261+bff1c62c38a18427c91c1a4bb7ca5f7dfe15a267
>
>Apr 01 15:11:01 2009 (2312) Uncaught runner exception: bad marshal data
>
>Apr 01 15:11:01 2009 (2312) Traceback (most recent call last):
>
>  File "/usr/lib/mailman/Mailman/Queue/Runner.py", line 112, in _oneloop
>
>    self._onefile(msg, msgdata)
>
>  File "/usr/lib/mailman/Mailman/Queue/Runner.py", line 170, in _onefile
>
>    keepqueued = self._dispose(mlist, msg, msgdata)
>
>  File "/usr/lib/mailman/Mailman/Queue/ArchRunner.py", line 73, in
>_dispose
>
>    mlist.ArchiveMail(msg)
>
>  File "/usr/lib/mailman/Mailman/Archiver/Archiver.py", line 216, in
>ArchiveMail
>
>    h.processUnixMailbox(f)
>
>  File "/usr/lib/mailman/Mailman/Archiver/pipermail.py", line 583, in
>processUnixMailbox
>
>    self.add_article(a)
>
>  File "/usr/lib/mailman/Mailman/Archiver/pipermail.py", line 635, in
>add_article
>
>    article.parentID = parentID = self.get_parent_info(arch, article)
>
>  File "/usr/lib/mailman/Mailman/Archiver/pipermail.py", line 667, in
>get_parent_info
>
>    article.subject)
>
>  File "/usr/lib/mailman/Mailman/Archiver/HyperDatabase.py", line 311,
>in getOldestArticle
>
>    self.__openIndices(archive)
>
>  File "/usr/lib/mailman/Mailman/Archiver/HyperDatabase.py", line 251,
>in __openIndices
>
>    t = DumbBTree(os.path.join(arcdir, archive + '-' + i))
>
>  File "/usr/lib/mailman/Mailman/Archiver/HyperDatabase.py", line 65, in
>__init__
>
>    self.load()
>
>  File "/usr/lib/mailman/Mailman/Archiver/HyperDatabase.py", line 170,
>in load
>
>    self.dict = marshal.load(fp)
>
>ValueError: bad marshal data



For this one, one of the archives/private/LISTNAME/database/* files is
corrupt, probably for the current month.



>The qfiles/shunt directory is empty:
>
> 
>
>[root at andromeda01 mailman]# ls -la qfiles/shunt/
>
>total 8
>
>drwxrwsr-x  2 mailman mailman 4096 Mar 25 10:36 .
>
>drwxrwsr-x 11 root    mailman 4096 Mar 25 10:36 ..


That's strange. Try to find them. E.g.

locate 1238609343.8684261+bff1c62c38a18427c91c1a4bb7ca5f7dfe15a267.pck

or

find / -name
1238609343.8684261+bff1c62c38a18427c91c1a4bb7ca5f7dfe15a267.pck -print


>In the data directory I have some files .pck, like this:
>
> 
>
>[root at andromeda01 mailman]# ls -la data/
>
>total 69048
>
>drwsrwsr-x 2 root    mailman   20480 Abr  1 15:46 .
>
>drwxrwsr-x 9 root    mailman    4096 Abr  1 14:37 ..
>
>-rw-rw-r-- 1 mailman mailman 2295278 Abr  1 15:46
>heldmsg-cobranca-23.pck
>
>-rw-rw-r-- 1 mailman mailman  489013 Abr  1 15:46
>heldmsg-cobranca-24.pck
>
>-rw-rw-r-- 1 mailman mailman    1463 Abr  1 15:46
>heldmsg-cobranca-35.pck
>
>-rw-rw-r-- 1 mailman mailman    4431 Abr  1 15:45
>heldmsg-informatica-10.pck
>
>-rw-rw-r-- 1 mailman mailman    5026 Abr  1 15:45
>heldmsg-informatica-11.pck
>
>-rw-rw-r-- 1 mailman mailman   98672 Abr  1 15:45
>heldmsg-informatica-12.pck
>
>-rw-rw-r-- 1 mailman mailman    4431 Abr  1 15:45
>heldmsg-informatica-13.pck


Those are held messages for the respective lists


>I run the check_db command, and it's report this:
>
> 
>
>[root at andromeda01 mailman]# check_db --all --verbose
>
>Lista: direta
>
>     /var/lib/mailman/lists/direta/config.pck: Ok
>
>     /var/lib/mailman/lists/direta/config.pck.last: Ok
>
>    [Errno 2] No such file or directory:
>'/var/lib/mailman/lists/direta/config.db'
>
>    [Errno 2] No such file or directory:
>'/var/lib/mailman/lists/direta/config.db.last'
>
>Lista: vendasf
>
>     /var/lib/mailman/lists/vendasf/config.pck: Ok
>
>     /var/lib/mailman/lists/vendasf/config.pck.last: Ok
>
>    [Errno 2] No such file or directory:
>'/var/lib/mailman/lists/vendasf/config.db'
>
>    [Errno 2] No such file or directory:
>'/var/lib/mailman/lists/vendasf/config.db.last'
>
>Lista: marketing
>
>     /var/lib/mailman/lists/marketing/config.pck: Ok
>
>     /var/lib/mailman/lists/marketing/config.pck.last: Ok
>
>    [Errno 2] No such file or directory:
>'/var/lib/mailman/lists/marketing/config.db'
>
>    [Errno 2] No such file or directory:
>'/var/lib/mailman/lists/marketing/config.db.last'
>
>Lista: juridico
>
>     /var/lib/mailman/lists/juridico/config.pck: Ok
>
>     /var/lib/mailman/lists/juridico/config.pck.last: Ok
>
>    [Errno 2] No such file or directory:
>'/var/lib/mailman/lists/juridico/config.db'
>
>    [Errno 2] No such file or directory:
>'/var/lib/mailman/lists/juridico/config.db.last'



That says the list's config.pck files are OK, but that's not the
problem.


>What I need to do to fix this problem? 


In the case of the first error, removing or moving aside the
lists/LISTNAME/pending.pck should avoid the problem.

In the case of the archiving issue, you may need to rebuild the archive
for the affected list with bin/arch --wipe

-- 
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