[Mailman-Users] /var/mailman/cron/checkdbs
Robin Bartholomew
rbartholomew at mcclatchyinteractive.com
Fri Apr 6 21:51:46 CEST 2007
Mark,
Thank you. The added print statement narrowed the offending request.pck
down very quickly. I am posting the solution to the list so other
non-python programmer can make use of this useful information.
Problem: cron/checkdbs error.
Traceback (most recent call last):
File "/var/mailman/cron/checkdbs", line 178, in ?
main()
File "/var/mailman/cron/checkdbs", line 109, in main
text += '\n' + pending_requests(mlist)
File "/var/mailman/cron/checkdbs", line 128, in pending_requests
for id in mlist.GetSubscriptionIds():
File "/var/mailman/Mailman/ListAdmin.py", line 140, in GetSubscriptionIds
return self.__getmsgids(SUBSCRIPTION)
File "/var/mailman/Mailman/ListAdmin.py", line 132, in __getmsgids
ids = [k for k, (op, data) in self.__db.items() if op == rtype]
ValueError: unpack tuple of wrong size
Cause: corrupt request.pck file in one of the lists
Mark's Solution: Find these lines in cron/checkdbs near the beginning of
the defininton of main()
for name in Utils.list_names():
# the list must be locked in order to open the requests database
mlist = MailList.MailList(name)
try:
and add a line to make it
for name in Utils.list_names():
print >> sys.stderr, 'Processing list %s' % name
# the list must be locked in order to open the requests database
mlist = MailList.MailList(name)
try:
Then you can run cron/checkdbs by hand and the last 'Processing list
<name>' that appears is the bad one. Then you can remove the added line
and look at that lists request.pck.
Thank you again!
Robin D. Bartholomew
More information about the Mailman-Users
mailing list