[Mailman-Users] Subscribers suddenly "disappear"

Barry Finkel b19141 at anl.gov
Tue Aug 5 17:18:36 CEST 2008


Max Lanfranconi <Max.Lanfranconi at Sun.COM> wrote:

>Mailman 2.1.11
>Python 2.4.4
>OS Solaris 2.11
>
>
>Hi,
>
>I have been able to reproduce this bug consistently by running the
>replicate_bug script:
>
>
>replicate _bug is the following:
>
>#!/bin/sh
>/usr/local/mailman/bin/rmlist testlist1
>/usr/local/mailman/bin/rmlist testlist2
>/usr/local/mailman/bin/rmlist testlist3
>/usr/local/mailman/bin/rmlist testlist4
>/usr/local/mailman/bin/rmlist testlist5
>/usr/local/mailman/bin/rmlist testlist6
>/usr/local/mailman/bin/newlist -q -e url.domain.com testlist1
>list-admin at domain.com testpwd
>/usr/local/mailman/bin/newlist -q -e url.domain.com testlist2
>list-admin at domain.com testpwd
>/usr/local/mailman/bin/newlist -q -e url.domain.com testlist3
>list-admin at domain.com testpwd
>/usr/local/mailman/bin/newlist -q -e url.domain.com testlist4
>list-admin at domain.com testpwd
>/usr/local/mailman/bin/newlist -q -e url.domain.com testlist5
>list-admin at domain.com testpwd
>/usr/local/mailman/bin/newlist -q -e url.domain.com testlist6
>list-admin at domain.com testpwd
>
>
>echo "foo at bar.com" | /usr/local/mailman/bin/add_members -r - testlist1
>echo "foo at bar.com" | /usr/local/mailman/bin/add_members -r - testlist2
>echo "foo at bar.com" | /usr/local/mailman/bin/add_members -r - testlist3
>echo "foo at bar.com" | /usr/local/mailman/bin/add_members -r - testlist4
>echo "foo at bar.com" | /usr/local/mailman/bin/add_members -r - testlist5
>echo "foo at bar.com" | /usr/local/mailman/bin/add_members -r - testlist6
>echo "boo at foo.com" | /usr/local/mailman/bin/add_members -r - testlist1
>echo "boo at foo.com" | /usr/local/mailman/bin/add_members -r - testlist2
>echo "boo at foo.com" | /usr/local/mailman/bin/add_members -r - testlist3
>echo "boo at foo.com" | /usr/local/mailman/bin/add_members -r - testlist4
>echo "boo at foo.com" | /usr/local/mailman/bin/add_members -r - testlist5
>echo "boo at foo.com" | /usr/local/mailman/bin/add_members -r - testlist6
>
>After a short wait the following output is received:
>
>Subscribed: foo at bar.com
>Subscribed: foo at bar.com
>Subscribed: foo at bar.com
>Subscribed: foo at bar.com
>Subscribed: foo at bar.com
>Subscribed: foo at bar.com
>Subscribed: boo at foo.com
>Subscribed: boo at foo.com
>Subscribed: boo at foo.com
>Subscribed: boo at foo.com
>Subscribed: boo at foo.com
>Subscribed: boo at foo.com
>
>foo at bar.com receives 6 confirmation emails, as boo at foo.com does. S
>o far so
>good.
>
>At this point testlist1-6 each should contain 2 subscribers: foo at bar.com
>and boo at foo.com
>
>BUT
>
>/usr/local/mailman/bin/list_members testlist1
>/usr/local/mailman/bin/list_members testlist2
>/usr/local/mailman/bin/list_members testlist3
>/usr/local/mailman/bin/list_members testlist4
>/usr/local/mailman/bin/list_members testlist5
>/usr/local/mailman/bin/list_members testlist6
>
>invariably produce some random combination in which one or more of the
>subscribers are missing:
>for example:
>boo at foo.com
>foo at bar.com
>foo at bar.com
>boo at foo.com
>foo at bar.com
>foo at bar.com
>foo at bar.com
>boo at foo.com
>foo at bar.com
>
>in which three instances of boo at foo.com are missing...
>
>No Errors in any Mailman log.
>
>
>Thanks in advance for your help. Please let me know if you need additional
>details.
>Regards,
>Max

I ran the script (after some minor modifications) on

     Ubuntu Dapper
     Mailman 2.1.11  (self-built package)
     Python 2.4.3 (#2, Oct  6 2006, 07:49:22)

and I get similar results:

     Script started on Tue 05 Aug 2008 09:45:31 AM CDT
     # set prompt="mailman11-test# "
     mailman11-test# ./replicate_bug.exec
     Remove the components of a mailing list with impunity - beware!

     This removes (almost) all traces of a mailing list.  By default, the lists
     archives are not removed, which is very handy for retiring old lists.

     Usage:
	 rmlist [-a] [-h] listname

     Where:
	 --archives
	 -a
	     Remove the list's archives too, or if the list has already been
	     deleted, remove any residual archives.

	 --help
	 -h
	     Print this help message and exit.


     No such list (or list already deleted): testlist1
     Remove the components of a mailing list with impunity - beware!

     This removes (almost) all traces of a mailing list.  By default, the lists
     archives are not removed, which is very handy for retiring old lists.

     Usage:
	 rmlist [-a] [-h] listname

     Where:
	 --archives
	 -a
	     Remove the list's archives too, or if the list has already been
	     deleted, remove any residual archives.

	 --help
	 -h
	     Print this help message and exit.


     No such list (or list already deleted): testlist2
     Remove the components of a mailing list with impunity - beware!

     This removes (almost) all traces of a mailing list.  By default, the lists
     archives are not removed, which is very handy for retiring old lists.

     Usage:
	 rmlist [-a] [-h] listname

     Where:
	 --archives
	 -a
	     Remove the list's archives too, or if the list has already been
	     deleted, remove any residual archives.

	 --help
	 -h
	     Print this help message and exit.


     No such list (or list already deleted): testlist3
     Remove the components of a mailing list with impunity - beware!

     This removes (almost) all traces of a mailing list.  By default, the lists
     archives are not removed, which is very handy for retiring old lists.

     Usage:
	 rmlist [-a] [-h] listname

     Where:
	 --archives
	 -a
	     Remove the list's archives too, or if the list has already been
	     deleted, remove any residual archives.

	 --help
	 -h
	     Print this help message and exit.


     No such list (or list already deleted): testlist4
     Remove the components of a mailing list with impunity - beware!

     This removes (almost) all traces of a mailing list.  By default, the lists
     archives are not removed, which is very handy for retiring old lists.

     Usage:
	 rmlist [-a] [-h] listname

     Where:
	 --archives
	 -a
	     Remove the list's archives too, or if the list has already been
	     deleted, remove any residual archives.

	 --help
	 -h
	     Print this help message and exit.


     No such list (or list already deleted): testlist5
     Remove the components of a mailing list with impunity - beware!

     This removes (almost) all traces of a mailing list.  By default, the lists
     archives are not removed, which is very handy for retiring old lists.

     Usage:
	 rmlist [-a] [-h] listname

     Where:
	 --archives
	 -a
	     Remove the list's archives too, or if the list has already been
	     deleted, remove any residual archives.

	 --help
	 -h
	     Print this help message and exit.


     No such list (or list already deleted): testlist6
     Subscribed: foo at bar.com
     Subscribed: foo at bar.com
     Subscribed: foo at bar.com
     Subscribed: foo at bar.com
     Subscribed: foo at bar.com
     Subscribed: foo at bar.com
     Subscribed: boo at foo.com
     Subscribed: boo at foo.com
     Subscribed: boo at foo.com
     Subscribed: boo at foo.com
     Subscribed: boo at foo.com
     Subscribed: boo at foo.com
     mailman11-test# foreach list (1 2 3 4 5 6)
     ?      echo $list
     ?      list_members testlist$list
     ? end
     1
     boo at foo.com
     foo at bar.com
     2
     boo at foo.com
     foo at bar.com
     3
     boo at foo.com
     foo at bar.com
     4
     boo at foo.com
     foo at bar.com
     5
     foo at bar.com
     6
     foo at bar.com
     mailman11-test# =======================================================
     mailman11-test# ./replicate_bug.exec
     Not removing archives.  Reinvoke with -a to remove them.
     Removing list info
     Not removing archives.  Reinvoke with -a to remove them.
     Removing list info
     Not removing archives.  Reinvoke with -a to remove them.
     Removing list info
     Not removing archives.  Reinvoke with -a to remove them.
     Removing list info
     Not removing archives.  Reinvoke with -a to remove them.
     Removing list info
     Not removing archives.  Reinvoke with -a to remove them.
     Removing list info
     Subscribed: foo at bar.com
     Subscribed: foo at bar.com
     Subscribed: foo at bar.com
     Subscribed: foo at bar.com
     Subscribed: foo at bar.com
     Subscribed: foo at bar.com
     Subscribed: boo at foo.com
     Subscribed: boo at foo.com
     Subscribed: boo at foo.com
     Subscribed: boo at foo.com
     Subscribed: boo at foo.com
     Subscribed: boo at foo.com
     mailman11-test# foreach list (1 2 3 4 5 6)
     ?           echo $list
     ?           list_members testlist$list
     ? end
     1
     boo at foo.com
     foo at bar.com
     2
     boo at foo.com
     foo at bar.com
     3
     foo at bar.com
     4
     foo at bar.com
     5
     foo at bar.com
     6
     foo at bar.com
     mailman11-test# =======================================================
     mailman11-test# ./replicate_bug.exec
     Not removing archives.  Reinvoke with -a to remove them.
     Removing list info
     Not removing archives.  Reinvoke with -a to remove them.
     Removing list info
     Not removing archives.  Reinvoke with -a to remove them.
     Removing list info
     Not removing archives.  Reinvoke with -a to remove them.
     Removing list info
     Not removing archives.  Reinvoke with -a to remove them.
     Removing list info
     Not removing archives.  Reinvoke with -a to remove them.
     Removing list info
     Subscribed: foo at bar.com
     Subscribed: foo at bar.com
     Subscribed: foo at bar.com
     Subscribed: foo at bar.com
     Subscribed: foo at bar.com
     Subscribed: foo at bar.com
     Subscribed: boo at foo.com
     Subscribed: boo at foo.com
     Subscribed: boo at foo.com
     Subscribed: boo at foo.com
     Subscribed: boo at foo.com
     Subscribed: boo at foo.com
     mailman11-test# foreach list (1 2 3 4 5 6)
     ?          echo $list
     ?          list_members testlist$list
     ? end
     1
     foo at bar.com
     2
     boo at foo.com
     foo at bar.com
     3
     foo at bar.com
     4
     foo at bar.com
     5
     foo at bar.com
     6
     foo at bar.com
     mailman11-test# exit

     Script done on Tue 05 Aug 2008 09:50:48 AM CDT

I then added

     sleep 5

after each "add_members" line, and the output looked fine.
I changed the sleep interval from 5 down to 1 in successive
runs, and each output looks fine; each list has the proper two
subscribers.  Is there a timing issue here?
----------------------------------------------------------------------
Barry S. Finkel
Computing and Information Systems Division
Argonne National Laboratory          Phone:    +1 (630) 252-7277
9700 South Cass Avenue               Facsimile:+1 (630) 252-4601
Building 222, Room D209              Internet: BSFinkel at anl.gov
Argonne, IL   60439-4828             IBMMAIL:  I1004994



More information about the Mailman-Users mailing list