[Zope-Checkins] CVS: Packages/ZODB - Connection.py:1.98.4.11

Tim Peters tim.one at comcast.net
Mon May 2 16:30:57 EDT 2005


Update of /cvs-repository/Packages/ZODB
In directory cvs.zope.org:/tmp/cvs-serv26821/ZODB

Modified Files:
      Tag: Zope-2_7-branch
	Connection.py 
Log Message:
tpc_finish:  Repair longstanding bugs in subtransaction commit.

Jim (Fulton) discovered this in ZODB 3.4's code, while implementing
savepoint/rollback.  Same bugs have been there at least since ZODB 3.1.


=== Packages/ZODB/Connection.py 1.98.4.10 => 1.98.4.11 ===
--- Packages/ZODB/Connection.py:1.98.4.10	Thu Sep 16 19:56:18 2004
+++ Packages/ZODB/Connection.py	Mon May  2 16:30:27 2005
@@ -793,6 +793,7 @@
             self._storage.tpc_finish(transaction)
             self._storage._creating[:0]=self._creating
             del self._creating[:]
+            self._object_registered = False
         else:
             def callback():
                 d = {}
@@ -800,9 +801,8 @@
                     d[oid] = 1
                 self._db.invalidate(d, self)
             self._storage.tpc_finish(transaction, callback)
-
-        self._conflicts.clear()
-        self._flush_invalidations()
+            self._conflicts.clear()
+            self._flush_invalidations()
 
     def sync(self):
         self.getTransaction().abort()



More information about the Zope-Checkins mailing list