1. 16 Oct, 2019 1 commit
    • Julien Muchembled's avatar
      Optimize WorkflowHistoryList · 4bc392ae
      Julien Muchembled authored
      This is done by inheriting most of the code of ConflictFreeLog,
      i.e. using a doubly-linked list:
      - for fast iteration of the first elements, and in particular
        immediate access to the first element (used for creation date);
      - that keeps track of the history length;
      - that implement fast reverse iteration (although it could
        have been done without changing the data structure).
      
      The size of buckets is not fixed anymore to 16 items:
      like ConflictFreeLog, WorkflowHistoryList is also a good candidate
      to look at the estimated serialized size of the bucket in order to
      decide if elements should be added to a new one or not.
      Then developers won't have to care about using Pdata or not.
      
      The size is bigger than the ConflictFreeLog default,
      because workflow items look a lot alike and adding
      a few more is cheap when the ZODB compresses.
      
      No more optimized __getstate__ (except for workflow histories that
      have not been migrated) so BT export will be a bit more verbose.
      
      The BBB code is because of
        nexedi/erp5!934
      
      /reviewed-on nexedi/erp5!941
      4bc392ae
  2. 02 Oct, 2019 1 commit
  3. 09 Jul, 2019 3 commits
  4. 27 Jun, 2019 1 commit
  5. 06 May, 2019 1 commit
  6. 06 Mar, 2019 1 commit
  7. 25 Feb, 2019 1 commit
  8. 04 Feb, 2019 10 commits
  9. 01 Feb, 2019 2 commits
  10. 31 Jan, 2019 2 commits
  11. 29 Jan, 2019 2 commits
  12. 28 Jan, 2019 1 commit
  13. 25 Jan, 2019 2 commits
  14. 21 Jan, 2019 5 commits
  15. 18 Jan, 2019 7 commits