Reset workflow immediately times out if ExecutionTimeout has expired
Expected Behavior
The execution timeout is calculated from the time the workflow is reset.
Actual Behavior
The new run of the workflow created by reset is immediately timed out.
Steps to Reproduce the Problem
- Start a workflow specifying only the execution timeout.
- Let workflow timeout
- Reset workflow to the FirstWorkflowTask
- Witness workflow the new run immediately timeout.
Note that if WorkflowRunTimeout is specified and execution timeout is not (which defaults it to infinity) then the new run executes without any problem.
@mfateev what does execution timeout means? timeout across all runs? starting from?
We recommend not setting workflow execution timeout for almost all cases. For this issue, trying to reset a completed execution that had workflow execution timeout set would trigger this timeout to be fired in the new execution on reset point as the copied events before the reset point have original exec time stamps
if timeout is not set , under few conditions the workflow may run endless and affect the system at scale
i think ideallly reset should restart the timedout workflow from the execution point
this also applies to resetting executions that timed out on workflow run timeout