[Python-Dev] Compiler warnings

Thomas Wouters thomas at xs4all.net
Tue Jan 31 20:16:20 CET 2006


On Tue, Jan 31, 2006 at 06:04:45PM +0100, "Martin v. Löwis" wrote:
> Thomas Wouters wrote:
> > I also noticed test_logging is spuriously failing, and not just on my
> > machine (according to buildbot logs.) Is anyone (Vinay?) looking at that
> > yet?

> I looked at it, and I couldn't figure it out. It appears that the last
> line of communication is somehow lost, but I could not find out why that
> might happen.

Not just the last line, see below. It never happens, as far as I can tell,
when the test_logging test is run alone; it never once broke in several
hundred solo tests. When I ran all combinations of a non-logging test
followed by test_logging, it seems to break fairly randomly with almost all
tests. Certainly not just tests that deal with signals, subprocesses,
threads or sockets, also with tests like test_dircache, test_cookielib,
test_coding, test_filecmp, and others. Just about the only correlation that
makes sense is the duration of the first test. Not all of the other tests
trigger test_logging's failure in any degree of reliability, although I get
the feeling tests that take longer trigger the bug more often -- except that
a test consisting of 'time.sleep(30)' never triggered it.

All in all, it seems like a timing issue -- the timing is different because
the previous test already imported some modules. The test_logging test uses
threads, *ugh*. I tried adding a few Event-waits and time.sleep()'s at
strategic places, but it doesn't seem to matter. Regardless of my
pinpointing efforts, much more than just the last line is sometimes missing,
though:

$ ./python -E -tt Lib/test/regrtest.py -uall test_dircache test_logging
test_dircache
test_logging
test test_logging produced unexpected output:
**********************************************************************
*** line 515 of expected output missing:
- DEB -> WARNING: Message 16 (via logrecv.tcp.DEB)
*** line 521 of expected output missing:
- UNDEF -> INFO: Message 22 (via logrecv.tcp.UNDEF)
*** line 524 of expected output missing:
- INF -> INFO: Finish up, it's closing time. Messages should bear numbers 0 through 24. (via logrecv.tcp.INF)
**********************************************************************

I've 'seen' at least all messages between 16 and 22 disappear, although not
more than 3 or 4 in total. There's only ever messages missing, never out of
order or garbled. I'm starting to think there might actually be a bug in the
logging module ;P

-- 
Thomas Wouters <thomas at xs4all.net>

Hi! I'm a .signature virus! copy me into your .signature file to help me spread!


More information about the Python-Dev mailing list