• Julien Muchembled's avatar
    client: fix assertion failure in case of conflict + storage disconnection · a746f812
    Julien Muchembled authored
    This fixes:
    
      Traceback (innermost last):
        ...
        Module transaction._transaction, line 393, in _commitResources
          rm.tpc_vote(self)
        Module ZODB.Connection, line 797, in tpc_vote
          s = vote(transaction)
        Module neo.client.Storage, line 95, in tpc_vote
          return self.app.tpc_vote(transaction)
        Module neo.client.app, line 546, in tpc_vote
          self.waitStoreResponses(txn_context)
        Module neo.client.app, line 539, in waitStoreResponses
          _waitAnyTransactionMessage(txn_context)
        Module neo.client.app, line 160, in _waitAnyTransactionMessage
          self._handleConflicts(txn_context)
        Module neo.client.app, line 471, in _handleConflicts
          assert oid is None, (oid, serial)
      AssertionError: ('\x00\x00\x00\x00\x00\x02\n\xe3', '\x03\xca\xad\xcb!\x92\xb6\x9c')
    a746f812
transactions.py 6.9 KB