• Julien Muchembled's avatar
    client: always process invalidations in poll thread · bce3bc78
    Julien Muchembled authored
    This fixes an invalidation bug, including the following critical error:
    
    CRITICAL txn.140440071526144 A storage error occurred during the second phase of the two-phase commit.  Resources may be in an inconsistent state.
    ------
    ERROR Zope.SiteErrorLog 1342544345.990.582646288246 /erp5/person_module/Folder_create
    Traceback (innermost last):
      Module ZPublisher.Publish, line 137, in publish
      Module Zope2.App.startup, line 291, in commit
      Module transaction._manager, line 93, in commit
      Module transaction._transaction, line 322, in commit
      Module transaction._transaction, line 424, in _commitResources
      Module neo.client, line 42, in tpc_finish
      Module neo.client.Storage, line 135, in tpc_finish
      Module neo.client.app, line 773, in tpc_finish
      Module neo.client, line 36, in callback
      Module ZODB.DB, line 693, in invalidate
      Module ZODB.DB, line 532, in _connectionMap
      Module ZODB.DB, line 221, in map
      Module transaction.weakset, line 58, in map
      Module ZODB.DB, line 692, in inval
      Module ZODB.Connection, line 350, in invalidate
    AssertionError: invalidations out of order, '\x03\x97\xec;\x19\x86\xc9\xf6' < '\x03\x97\xec;\x19\x87_\xdd'
    bce3bc78
cache.py 8.23 KB