dapr / go-sdk

Dapr SDK for go
Apache License 2.0
443 stars 170 forks source link

Support workflow ID reuse policy #493

Open kaibocai opened 8 months ago

kaibocai commented 8 months ago

Is your feature request related to a problem? Please describe.

durabletask-go now support orchestration ID reuse policy, customer can reuse the orchestration ID with three different action ERROR, IGNORE, and TERMINATE with a target runtime status set.

ERROR- If there is an existing workflow then the scheduler throws an exception (this is the current behavior). IGNORE- If there is an existing workflow already scheduled, then the scheduler does nothing. TERMINATE- Terminates any existing workflows with the same instance ID and then schedules a new instance as one atomic action, similar to on-demand ContinueAsNew.

SDK needs to expose those options to customer orchestration ID reuse support.

Reference:

  1. https://github.com/microsoft/durabletask-go/pull/46
  2. https://github.com/microsoft/durabletask-java/pull/188

Describe the solution you'd like

Describe alternatives you've considered

Additional context