[Mailman-Developers] race condition in locking ?

Harald Meland Harald.Meland@usit.uio.no
09 May 2000 20:50:04 +0200


[bwarsaw@python.org]

> I've done a bit of testing using Apache and both NS and MSIE.  What
> I did was add a big sleep in admin.py, in main(), just before the
> finally at the bottom of the function.

Immediately after the 'print doc.Format()' statement?  Then you
shouldn't get any SIGPIPEs, right?

> I added some debug prints so I could see what was going on.
> 
> As near as I can tell, if I hit the browser's stop button after
> entering that big sleep, the CGI process gets kill stone cold.  It
> never reach the finally clause, doesn't get a SIGPIPE, nothing.

Ouch.  Does that imply a SIGKILL, or are there other signals which
could produce such behaviour?

> Since I can't reproduce this, I'm not sure what the right thing to
> do is.

I can't reproduce it either -- although I suspect at least part of the
problem might be ugly TCP/IP stacks and/or browsers (if hitting the
"stop" button doesn't actually close down the TCP connection properly,
I guess there could be problems once the CGI script tries sending data
down the partially closed socket).

> Harald, what webserver are you running?

The problems my users reported was from a Mailman installation using
Apache 1.3.2 on Solaris 2.6.  I don't know what web browsers were
being used (and it's been a while since anyone reported a problem like
this).
-- 
Harald