On Aug 15, 2006, at 2:32 PM, Jim Fulton wrote:
On Jun 12, 2006, at 1:35 PM, Dieter Maurer wrote:
Sorry to take so long to get to this....
Jim Fulton wrote at 2006-6-12 06:34 -0400:
The potential inconsistency occurs because the ZODB (Connection)
may contain objects not in the ZEO client cache. Even if invalid
they are not checked and invalidated during the cache verification
If true, that would be a serious bug. In _process_invalidations,
the invalidations are passed on to the database, which passes then
on to the connections. What makes you think this isn't happening?
This happens -- but only for objects the ZEO client cache knows
The problem is with objects that are in a Connection cache but
not in a ZEO client cache (because this is too small, for example).
The storage does not know about them and therefore does not
check with the server whether they are still valid.
Ah, good point. Hm. I suppose a conservative strategy would be to
clear the connection caches when the storage reconnects. I'll look
I've implemented this on the 3.7 branch and on the trunk.
Jim Fulton mailto:[EMAIL PROTECTED] Python
CTO (540) 361-1714
Zope Corporation http://www.zope.com http://www.zope.org
For more information about ZODB, see the ZODB Wiki:
ZODB-Dev mailing list - ZODB-Dev@zope.org