[Zodb-checkins] CVS: ZODB3/ZEO - simul.py:1.12.8.2.18.7

Jeremy Hylton cvs-admin at zope.org
Wed Dec 3 01:02:55 EST 2003


Update of /cvs-repository/ZODB3/ZEO
In directory cvs.zope.org:/tmp/cvs-serv22650

Modified Files:
      Tag: Zope-2_6-branch
	simul.py 
Log Message:
Another major bug fixed in 2Q simulation.

Objects were still in self.cache after they had been unlinked from the
list.  As a result, they got counted as cache hits after they were
evicted.


=== ZODB3/ZEO/simul.py 1.12.8.2.18.6 => 1.12.8.2.18.7 ===
--- ZODB3/ZEO/simul.py:1.12.8.2.18.6	Wed Dec  3 00:39:58 2003
+++ ZODB3/ZEO/simul.py	Wed Dec  3 01:02:54 2003
@@ -527,6 +527,7 @@
                 assert self.a1out.next is not None
                 node = self.a1out.next
                 node.unlink()
+                del self.cache[node.oid]
                 self.a1out_size -= 1
 
     def evict_am(self, extra):
@@ -540,6 +541,7 @@
             # This node hasn't been accessed in a while, so just
             # forget about it.
             node.unlink()
+            del self.cache[node.oid]
             self.am_size -= node.size
 
     def write(self, oid, size):
@@ -575,6 +577,7 @@
                 self.makespace(node.size)
                 self.am_size += node.size
                 node.linkbefore(self.am)
+                self.cache[oid] = node
         else:
             # New objects enter the cache via a1in.  If they
             # are frequently used over a long enough time, they




More information about the Zodb-checkins mailing list