The following fix works for us.
Thanks, Kasuga (or is it Jim?)
Kingsley F. Kerce (kerce@scri.fsu.edu)
Supercomputer Computations Research Institute
Florida State University
Tallahassee, FL, USA 32306
Kasuga Jingoro writes:
> > "Brent Chapman" <Brent@GreatCircle.COM> writes:
> > "Stephen Bannasch" <stephen_bannasch@terc.edu> writes:
> > > # Subject: multiple unsubscribes
> > > # I am the owner of a list and wanted to remove a bunch a bad addresses
> > > # so I tried the following commands:
> > > #
> > > # approve PASSWORD unsubscribe MYLIST USER1
> > > # approve PASSWORD unsubscribe MYLIST USER2
> > > # approve PASSWORD unsubscribe MYLIST USER3
> > > #
> > > # Majordomo responded by only unsubcribing the first person on the
> > > # list.
> > > # The second and third were reported as not being members of MYLIST.
> > > # When
> > > # the unsubscribe requests for users 2 and 3 were placed in their own
> > > # messages the unsubscribe operations were successful.
> > > #
> > > # Is this a bug? Is there a fix?
>
> This might be related to a related bug in Majordomo. This is a bug that
> was reported on this list ages ago but has never been fixed in the
> official release. In the do_unsubscribe subroutine, the file NEW is
> opened to write out the new version of the subscriber list. But this
> file is NEVER closed. The result is that the new version of the list
> is held open AND unlocked for the duration of the process. This can cause
> numerous problems, one of which may be the one you are experiencing.
> The problem I saw was that if one would place a unsub command followed
> by a sub command in the same message, the sub command would appear to
> work, but a later inspection of the list would show that the address
> was not added. My theory is that since the new version of the list is
> held open during the subscribe command, that the changes made to the
> file in the subscribe command will be superseded once the process ends
> since perl will then automatically close the NEW file which will revert
> the file back to the original contents after the unsub command. Although
> this bug does not manifest itself on Brent's system, this bug is
> legitimate and should be fixed in the official Majordomo release.
>
> The fix is trivial. Simply put a close(NEW); at a strategic place in
> the do_unsubscribe routine. I put it right before the block of code
> starting with the line 'if ($match_count == 1) {'.
>
> So, Brent, how about getting this bug fixed at last?
>
> ---- jingoro@tcp.com -- Jim Lick -- jingoro@rahul.net -- jIngOrO@CaveMUCK ----
> --:):-- perfect little dream the kind that hurts the most -- |\| | |/| --:(:--
> --- CaveMUCK is back! --- Telnet to cave.tcp.com (128.95.10.106) port 2283 ---
> -- Finger me for fun, excitement or for my PGP Public Key Encryption Block --
References:
|
|