[Python-Dev] New thread death in test_bsddb3

Mark Hammond mhammond@skippinet.com.au
Wed, 23 Apr 2003 08:27:44 +1000

> test_bsddb3.py fails quickly today under a debug build, with
> a thread state
> error, on Win2K, every time.  Linux?
> I assume this is a bad interaction between Mark Hammond's new
> auto-thread-state code and _bsddb.c's custom
> thread-manipulation macros:

Yes, this is my fault.  The assertion is detecting the fact that bsddb is
creating and using its own interpreter/thread states than using the
thread-state already seen for that thread.

As Tim says, the assertion is new, but the check it makes is valid.  I
believe that removing the assertion would allow it to work, but the right
thing to do is fix bsddb to use the new PyGILState_ API, and therefore share
the threadstate with the rest of Python.

I will do this very shortly (ie, within a couple of hours)