1. 31 Jul, 2018 6 commits
  2. 27 Jul, 2018 2 commits
    • Sebastien Robin's avatar
      c9c876cf
    • Sebastien Robin's avatar
      simulation: solve random solving issues in a cluster environment · 924f20fa
      Sebastien Robin authored
      Before, when solving a solver, parsing sub objects of solver_process was done directly synchronously
      in solver_workflow. And we had the case where you have parallel transactions solving a solver,
      each of theses transactions see remaining solver not in solved state, but once all transaction are
      finished, all solver are solved. This could lead to the case where solver_process is never moved
      to succeeded. Instead of using serialize (which may lead to conflicts), just use activities in queue
      with a serialization tag.
      924f20fa
  3. 26 Jul, 2018 1 commit
  4. 25 Jul, 2018 2 commits
  5. 24 Jul, 2018 1 commit
  6. 19 Jul, 2018 1 commit
  7. 17 Jul, 2018 3 commits
  8. 13 Jul, 2018 1 commit
  9. 12 Jul, 2018 2 commits
  10. 11 Jul, 2018 2 commits
  11. 09 Jul, 2018 1 commit
  12. 06 Jul, 2018 1 commit
  13. 05 Jul, 2018 13 commits
  14. 04 Jul, 2018 3 commits
    • Vincent Pelletier's avatar
      CMFActivity: Get rid of an outdated comment. · bc65ba72
      Vincent Pelletier authored
      The original need to touch this comment is that it mentions now-removed
      Folder_reindexObjectList script. But also:
      - it mentions multi-ZEO setups, which are now discouraged if favour of
        using NEO
      - it mentions pre-conceived optimisations, which can be wrong and hence
        misleading (up-to-date measures are needed before deciding what to
        optimise)
      - it mentions a number of activity nodes which is nowadays exceeded
        without seeing any obvious issue caused by activity table deadlocks
        (which are nevertheless still likely an issue, just not yet breaking
        scalability)
      bc65ba72
    • Vincent Pelletier's avatar
      all: Get rid of Folder_reindex{All,Objectlist,TreeObjectList} · e944e1ef
      Vincent Pelletier authored
      These are now superseded by recursiveReindexObject.
      e944e1ef
    • Vincent Pelletier's avatar
      all: Remove recursiveImmediateReindexObject, and references to it. · c0b284be
      Vincent Pelletier authored
      This method does not belong to Folder (nor Base, even as an alias), as
      it recurses wihout any limit in a tree whose node count is unknown.
      Such generic recursion should either be deferred (split in multiple
      transactions, each processing a limited chunk of the tree) or not be
      recursive (which of course depends on the need).
      There is a single caller left (constructInstance) where the subtree size
      is assumed to be reasonable, as it was constructed inside current
      transaction. So essentially rename this method so it is only used in such
      conditions.
      c0b284be
  15. 03 Jul, 2018 1 commit
    • Vincent Pelletier's avatar
      Base: Add isSubtreeIndexable and isAncestryIndexable · 5c4c69a0
      Vincent Pelletier authored
      isAncestryIndexable is a parent-recursive version of isIndexable: it
      will return False if any parent is non-indeable. This simplifies
      disabling indexation of an entire tree, from its root to its deepest
      leaves.
      isSubtreeIndexable allows preventing any subobject from being indexable,
      without having to mark each individual subobject as non-indexable. This
      is different from isAncestryIndexable, as it allows having an indexable
      root, but no children indexable. This is especially useful for Trash Bins,
      where the bin itself should be indexable (because there is no reason not to)
      but its content must not be indexed, while being left as it was found in its
      original location.
      5c4c69a0