An error occurred fetching the project authors.
  1. 24 Sep, 2015 2 commits
  2. 15 Sep, 2015 2 commits
  3. 14 Aug, 2015 1 commit
    • Julien Muchembled's avatar
      Do not reconnect too quickly to a node after an error · d898a83d
      Julien Muchembled authored
      For example, a backup storage node that was rejected because the upstream
      cluster was not ready could reconnect in loop without delay, using 100% CPU
      and flooding logs.
      
      A new 'setReconnectionNoDelay' method on Connection can be used for cases where
      it's legitimate to quickly reconnect.
      
      With this new delayed reconnection, it's possible to remove the remaining
      time.sleep().
      d898a83d
  4. 12 Aug, 2015 2 commits
  5. 09 Jul, 2015 1 commit
  6. 03 Jul, 2015 2 commits
  7. 24 Jun, 2015 1 commit
  8. 21 May, 2015 1 commit
  9. 07 Nov, 2014 1 commit
  10. 20 Jun, 2014 1 commit
    • Julien Muchembled's avatar
      client: clean up import/export code · d562bf8f
      Julien Muchembled authored
      Export:
      - Remove leftover warning about a bug that was fixed in
        commit e76af297
      - In neomigrate script, open NEO storage read-only.
      - IStorageIteration is already implemented.
      
      Import:
      - Review comments.
      - In neomigrate script, warn that IStorageRestoreable is not implemented.
      - Do not call 'close' method on source iterator. BaseStorage does not do it and
        this is not part of ZODB API. In the case of FileStorage, resource are freed
        automatically during garbage collection.
      d562bf8f
  11. 19 Jun, 2014 2 commits
    • Julien Muchembled's avatar
      client: in iterator records, export data serial as stored by NEO · e76af297
      Julien Muchembled authored
      There is simply no way to guess data serials and instead of producing random
      values, the only solution is to retrieve the values from storages.
      
      There are still differences for data serials between FileStorage and NEO:
      - NEO always resolves to original serial, to avoid any indirection
        (which slightly speeds up undo at the expense of a more complex pack code)
      - NEO does not make any difference between object deletion and creation undone
        (data serial always null in storage)
      It has to be decided whether NEO implementation should be changed about this.
      
      Apart from that, conversion database back from NEO should be fixed.
      testExportFileStorageBug passes and there was in fact no FileStorage bug.
      
      Another change is that iterator does not trash the client cache anymore.
      e76af297
    • Julien Muchembled's avatar
      client: simplify iterator · 441145e5
      Julien Muchembled authored
      441145e5
  12. 04 Jun, 2014 1 commit
  13. 07 Jan, 2014 6 commits
  14. 04 Jan, 2014 3 commits
  15. 17 Dec, 2013 1 commit
  16. 13 Dec, 2013 1 commit
  17. 08 Nov, 2013 2 commits
  18. 28 Oct, 2013 1 commit
  19. 03 Jan, 2013 1 commit
  20. 26 Aug, 2012 1 commit
  21. 23 Aug, 2012 1 commit
  22. 20 Aug, 2012 2 commits
  23. 23 Jul, 2012 1 commit
    • Julien Muchembled's avatar
      client: really process all invalidations in poll thread · c277ed20
      Julien Muchembled authored
      This changes completely how to get data from storages than is not too
      recent and NEO now behaves as expected by ZODB, instead of trying to
      snapshot at Storage level.
      However, ZODB should probably be changed to avoid double loading when
      an invalidation is received during a load.
      c277ed20
  24. 19 Jul, 2012 2 commits
  25. 18 Jul, 2012 1 commit
    • 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