[Mailman-Users] Recursion problem with "disabled" cron job.

Mark Sapiro mark at msapiro.net
Fri Oct 12 14:31:19 EDT 2018


On 10/12/2018 08:20 AM, Lindsay Haisley wrote:
> I'm running Mailman 2.1.18-1
> I'm running cron job daily with this command:
> 
> /usr/bin/python -S /usr/lib64/mailman/cron/disabled
> 
> I've started getting the following messages indicating a code problem
> with this script, to wit:
> 
> Traceback (most recent call last):
>   File "/usr/lib64/mailman/cron/disabled", line 227, in <module>
>     main()
>   File "/usr/lib64/mailman/cron/disabled", line 204, in main
>     member)
>   File "/usr/lib64/mailman/Mailman/Pending.py", line 67, in pend_new
>     db = self.__load()
>   File "/usr/lib64/mailman/Mailman/Pending.py", line 97, in __load
>     return cPickle.load(fp)
>   File "/usr/lib64/mailman/Mailman/MailList.py", line 138, in __getattr__
>     return getattr(self._memberadaptor, name)
>   File "/usr/lib64/mailman/Mailman/MailList.py", line 138, in __getattr__
>     return getattr(self._memberadaptor, name)
>   etc .....
> 
> .... until the recursion limit is exceeded.


At first glance, this doesn't seem related to cron/disabled.

The scenario is cron/disabled has found a list member whose delivery is
disabled by bounce and is due another warning notice. It is getting a
new 're-enable' token for the notice. This calls mlist.pend_new and the
first thing that does is try to load the list's pending.pck file. How
that gets into a loop calling the list's __getattr__() method is not
clear, but I suspect a corrupt pending.pck file for some list.

I would do the following in bash:

cd /usr/lib64/mailman/
for list in `bin/list_lists --bare`; do
    if [ -f lists/$list/pending.pck ]; then
        echo $list
        bin/dumpdb lists/$list/pending.pck|grep evictions
    fi
done

This should print two lines for every list that has a pending.pck, the
name of the list and a line that begins

    'evictions': {

You are looking for a list that doesn't print the 'evictions' line or
that exhibits the loop.

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