[ZODB-Dev] ZODB3-3.1b1
Jeremy Hylton
jeremy@alum.mit.edu
Tue, 17 Sep 2002 11:43:14 -0400
Andreas provided a C stack trace that diagnosed the problem exactly.
The cause is a Python 2.2.1 bug that is fixed in CVS but has not been
released yet. The change is noted here in typeobject.c CVS:
> revision 2.126.4.20
> date: 2002/07/16 19:42:21; author: jhylton; state: Exp; lines: +2 -1
> The object returned by tp_new() may not have a tp_init.
>
> If the object is an ExtensionClass, for example, the slot is not even
> defined. So we must check that the type has the slot (implied by
> HAVE_CLASS) before calling tp_init().
The only solution for people on affected platforms is to get a Python
2.2.2 release out. I'll ask about that on python-dev, but it may take
a while unless someone volunteers to help :-(.
Jeremy