You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Workflow Id Reuse Policy can have one of the following values:
Allow Duplicate: The Workflow Execution is allowed to exist regardless of the Closed status of a previous Workflow Execution with the same Workflow Id. This is the default policy, if one is not specified. Use this when it is OK to have a Workflow Execution with the same Workflow Id as a previous, but now Closed, Workflow Execution.
Its contradictory because it says "The Workflow Execution is allowed to exist regardless of the Closed status of a previous Workflow Execution" which means closed status does not matter but then later it says "Use this when it is OK to have a Workflow Execution with the same Workflow Id as a previous, but now Closed, Workflow Execution." which means it does care about Closed.
WORKFLOW_ID_REUSE_POLICY_ALLOW_DUPLICATE is the default behavior, the term “Allow duplicate” can be a bit confusing, it allows you to reuse the workflowId when there is no other workflow running with the same workflowId.
So I take that to mean that with this policy, if there is a current execution, it won't start another one with the same id. Only if all existing runs have closed out and there is no active running workflow with this id, it will execute.
Is your feature request related to a problem? Please describe.
Docs are a bit confusing and contradictory on the workflow id reuse policy
On this page https://docs.temporal.io/workflows#workflow-id-reuse-policy it says:
The Workflow Id Reuse Policy can have one of the following values:
Allow Duplicate: The Workflow Execution is allowed to exist regardless of the Closed status of a previous Workflow Execution with the same Workflow Id. This is the default policy, if one is not specified. Use this when it is OK to have a Workflow Execution with the same Workflow Id as a previous, but now Closed, Workflow Execution.
Its contradictory because it says "The Workflow Execution is allowed to exist regardless of the Closed status of a previous Workflow Execution" which means closed status does not matter but then later it says "Use this when it is OK to have a Workflow Execution with the same Workflow Id as a previous, but now Closed, Workflow Execution." which means it does care about Closed.
Digging I found this post: https://community.temporal.io/t/execute-a-workflow-multi-times-with-the-same-workflowid/6031/3 where someone says
WORKFLOW_ID_REUSE_POLICY_ALLOW_DUPLICATE is the default behavior, the term “Allow duplicate” can be a bit confusing, it allows you to reuse the workflowId when there is no other workflow running with the same workflowId.
So I take that to mean that with this policy, if there is a current execution, it won't start another one with the same id. Only if all existing runs have closed out and there is no active running workflow with this id, it will execute.
please see enums package - go.temporal.io/api/enums/v1 - Go Packages 4
Describe the solution you'd like
Update the docs to reflect the correct behavior
Describe alternatives you've considered
None
Additional context
Add any other context or screenshots about the feature request here.
The text was updated successfully, but these errors were encountered: