[Mailman-Users] Disappearing message

Mark Sapiro msapiro at value.net
Wed Oct 24 06:29:51 CEST 2007


Anne Ramey wrote:

>Have a new and different one.  One of my users that has two lists, let's 
>call them list1 and list2.  If he sends a message to list1 and cc's 
>list2, list1 never receives the message.  If he sends the same message 
>only to list1, it goes through fine.  According to my exim logs, it is 
>delivering both messages to list1:


The exim log certainly says the the first post was delivered to both
lists, but ...


>The first message is successfully posted to list2, the second message is 
>successfully posted to list1.  The first message has absolutely no MM 
>longs relative to list1.  Nothing in the vette, smtp, post, error, 
>bounce, etc.  Nothing at all related to message one for List1.  This is 
>a weekly message and this has happened for the last 4+ weeks.  Before 
>that it appears to have worked fine.  I haven't made any system changes 
>in that time.  What could cause something like this.  Is is possible a 
>list setting could do this?  I checked the sender filters on both lists 
>but saw nothing that looked wrong.


I can't offhand think of any way the a post can evaporate from Mailman
without a trace.

There are two ways to verify that the post actually reached Mailman.

Way 1 is somewhat disruptive. Stop Mailman, send the post to list1 with
cc to list2, examine the files in Mailman's qfiles/in queue with
bin/dumpdb (bin/show_qfiles won't show the metadata which says which
list the post is for) to see if the post is there twice, once for each
list, then start Mailman.  If the post is in the in queue for list1
and then evaporates, it is a Mailman problem, but I don't know what
the problem might be. If the post doesn't get to the in queue then it
could be an exim problem or possibly a problem with the post script.

Way 2 is to modify scripts/post to log something. At the end of the
main() function following:

    inq = get_switchboard(mm_cfg.INQUEUE_DIR)
    inq.enqueue(sys.stdin.read(),
                listname=listname,
                tolist=1, _plaintext=1)

add

    print >> sys.stderr, _('post to %(listname)s received and queued')


This will write the 'post to %(listname)s received and queued' message
with the listname filled in to both the error and post logs for every
post. This again will tell you if the post got to the post script.

Once we know whether or not the post gets this far, we can focus our
attention and maybe come up with an answer or a way to get more
information.

One thing just occurred to me. Is it possible that the post to list1
and list2 is somehow generated from a post from list1 and contains an

X-BeenThere: list1 at lists.mydomain.com

header, thus preventing it from being accepted by list1. Then perhaps
the resend to list1 gets generated from the post from list2 and
doesn't contain the

X-BeenThere: list1 at lists.mydomain.com

header.

-- 
Mark Sapiro <msapiro at value.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