Hi,
I have an activity which is part of a workflow. Do I need versioning if the logic of this activity is modified ?
Hi,
I have an activity which is part of a workflow. Do I need versioning if the logic of this activity is modified ?
No, activity implementation can change any time without a problem. Versioning is required only when the workflow code changes.
Do I need versioning if I remove of add activity retry options ?
Do I need versioning if I remove of add activity retry options ?
No versioning is needed. Retry options, as well as activity argument values, are not compared during replay.
@maxim Where can i read more on whats compared during replay. I also made an incremental change to rate limit activities on the taskqueue across all workers using taskQueueActivitiesPerSecond
. Is this compared during replay ?
Any changes to WorkerOptions are safe without versioning. So taskQueueActivitiesPerSecond can be changed any time.
We don’t have a document that specifies what is considered non compatible change. Here is a short version:
Workflow.sleep
anywhere in the workflow code. Or changing activity invocation to a child workflow invocation.A
instead of B
.C
instead of D
.Anything that doesn’t affect the order of these operations is considered safe. The tricky part is that the order can have non trivial dependencies on workflow state.