[ZPatterns] DynPersist doesn't like Python2.2.x + Zope Trunk
Steve Alexander
[email protected]
Wed, 16 Oct 2002 12:09:59 +0000
Hi folks,
I just tried upgrading a Zope server to the current Zope Trunk along
with Python 2.2.2. The Zope server was already working just fine with
Zope 2.5.something and Python 2.2.1.
Everything works fine except for classes derived from DataSkin in the
ZPatterns product. Whenever such an object is accessed, Zope dies,
attempts to restart itself, but can't as some stuck process still holds
the database file open.
The specific problem is with the C extension DynPersist.c. When I remove
this from the list of base-classes of DataSkin.py, things work properly
(except that the ZPatterns features will no longer work, of course.)
I really don't know what's wrong here. I recompiled DynPersist.c against
Python 2.2.2 and the Zope ZODB/Persistent libraries.
I'm tempted just to rewrite DataSkin.py as pure Python, and get rid of
DynPersist altogether -- it was only really needed when the ZODB didn't
let persistent classes implement __getattr__ and __setattr__.
Can anyone suggest any changes to Persistence that might cause a problem
like this?
Thanks.
--
Steve Alexander