On Jun 12, 2006, at 5:21 AM, Dieter Maurer wrote:
I fear we may get a ZODB cache inconsistency after a client
The current reconnection protocol essentially works as follows:
* "ClientStorage" detects a broken ZEO connection
and starts a reconnect thread
* The reconnect thread tries to reconnect to the ZEO server
and starts (ZEO client) cache verification, when it succeeds.
* All no longer valid "oid, version, tid" entries are
invalidated in the client and ZODB (Connection) caches.
The potential inconsistency occurs because the ZODB (Connection) cache
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?
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