temporalio / temporalio/temporal
Delay workflow completion until abandoned children start
@yycptt is already working on this.
Since Jan 29, 2022.
- Dominant language
- Go
- Stars
- 23.2k
- Forks
- 1.9k
- Avg merge
- 2d 8h
- Merged PRs (30d)
- 228
Description
Is your feature request related to a problem? Please describe.
Currently, if a parent workflow exits before a child workflow has started the child is not going to start at all. It is possible to resolve by waiting for a Promise returned from ChildWorkflowStub.getExecution(). But this is a pretty obscure and error-prone feature.
Describe the solution you'd like
The proposal is to automatically delay workflow completion if there is an outstanding start child request that has abandon parent policy until the child reported that it started successfully. It can be done by failing the decision task and scheduling it after children have started.
Describe alternatives you've considered
I tried implementing it at the SDK level. The problem was dealing with new events (like signals) received after the workflow code has completed.
Additional context
The original SDK issue.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.