[Mailman-Developers] race condition in locking ?

Ricardo Kustner ricardo@rixhq.nu
Sat, 5 Feb 2000 01:15:07 +0100


Hi,

On Fri, Feb 04, 2000 at 11:47:57PM +0100, Thomas Wouters wrote:
> On Fri, Feb 04, 2000 at 09:22:43PM +0100, Ricardo Kustner wrote:
> > well i patched my copy of MM with the diff Thomas had just posted, and
> > then i tried to approve about 16 posts and I still got another assertion error :(
> 
> > maybe i just need to start saving some money for a more powerfull machine :)
> Or perhaps you're experiencing an entirely differnet problem. Or a very
> related, but slightly different problem. Or perhaps this method of locking
> does not work on the type of machine, operating system and/or filesystem you
> are using. 
Linux 2.0.38, libc5 on a P100... not the newest stuff but it's stable :)
usually i use newer kernels/libs for servers but I had to do so much work to
optimize the apache/fastcgi/mysql stuff that I'm cautious with upgrading...
I hope to hook up a second harddrive soon I can put the mail spool on a seperate
disk which will hopefully reduce the load a bit...

> If you want, I can take a look at your AssertionError, see what
> caused it. If not, and it's a generic Mailman bug, I'll eventually hit it
It always happens on line 60 in Mailman/ListAdmin.py ...
assert self.Locked() and self.__filename

from what i understand from python (haven't finnished O'reillys "Learning Python" yet :)),
this is a debug statement and it bails out if !self.Locked == true ... so I guess the lock
on the pending message db gets lost somehow (which could be because posts are being approved
and the pending db being updated at the same time... but i'm only speculating here).

> Out of curiosity, the mailinglist you're running on mailman, that wouldn't
> happen to be the MissJanet mailing list that you used to run at XS4ALL,
> would it? ;)
yep... that was one of the first majordomo lists at xs4all i believe :)


Ricardo.

--