
[Jeremy Hylton, on Tue, 7 Sep 2004]
Failure running the test suite today with -u compiler enabled on Windows XP.
test_logging Assertion failed: bp != NULL, file \code\python\dist\src\Objects\obmalloc.c, line 604
The debugger says the error is here: msvcr71d.dll!_assert(const char * expr=0x1e22bcc0, const char * filename=0x1e22bc94, unsigned int lineno=604) Line 306 C python24_d.dll!PyObject_Malloc(unsigned int nbytes=100) Line 604 + 0x1b C python24_d.dll!_PyObject_DebugMalloc(unsigned int nbytes=84) Line 1014 + 0x9 C python24_d.dll!PyThreadState_New(_is * interp=0x00951028) Line 136 + 0x7 C python24_d.dll!PyGILState_Ensure() Line 430 + 0xc C python24_d.dll!t_bootstrap(void * boot_raw=0x02801d48) Line 431 + 0x5 C python24_d.dll!bootstrap(void * call=0x04f0d264) Line 166 + 0x7 C msvcr71d.dll!_threadstart(void * ptd=0x026a2320) Line 196 + 0xd C
I've been seeing this sort of error on-and-off for at least a year with my Python 2.3 install. It's the usual reason my spambayes popproxy dies. I can't recell seeing it before on Windows or while running the test suite.
I expect bug 1041645 is relevant. That was suffering the debug-build problem identified later in this thread by Michael Hudson, and also from that the internal TLS function find_key() was thread-insane (regardless of build type). Those should all be fixed now, so gripe if you see this again after updating. BTW, those are all critical bugfixes, but I don't have time to backport them. If anyone does, there was one checkin in the chain that changed when PyGILState_Release() deleted its TLS key, but I'm pretty sure there was no actual need for that change.