Skip to content

Allow UpdateWorkflowExecution against a completed workflow #6085

@dandavison

Description

@dandavison

Current behavior

image

Proposed behavior

image

Why?

UpdateWorkflowExecution permits the submitted update ID to exist
already; in this situation it returns information on the state of the
existing update. Clients are encouraged to make use of this behavior
by submitting the request repeatedly until the response indicates
that the update has reached a durable stage. Therefore, we must allow
the request to be submitted against completed updates since, otherwise,
there would be a race condition:

  1. client submits request 1; response indicates update not yet durable
  2. update becomes durable and workflow completes
  3. client submits request 2; receives WorkflowNotFound error

The above sequence is incorrect: the client's second request -- assuming it comes within the workflow retention period -- should receive
a success response indicating that the update is complete and
containing the update outcome.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions