Corresponding protobuf updates can be found https://github.com/microsoft/durabletask-protobuf/pull/19
It adds enum InstanceExistOption which contains three options THROW_IF_EXIST, TERMINATE_IF_EXIST, SKIP_IF_EXIST.
THROW_IF_EXIST will be the default behavior which is also the current behavior.
Just add a more concrete implementation, but also got two questions
Question: from the customer side SKIP_IF_EXIST and TERMINATE_IF_EXIST have the same behavior if success. Do customers need to know the difference between them? SKIP_IF_EXIST uses the old instance, whereas TERMINATE_IF_EXIST terminates the old instance and creates a new instance with the same instance ID.
This PR tries to update the logic to support reuse orchestration ID, more details can be found https://github.com/microsoft/durabletask-go/issues/42, https://github.com/dapr/dapr/issues/7101
Corresponding protobuf updates can be found https://github.com/microsoft/durabletask-protobuf/pull/19 It adds enum
InstanceExistOption
which contains three optionsTHROW_IF_EXIST
,TERMINATE_IF_EXIST
,SKIP_IF_EXIST
.THROW_IF_EXIST
will be the default behavior which is also the current behavior.