[Mailman-Users] Anomalies since upgrading to 2.1.11

Mark Sapiro mark at msapiro.net
Wed Dec 17 01:08:26 CET 2008


Lindsay Haisley wrote:

>I've run into a couple of problems mailman which I can't seem to track
>down through normal channels.  These seem to have appeared at the same
>time that I upgraded to 2.1.11 from 2.1.9.
>
>The most serious problem is that list owners/moderators are no longer
>receiving notifications of pending subscription requests, possibly also
>moderation requests (I host few moderated lists).  Settings haven't
>changed, and admin_immed_notify is set to Yes.  The
>listname-owner at listhost address works OK, and email sent explicitly to
>this address is delivered properly.  All list traffic appears to work
>normally.


Is VirginRunner running? Are you receiving any mailman generated
notices? Possible, it's the errors below that are causing the notices
to be 'lost'.


>I have 10442 files in /var/lib/mailman/qfiles/shunt, all of them dating
>from early last month when I upgraded.  I don't know the purpose of this
>directory, nor what the large number of files here indicates.
>
>Starting about the same time, the mailman error log started showing a
>large number of entries similar to the following, which are continuing
>as of this date:
>
>Nov 07 18:23:16 2008 (1813) SHUNTING: 1226103793.9225979+970f9fe7e0c4b593e7a85af061d0a3293cfbcb08
>Nov 07 18:25:20 2008 (1813) Uncaught runner exception: matches_p() takes exactly 3 arguments (2 given)
>Nov 07 18:25:20 2008 (1813) Traceback (most recent call last):
>  File "/var/gentoo/tmp/portage/net-mail/mailman-2.1.11/image//usr/lib64/mailman/Mailman/Queue/Runner.py", line 120, in _oneloop
>  File "/var/gentoo/tmp/portage/net-mail/mailman-2.1.11/image//usr/lib64/mailman/Mailman/Queue/Runner.py", line 191, in _onefile
>  File "/var/gentoo/tmp/portage/net-mail/mailman-2.1.11/image//usr/lib64/mailman/Mailman/Queue/IncomingRunner.py", line 130, in _dispose
>  File "/var/gentoo/tmp/portage/net-mail/mailman-2.1.11/image//usr/lib64/mailman/Mailman/Queue/IncomingRunner.py", line 153, in _dopipeline
>  File "/usr/lib64/mailman/Mailman/Handlers/SpamAssassin.py", line 81, in process
>    matches_p(sender, mlist.accept_these_nonmembers):
>TypeError: matches_p() takes exactly 3 arguments (2 given)
>
>I don't know if these problems are related, but any advice will be
>appreciated.


The traceback above goes with the SHUNTING message that follows it, not
the one that precedes it, but each one of these messages moves the
current queue entry aside in qfiles/shunt/. Eg the SHUNTING message
above created
qfiles/shunt/1226103793.9225979+970f9fe7e0c4b593e7a85af061d0a3293cfbcb08.pck.

These queue entries are moved aside so that when the underlying problem
is fixed, you can run bin/unshunt to reprocess them. In the mean time,
you can look at them with bin/dumpdb or bin/show_qfiles and see what
they are and just remove those that are unwanted or not relevant.

As far as the actual error is concerned, it occurrs in SpamAssassin.py
which is an add on handler not part of GNU Mailman. The problem is
that in 2.1.10, the matches_p() function grew an additional 'listname'
argument. You need to fix
/usr/lib64/mailman/Mailman/Handlers/SpamAssassin.py at line 1 by
changing

    if MEMBER_BONUS != 0:
        for sender in msg.get_senders():
            if mlist.isMember(sender) or \
                   matches_p(sender, mlist.accept_these_nonmembers):
                score -= MEMBER_BONUS
                break

to

    if MEMBER_BONUS != 0:
        for sender in msg.get_senders():
            if mlist.isMember(sender) or \
                   matches_p(sender,
                             mlist.accept_these_nonmembers,
                             mlist.internal_name()):
                score -= MEMBER_BONUS
                break

The obvious moral here is if you have 3rd party add-ons to your mailman
installation, you need to check that they are compatible with an
upgrade.

Once you have made that change and restarted Mailman, you can run
bin/unshunt to reprocess the shunted messages, but I urge you to first
remove or move aside any shunt queue entries that might be for example
notices of held messages that have already been dealt with.

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