[Zope3-dev] buildbot failure in Zope3 trunk 2.4 Linux zc-buildbot

Tim Peters tim.peters at gmail.com
Thu Dec 15 12:49:54 EST 2005


[Tim Peters, on the testRunIgnoresParentSignals failure]
> ...
> The sanest conclusion I can draw is that some other process (zdrun?)
> unlinked 'testsock' between the time os.rmtree() did its os.listdir() and the
> time os.rmtree()  tried to unlink 'testsock' itself.
>
> If so, that's a new race condition in the new version of the test (the
> old version of the test didn't try to unlink 'testsock' -- I guess it
> left that to zdrun), and can trigger even if the body of the test
> passes.

That's definitely the problem here, and is easy to reproduce by
inserting a short time.sleep() inside os.rmtree():  zdrun.py and the
test code are racing to delete 'testsock'.  If the test code wins the
race, no problem is visible, because zdrun suppresses the os.error it
gets when it tries to delete 'testsock' itself.  But if zdrun manages
to delete it "in the middle" of the test code's call to rmtree(), we
get the bogus test death the buildbot experienced.  That's unlikely,
but is bound to happen from time to time.

I'll try to fix it later today if I can make time, and nobody else
does first ...


More information about the Zope3-dev mailing list