mistral/releasenotes/notes/simplify_workflow_and_join_completion_check-77a47c5d8953096d.yaml
Renat Akhmerov 80a1bed67b Simplify workflow and join completion logic
* action_queue module is replaced with the more generic
  post_tx_queue module that allows to register operations that must
  run after the main DB transaction associated with processing a
  workflow event such as completing action.
* Instead of calling workflow completion check from all places
  where task may possibly complete, Mistral now registers a post
  transactional operation that runs after the main DB transaction
  (to make sure at least one needed consistent DB read) right
  inside the task completion logic. It reduces clutter significantly.
* Workflow completion check is now registered only if the just
  completed task may lead to workflow completion, i.e. if it's the
  last one in a workflow branch.
* Join now checks delayed calls to reduce a number of join
  completion checks created with scheduler and also uses post
  transactional queue for that.

Closes-Bug: #1801872
Change-Id: I90741d4121c48c42606dfa850cfe824557b095d0
2018-11-09 14:17:20 +07:00

11 lines
468 B
YAML

---
fixes:
- |
Workflow and join completion check logic is now simplified with using
post transactional queue of operations which is a more generic version of
action_queue module previously serving for scheduling action runs outside
of the main DB transaction. Workflow completion check is now registered
only once when a task completes which reduces clutter and it's registered
only if the task may potentially lead to workflow completion.