But when the Parent WF is not completed, from the UI we can get the Child Workflow Execution result normally. E.G. It’s failed or completed.
My point is can we still update the Child Workflow Execution result, even if the parent WF is completed?
For now, it will display the child WF running forever even it’s already completed. One bad effect is that you can’t reset this Parent WF with a forever running Child WF.
Normally, when a parent workflow finishes, any child workflows also stop. To let child workflows keep running after the parent finishes, you should set the parentClosePolicy to ABANDON.
A few important things to note:
If the parent finishes first, it won’t show the child’s completion unless the child finished first.
If the child finishes after the parent, the parent’s status won’t update to show the child’s completion.
If you’re seeing a child workflow still marked as “Running” in the UI after it’s done, that’s likely a display issue. We’d need to check our logs to see why it’s not updating correctly.
To get the behavior you asked about initially, you’ll need to set the parentClosePolicy to ABANDON.
It is not a bug, but it is unintuitive behavior. The UI shows the list of pending child workflows as seen by the parent at the time of its completion. As the parent state is not immutable after the completion, this stays the same independently of the child workflow status.
We are thinking about how to show it less confusingly.