[Zodb-checkins] SVN: ZODB/branches/3.8/src/ZEO/ Fixed a bug that could cause invalidations for clients of storage

Jim Fulton jim at zope.com
Fri Aug 22 18:10:04 EDT 2008


Log message for revision 90136:
  Fixed a bug that could cause invalidations for clients of storage
  servers with zeo clients to be delayed.
  

Changed:
  U   ZODB/branches/3.8/src/ZEO/StorageServer.py
  U   ZODB/branches/3.8/src/ZEO/tests/registerDB.test

-=-
Modified: ZODB/branches/3.8/src/ZEO/StorageServer.py
===================================================================
--- ZODB/branches/3.8/src/ZEO/StorageServer.py	2008-08-22 19:14:14 UTC (rev 90135)
+++ ZODB/branches/3.8/src/ZEO/StorageServer.py	2008-08-22 22:10:03 UTC (rev 90136)
@@ -1013,10 +1013,11 @@
         # connections indirectoy by closing them.  We don't care about
         # later transactions since they will have to validate their
         # caches anyway.
-        connections = connections[:]        
+        connections = connections[:]
         for p in connections:
             try:
                 p.connection.should_close()
+                p.connection.trigger.pull_trigger()
             except ZEO.zrpc.error.DisconnectedError:
                 pass
         

Modified: ZODB/branches/3.8/src/ZEO/tests/registerDB.test
===================================================================
--- ZODB/branches/3.8/src/ZEO/tests/registerDB.test	2008-08-22 19:14:14 UTC (rev 90135)
+++ ZODB/branches/3.8/src/ZEO/tests/registerDB.test	2008-08-22 22:10:03 UTC (rev 90136)
@@ -61,7 +61,15 @@
     ...         self.mgr.close_conn(self)
     ...     def poll(self):
     ...         pass
+    ...
+    ...     @property
+    ...     def trigger(self):
+    ...         return self
+    ...
+    ...     def pull_trigger(self):
+    ...         pass
 
+
     >>> class ZEOStorage:
     ...     def __init__(self, server, name):
     ...         self.name = name



More information about the Zodb-checkins mailing list