-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New matching RPC: Check if version exists in TaskQueue #8772
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
Conversation
| message CheckTaskQueueVersionMembershipRequest { | ||
| string namespace_id = 1; | ||
| temporal.api.taskqueue.v1.TaskQueue task_queue = 2; | ||
| temporal.api.enums.v1.TaskQueueType task_queue_type = 3; |
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.
Technically, we don't need this (right now) since all the version presence checks for a task queue go through the workflow task queue type. However, I just wanted to be consistent with other matching API's since those that accept task-queue also accept the type. Moreover, we could have a future use-case of involving the activity task queue type of a task queue.
ShahabT
left a comment
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.
looks good otherwise
|
|
||
| message CheckTaskQueueVersionMembershipRequest { | ||
| string namespace_id = 1; | ||
| temporal.api.taskqueue.v1.TaskQueue task_queue = 2; |
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.
we're trying to move away from this proto as much as possible because it mixes multiple levels of TQs. In this case the API is only relevant to normal TQs, so just a string field is enough.
What changed?
Why?
How did you test it?
Potential risks
Note
Introduces a matching RPC to check if a task queue belongs to a deployment version, wires it through proto, gRPC, clients, engine, quotas, and tests, and updates worker versioning to use it.
CheckTaskQueueVersionMembershipRequest/Responsemessages inapi/matchingservice/v1/request_response.protoand generated Go files.CheckTaskQueueVersionMembershipmethod toMatchingServiceinservice.protoand generated gRPC stubs.Handler.CheckTaskQueueVersionMembershipforwarding to engine.matchingEngineImpl.CheckTaskQueueVersionMembershipto read user data and return membership viaworker_versioning.HasDeploymentVersion.client_gen.go,metric_client_gen.go, andretryable_client_gen.go.matchingservicemock.GetTaskQueueUserDatacheck withCheckTaskQueueVersionMembershipin detector.TestCheckTaskQueueVersionMembershipvalidating false-before/true-after worker registration.Written by Cursor Bugbot for commit ff2ea79. This will update automatically on new commits. Configure here.