[Zope3-checkins] CVS: Zope3/src/zodb/code - class_.py:1.14
Jeremy Hylton
jeremy@zope.com
Wed, 16 Apr 2003 18:07:49 -0400
Update of /cvs-repository/Zope3/src/zodb/code
In directory cvs.zope.org:/tmp/cvs-serv22601/zodb/code
Modified Files:
class_.py
Log Message:
Deal with corner case in new cache API.
If we call activate() on the cache, the object must be in the cache.
The persistent class's setstate() hook is already such a hack, we just
extend it to put the object in the cache before calling setstate() on
the connection.
=== Zope3/src/zodb/code/class_.py 1.13 => 1.14 ===
--- Zope3/src/zodb/code/class_.py:1.13 Thu Mar 13 13:48:57 2003
+++ Zope3/src/zodb/code/class_.py Wed Apr 16 18:07:48 2003
@@ -374,6 +374,9 @@
if dm is not None and cls._p_oid:
cls._p_state = CHANGED
try:
+ # XXX Make sure the object is in the cache before
+ # calling setstate().
+ dm._cache.set(cls._p_oid, cls)
dm.setstate(cls)
finally:
# XXX Should really put in special inconsistent state