With-items workflow task still runnig when concurrent sub-workflows fail
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mistral |
Fix Released
|
High
|
Kevin Pouget |
Bug Description
When a with-items workflow based task is executing the sub-workflows with concurrency, the task will stay in the RUNNING state if at least one sub-workflow fail.
This behavior do not occurs for with-items action based tasks. The issue is caused by a different management of the "accepted" flag for actions than sub workflows. An action is set as accepted when its state change to "SUCCESS" or "ERROR", while a sub workflow is set to "accepted" when its state change to "SUCCESS" only.
So, a with-items task wait for the termination of the concurrent executions by searching the "accepted" ones, do not catch the failed sub workflows, and then still running.
version: "2.0"
name: wb1
workflows:
with_items:
type: direct
tasks:
task1:
with-items: i in [1, 2, 3]
workflow: subworkflow
on-error: task2
task2:
action: std.echo output="With-items failed"
subworkflow:
type: direct
tasks:
fail:
action: std.fail
Changed in mistral: | |
assignee: | nobody → Kevin Pouget (kpouget) |
Changed in mistral: | |
milestone: | none → mitaka-rc1 |
importance: | Undecided → High |
Changed in mistral: | |
milestone: | mitaka-rc1 → 2.0.0 |
Fix proposed to branch: master /review. openstack. org/290422
Review: https:/