New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement use_latest_build_id for activities, child workflows, continue-as-new #4347
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Makes sense!
@@ -2149,6 +2162,9 @@ func (ms *MutableStateImpl) ReplicateActivityTaskScheduledEvent( | |||
scheduledEventID := event.GetEventId() | |||
scheduleToCloseTimeout := attributes.GetScheduleToCloseTimeout() | |||
|
|||
// always use latest build id if activity is on a different task queue than the workflow | |||
useLatestBuildId := attributes.UseLatestBuildId || attributes.TaskQueue.GetName() != ms.executionInfo.TaskQueue |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Caller concern, a binary may include multiple workers polling on different task queues.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can you elaborate? I'm not sure how what you said relates to the code
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Respect the SDK's decision and don't override it server side.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
// always use latest build id if activity is on a different task queue than the workflow
Should be:
Use the latest build ID if indicated by the SDK.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I got rid of all the task queue checks. I still have some concern about making the default behavior the least surprising thing, but it's up to the sdk now
…ue-as-new (#4347) Note: This commit came from a feature branch and is not expected to build.
…ue-as-new (temporalio#4347) Note: This commit came from a feature branch and is not expected to build.
…ue-as-new (#4347) Note: This commit came from a feature branch and is not expected to build.
…ue-as-new (#4347) Note: This commit came from a feature branch and is not expected to build.
What changed?
Thread
use_latest_build_id
and build stamps where needed, respectuse_latest_build_id
.Why?
Implement more feature
How did you test it?
Not yet
Potential risks
Is hotfix candidate?