[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