We recently observed another ZODB cache inconsistency:

  The commit of a huge transaction caused our ZEO server to be late
  in responding to the HA monitoring probe. The HA monitor responded
  with a SIGTERM targeted to the ZEO server. ZEO restarted.

  The ZEO client performing the huge transaction reported an
  error in the second phase of its commit state.

  The ZODB states of other ZEO clients were inconsitent:
  some of them had received invalidation messages and saw
  the objects modified by the huge transaction with their new
  values. Others had not yet received the invalidation messages
  and treated the objects as still unchanged.

This means that interrupting ZEO while it is sending invalidation messages
can cause inconsitent states in the ZODB caches of its clients.

I do not know what can be done about it...

For more information about ZODB, see the ZODB Wiki:

ZODB-Dev mailing list  -  ZODB-Dev@zope.org

Reply via email to