1. 21 Feb, 2017 3 commits
    • Julien Muchembled's avatar
      Implement deadlock avoidance · 092992db
      Julien Muchembled authored
      This is a first version with several optimizations possible:
      - improve EventQueue (or implement a specific queue) to minimize deadlocks
      - turn the RebaseObject packet into a notification
      
      Sorting oids could also be useful to reduce the probability of deadlocks,
      but that would never be enough to avoid them completely, even if there's a
      single storage. For example:
      
      1. C1 does a first store (x or y)
      2. C2 stores x and y; one is delayed
      3. C1 stores the other -> deadlock
         When solving the deadlock, the data of the first store may only
         exist on the storage.
      
      2 functional tests are removed because they're redundant,
      either with ZODB tests or with the new threaded tests.
      092992db
    • Julien Muchembled's avatar
      Fixes/improvements to EventQueue · cc8d0a7c
      Julien Muchembled authored
      - Make sure that errors while processing a delayed packet are reported to the
        connection that sent this packet.
      - Provide a mechanism to process events for the same connection in
        chronological order.
      cc8d0a7c
    • Julien Muchembled's avatar
  2. 14 Feb, 2017 8 commits
  3. 02 Feb, 2017 10 commits
  4. 26 Jan, 2017 1 commit
  5. 19 Jan, 2017 2 commits
  6. 18 Jan, 2017 4 commits
  7. 17 Jan, 2017 4 commits
  8. 16 Jan, 2017 4 commits
  9. 13 Jan, 2017 4 commits