[ZODB-Dev] ZEO Client cache invalidation?
Greg Ward
gward@mems-exchange.org
Thu, 5 Jul 2001 15:08:57 -0400
On 05 July 2001, Jeremy Hylton said:
> Your brain doesn't hurt that much, does it?
Not really -- the hard part was explaining the invalidation-via-asyncore
scheme in one paragraph from memory, not understanding it in the first
place. (Although I maintain that it's clever, subtle, and non-obvious.)
> The "certain communications" that you refer to are invalidation messages,
> which can only be handled at transaction boundaries. If they were handled
> as they were received, the client could see an inconsistent view of the
> database.
So what about those "out-of-band" invalidation messages processed by
Zope's main loop (without Zope actually knowing about it, if I
understand correctly). Do they only work because Zope is in between
handling requests, ie. committed a transaction a while back and hasn't
yet started a new one? "Transaction boundary" sounds to me like an
instant in time -- is it really the interval of time between a commit()
and the next object modification?
Greg