2018-10-19 09:55:30 |
Renat Akhmerov |
description |
Mistral only invalidate cache https://github.com/openstack/mistral/blob/64622cff7b47ed7c37ffbf489e5516714e4477a4/mistral/engine/workflows.py#L232 https://github.com/openstack/mistral/blob/64622cff7b47ed7c37ffbf489e5516714e4477a4/mistral/engine/workflows.py#L375 in one mistral-engine node.
If _refresh_task_state function cached outbound task in other node. There is chance than _refresh_task_state will be use wrong outbound task states.
Maybe, we should saved cached tasks states in context of join task and to reset it after rerun.
Test case:
Start 2 mistral engines.
Create workflow: http://paste.openstack.org/show/731913/
Launch script: http://paste.openstack.org/show/731914/ |
Mistral only invalidates cache https://github.com/openstack/mistral/blob/64622cff7b47ed7c37ffbf489e5516714e4477a4/mistral/engine/workflows.py#L232 https://github.com/openstack/mistral/blob/64622cff7b47ed7c37ffbf489e5516714e4477a4/mistral/engine/workflows.py#L375 in one mistral-engine node.
If _refresh_task_state function cached outbound task in other node there is chance that _refresh_task_state will be use wrong outbound task states.
Maybe, we should cache task states in context of join task and to reset it after rerun.
Test case:
Start 2 mistral engines.
Create workflow: http://paste.openstack.org/show/731913/
Launch script: http://paste.openstack.org/show/731914/ |
|