[ZODB-Dev] [Warning] potential ZODB cache inconsistency after
client reconnect
Jim Fulton
jim at zope.com
Mon Jun 12 06:34:21 EDT 2006
On Jun 12, 2006, at 5:21 AM, Dieter Maurer wrote:
> I fear we may get a ZODB cache inconsistency after a client
> disconnect.
>
> 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
> meanwhile,
> they are not checked and invalidated during the cache verification
> phase.
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
--
Jim Fulton mailto:jim at zope.com Python Powered!
CTO (540) 361-1714 http://www.python.org
Zope Corporation http://www.zope.com http://www.zope.org
More information about the ZODB-Dev
mailing list