mistral/mistral/engine
Renat Akhmerov dfdff78315 Fix how Mistral calculates workflow output
* Workflow output sometimes is not calculated correctly due to
  the race condition between different transactions: the one that
  checks workflow completion (i.e. calls "check_and_complete") and
  the one that processes action execution completion (i.e. calls
  "on_action_complete"). Calculating output sometimes was based on
  stale data cached by the SQLAlchemy session. To fix this, we just
  need to expire all objects in the session so that they are
  refreshed automatically if we read their state in order to make
  required calculations. See the bug description for more details
  on how the problem was observed.
* Added another test for direct workflow that formally checks
  calculation of workflow output. It doesn't pretend to test the
  aforementioned issue (it can be reproduced only with a big number
  of attempts, and/or under load). It's for the sake of the test
  module completeness.

Change-Id: I4a7e7fd9a4bbb6e93df169b4b40bc2d83ccfce89
Closes-Bug: #1792090
2018-09-12 16:48:43 +07:00
..
__init__.py Renaming "engine1" to "engine" 2015-04-09 17:47:36 +06:00
action_handler.py Dynamic workflow name evaluation. 2017-08-16 13:17:10 +02:00
action_queue.py Correction of comments for the #539039 review 2018-02-12 04:09:12 +04:00
actions.py A mechanism to close stuck running action executions 2018-06-12 14:15:15 +00:00
base.py A mechanism to close stuck running action executions 2018-06-12 14:15:15 +00:00
default_engine.py A mechanism to close stuck running action executions 2018-06-12 14:15:15 +00:00
dispatcher.py Performance: remove unnecessary workflow execution update 2018-09-03 11:47:11 +07:00
engine_server.py New experimental scheduler: the first working version 2018-08-14 14:02:19 +07:00
policies.py Refresh a number of retry a task when task was rerun 2018-06-24 05:34:33 +00:00
task_handler.py Gracefully handle DB disconnected connect errors 2017-12-28 16:50:19 +07:00
tasks.py Merge "Get rid of a extra copy of workflow environment" 2018-05-01 14:12:34 +00:00
utils.py Create and run a workflow within a namespace 2017-08-01 13:51:05 +00:00
workflow_handler.py Add the config option for Oslo Messaging executor type 2018-07-12 14:36:19 +07:00
workflows.py Fix how Mistral calculates workflow output 2018-09-12 16:48:43 +07:00