[Mailman-Developers] duplicate messages
Scott
scott@chronis.icgroup.com
Tue, 11 Aug 1998 15:42:43 -0400
I have a test list set up on a linux box that is regularly sending out
2 copies of messages. The list has 2 subscribers, and inevitably one
of the two subscribers (different host names) gets a duplicate
message. Which one gets the duplicate appears to be random. If i
only have one subscriber, then no duplicates are produced.
I poked around the sources a bit and found that if I take out the
fork() in this deliver script function, i no longer get duplicates.
I don't know why this fork() would create duplicate deliveries, but i
am certain that eliminating the call to forker() causes no duplicates
to be produced.
def ContactTransportForEachGroup(sender, groups, text):
if len(groups) == 1:
ContactTransport(sender,groups[0],text)
return
for group in groups:
if not forker(): # if we don't fork here, there are no duplicates
ContactTransport(sender,group,text)
os._exit(0)
interestingly enough, the following script never seems to produce
duplicates:
import os
l = [1,2,3,4,5,6,7,8,9]
for x in l:
if not os.fork():
print x
os._exit(0)
any help on how to fix this would be greatly appreciated. I am
running Linux chronis 2.0.33 #1 Mon Apr 27 22:50:00 EDT 1998 i586
with glibc2.07, python 1.5.1, mailman 1.0b5.
scott