-
Notifications
You must be signed in to change notification settings - Fork 891
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Reset] Override ID reuse and conflict policy when starting child #7236
base: main
Are you sure you want to change the base?
Conversation
…nInfo for tracking child workflows post-reset
6015fef
to
2814a46
Compare
2814a46
to
695190a
Compare
@@ -37,6 +37,7 @@ message ParentExecutionInfo { | |||
int64 initiated_id = 4; | |||
temporal.server.api.clock.v1.VectorClock clock = 5; | |||
int64 initiated_version = 6; | |||
bool is_reset_run = 7; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd probably make this a ChildWorkflowOnly
field in StartWorkflowExecutionRequest, similar to what we have in Terminate/CancelWorkflowExecutionRequest. You only need it perform a parent/child check when terminating the current child right?
We can put the field here but also need to update other usages of this message I guess.
What changed?
is_reset_run
in ParentExecutionInfostartRequest.WorkflowIdReusePolicy
&startRequest.WorkflowIdConflictPolicy
for children that were recorded in theexecutionInfo.ChildrenInitializedPostResetPoint
executionInfo.ChildrenInitializedPostResetPoint[childID] = false
so that we don't do this again if the parent starts another instance of the same child.Why?
This is needed so that the parent can terminate any running children that were started in the previous run. Without this after reset, the parent may not make progress.
How did you test it?
Manual testing. Will add functional tests in followup PRs once the feature is ready.
Potential risks
N/A
Documentation
No. Documentation change is pending.
Is hotfix candidate?
No