[ZODB-Dev] [Warning] potential ZODB cache inconsistency after client reconnect

Jim Fulton jim at zope.com
Tue Aug 15 14:32:52 EDT 2006


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)  
>>> 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?
>
> This happens -- but only for objects the ZEO client cache knows about.
>
> 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  
into doing
that.

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