temporalio / temporalio/temporal

Support starting abandoned child after parent workflow is closed

Open
#2,829 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
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 after parent workflow is closed, if child is not started yet (meaning child started event not recorded), child start will be skipped even if the parent close policy is abandon. Due to this reason, user needs to explicitly wait for the started event in their workflow before completing it.

Describe the solution you'd like
https://github.com/temporalio/temporal/blob/master/service/history/transferQueueActiveTaskExecutor.go#L687
https://github.com/temporalio/temporal/blob/master/service/history/transferQueueStandbyTaskExecutor.go#L415

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the referenced sections of service/history/transferQueueActiveTaskExecutor.go and service/history/transferQueueStandbyTaskExecutor.go to trace how child starts are handled after a parent closes. Define the behavior for an unstarted child when the parent close policy is abandon, then verify that the child start is no longer skipped in that case.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
distributed-systems
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.