feat: add GetTaskQueueUserData RPC to admin service (#9934)

## What changed?

This PR adds a new `GetTaskQueueUserData` RPC to the admin service.

Given a namespace, task queue name, task queue type, and optional
partition ID (default is 0, which is `root`), it returns the user data
currently loaded by that partition.

This PR wraps the existing `GetTaskQueueUserData` RPC in Matching
Service. We will also create a `tdbg` command which calls this Admin
Service RPC, in a separate PR.

## Why?

Each task queue family has associated metadata, stored in
[TaskQueueUserData](https://github.com/temporalio/temporal/blob/main/proto/internal/temporal/server/api/persistence/v1/task_queues.proto).
Metadata related to worker versioning, queue rate limiting, fairness are
all stored in `TaskQueueUserData`.

TaskQueueUserData is replicated from the root partition to all other
partitions.

However, there is no admin-accessible way to read the user data loaded
by a specific partition or compare versions across partitions to
diagnose replication lag.

## Files changed

| File | Change |
|---|---|
| `proto/internal/.../adminservice/v1/request_response.proto` | Added
`GetTaskQueueUserDataRequest` and `GetTaskQueueUserDataResponse`
messages |
| `proto/internal/.../adminservice/v1/service.proto` | Added
`GetTaskQueueUserData` RPC to `AdminService` |
| `service/frontend/admin_handler.go` | Implemented
`AdminHandler.GetTaskQueueUserData`: validates request, resolves
namespace → ID, builds partition RPC name via `tqid`, calls matching
service, returns per-type entry + version |
| `service/frontend/admin_handler_test.go` | Added unit tests |

## How did you test it?

- [x] built
- [x] run locally and tested manually
- [x] added new unit test(s)
- [x] added new integration test(s) - not applicable, not touching
persistence layer
- [x] added new functional test(s)

### Unit tests

100% unit test coverage

  | Test case | Input | Expected |
  |---|---|---|
  | Nil request | `request == nil` | `errRequestNotSet` |
  | Empty namespace | `namespace == ""` | `errNamespaceNotSet` |
| Namespace not found | Namespace registry returns not-found | Error
propagated; matching never called |
| Invalid task queue name | `task_queue` starts with `/_sys/` |
`INVALID_ARGUMENT` from `tqid.NewTaskQueueFamily`; matching never called
|
| Root partition | `partition_id=0`, workflow type | Sends bare name
`my-queue` to matching; returns correct `user_data` and `version` |
| Non-root partition | `partition_id=1`, workflow type | Sends mangled
name `/_sys/my-queue/1` to matching |
| No per-type data | Matching returns response with empty `per_type` map
| `user_data` is nil; `version` still populated |
| Matching error | Matching client returns error | Error propagated to
caller |

### Functional tests

| Test | Setup | What it verifies |

|------------------------------------------------|--------------------------------|----------------------------------------------------------------------------------|
| TestAdminGetTaskQueueUserData_RootPartition | Write fairness weight
config to a workflow task queue | Admin RPC resolves namespace by name,
routes to root partition (partition_id=0), returns version > 0 and
non-nil per-type data |
| TestAdminGetTaskQueueUserData_NonRootPartition | Same write, then poll
until non-root partition replicates | Admin RPC routes to a non-root
partition (partition_id=1) via mangled name, returns the same version as
root after replication |

### Manual tests

<details>
<summary>Setup</summary>

1. Build and start the server: `make temporal-server && make
start-sqlite`
2. Create namespace: `temporal operator namespace create default`
3. Insert assignment rule: `temporal task-queue versioning
insert-assignment-rule`

</details>

<details>
<summary>Case 1 — Root partition, workflow type</summary>

```
grpcurl -plaintext \
  -d '{"namespace":"default","task_queue":"my-queue","task_queue_type":"TASK_QUEUE_TYPE_WORKFLOW"}' \
  localhost:7233 \
  temporal.server.api.adminservice.v1.AdminService/GetTaskQueueUserData
```

```json
{
  "version": "1"
}
```
</details>

<details>
<summary>Case 2 — Root partition, activity type</summary>

```
grpcurl -plaintext \
  -d '{"namespace":"default","task_queue":"my-queue","task_queue_type":"TASK_QUEUE_TYPE_ACTIVITY"}' \
  localhost:7233 \
  temporal.server.api.adminservice.v1.AdminService/GetTaskQueueUserData
```

```json
{
  "version": "1"
}
```
</details>

<details>
<summary>Case 3 — Non-root partition, workflow type</summary>

```
grpcurl -plaintext \
  -d '{"namespace":"default","task_queue":"my-queue","task_queue_type":"TASK_QUEUE_TYPE_WORKFLOW","partition_id":1}' \
  localhost:7233 \
  temporal.server.api.adminservice.v1.AdminService/GetTaskQueueUserData
```

```json
{
  "version": "1"
}
```
</details>

<details>
<summary>Case 4 — Non-root partition, activity type</summary>

```
grpcurl -plaintext \
  -d '{"namespace":"default","task_queue":"my-queue","task_queue_type":"TASK_QUEUE_TYPE_ACTIVITY","partition_id":1}' \
  localhost:7233 \
  temporal.server.api.adminservice.v1.AdminService/GetTaskQueueUserData
```

```json
{
  "version": "1"
}
```

</details>

<details>
<summary>Case 5 — Non-root partition, activity type, with user
data</summary>

Setup: Add rate limit config

```
grpcurl -plaintext \
  -d '{
    "namespace": "default",
    "task_queue": "my-queue",
    "task_queue_type": "TASK_QUEUE_TYPE_ACTIVITY",
    "update_queue_rate_limit": {
      "rate_limit": {
        "requests_per_second": 50.0
      },
      "reason": "manual test"
    }
  }' \
  localhost:7233 \
  temporal.api.workflowservice.v1.WorkflowService/UpdateTaskQueueConfig
```

```
grpcurl -plaintext \
  -d '{
    "namespace": "default",
    "task_queue": "my-queue",
    "task_queue_type": "TASK_QUEUE_TYPE_ACTIVITY"
  }' \
  localhost:7233 \
  temporal.server.api.adminservice.v1.AdminService/GetTaskQueueUserData
```

```json
{
  "userData": {
    "config": {
      "queueRateLimit": {
        "rateLimit": {
          "requestsPerSecond": 50
        },
        "metadata": {
          "reason": "manual test",
          "updateTime": "2026-04-13T21:40:39.888Z"
        }
      }
    }
  },
  "version": "2"
}
```

</details>

<details>
<summary>Case 6 — Namespace not found</summary>

```
grpcurl -plaintext \
  -d '{"namespace":"nonexistent","task_queue":"my-queue","task_queue_type":"TASK_QUEUE_TYPE_WORKFLOW"}' \
  localhost:7233 \
  temporal.server.api.adminservice.v1.AdminService/GetTaskQueueUserData
```

```
ERROR:
  Code: NotFound
  Message: Namespace nonexistent is not found.
```

`NOT_FOUND` from namespace registry; matching never called.

</details>

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Veeral Patel
2026-04-14 18:35:19 -07:00
committed by GitHub
parent c81294bfa1
commit 94556cc8ce
14 changed files with 904 additions and 274 deletions

View File

@@ -3261,6 +3261,80 @@ func (this *ForceUnloadTaskQueuePartitionResponse) Equal(that interface{}) bool
return proto.Equal(this, that1)
}
// Marshal an object of type GetTaskQueueUserDataRequest to the protobuf v3 wire format
func (val *GetTaskQueueUserDataRequest) Marshal() ([]byte, error) {
return proto.Marshal(val)
}
// Unmarshal an object of type GetTaskQueueUserDataRequest from the protobuf v3 wire format
func (val *GetTaskQueueUserDataRequest) Unmarshal(buf []byte) error {
return proto.Unmarshal(buf, val)
}
// Size returns the size of the object, in bytes, once serialized
func (val *GetTaskQueueUserDataRequest) Size() int {
return proto.Size(val)
}
// Equal returns whether two GetTaskQueueUserDataRequest values are equivalent by recursively
// comparing the message's fields.
// For more information see the documentation for
// https://pkg.go.dev/google.golang.org/protobuf/proto#Equal
func (this *GetTaskQueueUserDataRequest) Equal(that interface{}) bool {
if that == nil {
return this == nil
}
var that1 *GetTaskQueueUserDataRequest
switch t := that.(type) {
case *GetTaskQueueUserDataRequest:
that1 = t
case GetTaskQueueUserDataRequest:
that1 = &t
default:
return false
}
return proto.Equal(this, that1)
}
// Marshal an object of type GetTaskQueueUserDataResponse to the protobuf v3 wire format
func (val *GetTaskQueueUserDataResponse) Marshal() ([]byte, error) {
return proto.Marshal(val)
}
// Unmarshal an object of type GetTaskQueueUserDataResponse from the protobuf v3 wire format
func (val *GetTaskQueueUserDataResponse) Unmarshal(buf []byte) error {
return proto.Unmarshal(buf, val)
}
// Size returns the size of the object, in bytes, once serialized
func (val *GetTaskQueueUserDataResponse) Size() int {
return proto.Size(val)
}
// Equal returns whether two GetTaskQueueUserDataResponse values are equivalent by recursively
// comparing the message's fields.
// For more information see the documentation for
// https://pkg.go.dev/google.golang.org/protobuf/proto#Equal
func (this *GetTaskQueueUserDataResponse) Equal(that interface{}) bool {
if that == nil {
return this == nil
}
var that1 *GetTaskQueueUserDataResponse
switch t := that.(type) {
case *GetTaskQueueUserDataResponse:
that1 = t
case GetTaskQueueUserDataResponse:
that1 = &t
default:
return false
}
return proto.Equal(this, that1)
}
// Marshal an object of type StartAdminBatchOperationRequest to the protobuf v3 wire format
func (val *StartAdminBatchOperationRequest) Marshal() ([]byte, error) {
return proto.Marshal(val)

View File

@@ -100,7 +100,7 @@ func (x MigrateScheduleRequest_SchedulerTarget) Number() protoreflect.EnumNumber
// Deprecated: Use MigrateScheduleRequest_SchedulerTarget.Descriptor instead.
func (MigrateScheduleRequest_SchedulerTarget) EnumDescriptor() ([]byte, []int) {
return file_temporal_server_api_adminservice_v1_request_response_proto_rawDescGZIP(), []int{91, 0}
return file_temporal_server_api_adminservice_v1_request_response_proto_rawDescGZIP(), []int{93, 0}
}
type RebuildMutableStateRequest struct {
@@ -5356,6 +5356,127 @@ func (x *ForceUnloadTaskQueuePartitionResponse) GetWasLoaded() bool {
return false
}
type GetTaskQueueUserDataRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Namespace string `protobuf:"bytes,1,opt,name=namespace,proto3" json:"namespace,omitempty"`
TaskQueue string `protobuf:"bytes,2,opt,name=task_queue,json=taskQueue,proto3" json:"task_queue,omitempty"`
TaskQueueType v16.TaskQueueType `protobuf:"varint,3,opt,name=task_queue_type,json=taskQueueType,proto3,enum=temporal.api.enums.v1.TaskQueueType" json:"task_queue_type,omitempty"`
// If non-zero, fetch the user data loaded by this partition instead of the root.
PartitionId int32 `protobuf:"varint,4,opt,name=partition_id,json=partitionId,proto3" json:"partition_id,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *GetTaskQueueUserDataRequest) Reset() {
*x = GetTaskQueueUserDataRequest{}
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[88]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetTaskQueueUserDataRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetTaskQueueUserDataRequest) ProtoMessage() {}
func (x *GetTaskQueueUserDataRequest) ProtoReflect() protoreflect.Message {
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[88]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetTaskQueueUserDataRequest.ProtoReflect.Descriptor instead.
func (*GetTaskQueueUserDataRequest) Descriptor() ([]byte, []int) {
return file_temporal_server_api_adminservice_v1_request_response_proto_rawDescGZIP(), []int{88}
}
func (x *GetTaskQueueUserDataRequest) GetNamespace() string {
if x != nil {
return x.Namespace
}
return ""
}
func (x *GetTaskQueueUserDataRequest) GetTaskQueue() string {
if x != nil {
return x.TaskQueue
}
return ""
}
func (x *GetTaskQueueUserDataRequest) GetTaskQueueType() v16.TaskQueueType {
if x != nil {
return x.TaskQueueType
}
return v16.TaskQueueType(0)
}
func (x *GetTaskQueueUserDataRequest) GetPartitionId() int32 {
if x != nil {
return x.PartitionId
}
return 0
}
type GetTaskQueueUserDataResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
UserData *v12.TaskQueueTypeUserData `protobuf:"bytes,1,opt,name=user_data,json=userData,proto3" json:"user_data,omitempty"`
Version int64 `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *GetTaskQueueUserDataResponse) Reset() {
*x = GetTaskQueueUserDataResponse{}
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[89]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetTaskQueueUserDataResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetTaskQueueUserDataResponse) ProtoMessage() {}
func (x *GetTaskQueueUserDataResponse) ProtoReflect() protoreflect.Message {
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[89]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetTaskQueueUserDataResponse.ProtoReflect.Descriptor instead.
func (*GetTaskQueueUserDataResponse) Descriptor() ([]byte, []int) {
return file_temporal_server_api_adminservice_v1_request_response_proto_rawDescGZIP(), []int{89}
}
func (x *GetTaskQueueUserDataResponse) GetUserData() *v12.TaskQueueTypeUserData {
if x != nil {
return x.UserData
}
return nil
}
func (x *GetTaskQueueUserDataResponse) GetVersion() int64 {
if x != nil {
return x.Version
}
return 0
}
// StartAdminBatchOperationRequest starts an admin batch operation.
// WARNING: Batch Operations are exposed to all users of the namespace. Admin Batch Operations should be exercised with caution.
type StartAdminBatchOperationRequest struct {
@@ -5386,7 +5507,7 @@ type StartAdminBatchOperationRequest struct {
func (x *StartAdminBatchOperationRequest) Reset() {
*x = StartAdminBatchOperationRequest{}
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[88]
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[90]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5398,7 +5519,7 @@ func (x *StartAdminBatchOperationRequest) String() string {
func (*StartAdminBatchOperationRequest) ProtoMessage() {}
func (x *StartAdminBatchOperationRequest) ProtoReflect() protoreflect.Message {
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[88]
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[90]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5411,7 +5532,7 @@ func (x *StartAdminBatchOperationRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use StartAdminBatchOperationRequest.ProtoReflect.Descriptor instead.
func (*StartAdminBatchOperationRequest) Descriptor() ([]byte, []int) {
return file_temporal_server_api_adminservice_v1_request_response_proto_rawDescGZIP(), []int{88}
return file_temporal_server_api_adminservice_v1_request_response_proto_rawDescGZIP(), []int{90}
}
func (x *StartAdminBatchOperationRequest) GetNamespace() string {
@@ -5491,7 +5612,7 @@ type StartAdminBatchOperationResponse struct {
func (x *StartAdminBatchOperationResponse) Reset() {
*x = StartAdminBatchOperationResponse{}
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[89]
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[91]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5503,7 +5624,7 @@ func (x *StartAdminBatchOperationResponse) String() string {
func (*StartAdminBatchOperationResponse) ProtoMessage() {}
func (x *StartAdminBatchOperationResponse) ProtoReflect() protoreflect.Message {
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[89]
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[91]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5516,7 +5637,7 @@ func (x *StartAdminBatchOperationResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use StartAdminBatchOperationResponse.ProtoReflect.Descriptor instead.
func (*StartAdminBatchOperationResponse) Descriptor() ([]byte, []int) {
return file_temporal_server_api_adminservice_v1_request_response_proto_rawDescGZIP(), []int{89}
return file_temporal_server_api_adminservice_v1_request_response_proto_rawDescGZIP(), []int{91}
}
// BatchOperationRefreshTasks refreshes tasks for batch executions.
@@ -5529,7 +5650,7 @@ type BatchOperationRefreshTasks struct {
func (x *BatchOperationRefreshTasks) Reset() {
*x = BatchOperationRefreshTasks{}
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[90]
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[92]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5541,7 +5662,7 @@ func (x *BatchOperationRefreshTasks) String() string {
func (*BatchOperationRefreshTasks) ProtoMessage() {}
func (x *BatchOperationRefreshTasks) ProtoReflect() protoreflect.Message {
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[90]
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[92]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5554,7 +5675,7 @@ func (x *BatchOperationRefreshTasks) ProtoReflect() protoreflect.Message {
// Deprecated: Use BatchOperationRefreshTasks.ProtoReflect.Descriptor instead.
func (*BatchOperationRefreshTasks) Descriptor() ([]byte, []int) {
return file_temporal_server_api_adminservice_v1_request_response_proto_rawDescGZIP(), []int{90}
return file_temporal_server_api_adminservice_v1_request_response_proto_rawDescGZIP(), []int{92}
}
type MigrateScheduleRequest struct {
@@ -5575,7 +5696,7 @@ type MigrateScheduleRequest struct {
func (x *MigrateScheduleRequest) Reset() {
*x = MigrateScheduleRequest{}
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[91]
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[93]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5587,7 +5708,7 @@ func (x *MigrateScheduleRequest) String() string {
func (*MigrateScheduleRequest) ProtoMessage() {}
func (x *MigrateScheduleRequest) ProtoReflect() protoreflect.Message {
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[91]
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[93]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5600,7 +5721,7 @@ func (x *MigrateScheduleRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use MigrateScheduleRequest.ProtoReflect.Descriptor instead.
func (*MigrateScheduleRequest) Descriptor() ([]byte, []int) {
return file_temporal_server_api_adminservice_v1_request_response_proto_rawDescGZIP(), []int{91}
return file_temporal_server_api_adminservice_v1_request_response_proto_rawDescGZIP(), []int{93}
}
func (x *MigrateScheduleRequest) GetNamespace() string {
@@ -5646,7 +5767,7 @@ type MigrateScheduleResponse struct {
func (x *MigrateScheduleResponse) Reset() {
*x = MigrateScheduleResponse{}
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[92]
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[94]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5658,7 +5779,7 @@ func (x *MigrateScheduleResponse) String() string {
func (*MigrateScheduleResponse) ProtoMessage() {}
func (x *MigrateScheduleResponse) ProtoReflect() protoreflect.Message {
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[92]
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[94]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5671,7 +5792,7 @@ func (x *MigrateScheduleResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use MigrateScheduleResponse.ProtoReflect.Descriptor instead.
func (*MigrateScheduleResponse) Descriptor() ([]byte, []int) {
return file_temporal_server_api_adminservice_v1_request_response_proto_rawDescGZIP(), []int{92}
return file_temporal_server_api_adminservice_v1_request_response_proto_rawDescGZIP(), []int{94}
}
type AddTasksRequest_Task struct {
@@ -5684,7 +5805,7 @@ type AddTasksRequest_Task struct {
func (x *AddTasksRequest_Task) Reset() {
*x = AddTasksRequest_Task{}
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[100]
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[102]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5696,7 +5817,7 @@ func (x *AddTasksRequest_Task) String() string {
func (*AddTasksRequest_Task) ProtoMessage() {}
func (x *AddTasksRequest_Task) ProtoReflect() protoreflect.Message {
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[100]
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[102]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5737,7 +5858,7 @@ type ListQueuesResponse_QueueInfo struct {
func (x *ListQueuesResponse_QueueInfo) Reset() {
*x = ListQueuesResponse_QueueInfo{}
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[101]
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[103]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -5749,7 +5870,7 @@ func (x *ListQueuesResponse_QueueInfo) String() string {
func (*ListQueuesResponse_QueueInfo) ProtoMessage() {}
func (x *ListQueuesResponse_QueueInfo) ProtoReflect() protoreflect.Message {
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[101]
mi := &file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[103]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -5790,7 +5911,7 @@ var File_temporal_server_api_adminservice_v1_request_response_proto protoreflect
const file_temporal_server_api_adminservice_v1_request_response_proto_rawDesc = "" +
"\n" +
":temporal/server/api/adminservice/v1/request_response.proto\x12#temporal.server.api.adminservice.v1\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a$temporal/api/common/v1/message.proto\x1a\"temporal/api/enums/v1/common.proto\x1a&temporal/api/enums/v1/task_queue.proto\x1a'temporal/api/namespace/v1/message.proto\x1a)temporal/api/replication/v1/message.proto\x1a'temporal/api/taskqueue/v1/message.proto\x1a%temporal/api/version/v1/message.proto\x1a&temporal/api/workflow/v1/message.proto\x1a,temporal/server/api/cluster/v1/message.proto\x1a'temporal/server/api/common/v1/dlq.proto\x1a*temporal/server/api/enums/v1/cluster.proto\x1a)temporal/server/api/enums/v1/common.proto\x1a&temporal/server/api/enums/v1/dlq.proto\x1a'temporal/server/api/enums/v1/task.proto\x1a+temporal/server/api/health/v1/message.proto\x1a,temporal/server/api/history/v1/message.proto\x1a.temporal/server/api/namespace/v1/message.proto\x1a9temporal/server/api/persistence/v1/cluster_metadata.proto\x1a3temporal/server/api/persistence/v1/executions.proto\x1a,temporal/server/api/persistence/v1/hsm.proto\x1a.temporal/server/api/persistence/v1/tasks.proto\x1a?temporal/server/api/persistence/v1/workflow_mutable_state.proto\x1a0temporal/server/api/replication/v1/message.proto\x1a.temporal/server/api/taskqueue/v1/message.proto\"\x83\x01\n" +
":temporal/server/api/adminservice/v1/request_response.proto\x12#temporal.server.api.adminservice.v1\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a$temporal/api/common/v1/message.proto\x1a\"temporal/api/enums/v1/common.proto\x1a&temporal/api/enums/v1/task_queue.proto\x1a'temporal/api/namespace/v1/message.proto\x1a)temporal/api/replication/v1/message.proto\x1a'temporal/api/taskqueue/v1/message.proto\x1a%temporal/api/version/v1/message.proto\x1a&temporal/api/workflow/v1/message.proto\x1a,temporal/server/api/cluster/v1/message.proto\x1a'temporal/server/api/common/v1/dlq.proto\x1a*temporal/server/api/enums/v1/cluster.proto\x1a)temporal/server/api/enums/v1/common.proto\x1a&temporal/server/api/enums/v1/dlq.proto\x1a'temporal/server/api/enums/v1/task.proto\x1a+temporal/server/api/health/v1/message.proto\x1a,temporal/server/api/history/v1/message.proto\x1a.temporal/server/api/namespace/v1/message.proto\x1a9temporal/server/api/persistence/v1/cluster_metadata.proto\x1a3temporal/server/api/persistence/v1/executions.proto\x1a,temporal/server/api/persistence/v1/hsm.proto\x1a4temporal/server/api/persistence/v1/task_queues.proto\x1a.temporal/server/api/persistence/v1/tasks.proto\x1a?temporal/server/api/persistence/v1/workflow_mutable_state.proto\x1a0temporal/server/api/replication/v1/message.proto\x1a.temporal/server/api/taskqueue/v1/message.proto\"\x83\x01\n" +
"\x1aRebuildMutableStateRequest\x12\x1c\n" +
"\tnamespace\x18\x01 \x01(\tR\tnamespace\x12G\n" +
"\texecution\x18\x02 \x01(\v2).temporal.api.common.v1.WorkflowExecutionR\texecution\"\x1d\n" +
@@ -6184,7 +6305,16 @@ const file_temporal_server_api_adminservice_v1_request_response_proto_rawDesc =
"\x14task_queue_partition\x18\x02 \x01(\v24.temporal.server.api.taskqueue.v1.TaskQueuePartitionR\x12taskQueuePartition\"F\n" +
"%ForceUnloadTaskQueuePartitionResponse\x12\x1d\n" +
"\n" +
"was_loaded\x18\x01 \x01(\bR\twasLoaded\"\x88\x03\n" +
"was_loaded\x18\x01 \x01(\bR\twasLoaded\"\xcb\x01\n" +
"\x1bGetTaskQueueUserDataRequest\x12\x1c\n" +
"\tnamespace\x18\x01 \x01(\tR\tnamespace\x12\x1d\n" +
"\n" +
"task_queue\x18\x02 \x01(\tR\ttaskQueue\x12L\n" +
"\x0ftask_queue_type\x18\x03 \x01(\x0e2$.temporal.api.enums.v1.TaskQueueTypeR\rtaskQueueType\x12!\n" +
"\fpartition_id\x18\x04 \x01(\x05R\vpartitionId\"\x90\x01\n" +
"\x1cGetTaskQueueUserDataResponse\x12V\n" +
"\tuser_data\x18\x01 \x01(\v29.temporal.server.api.persistence.v1.TaskQueueTypeUserDataR\buserData\x12\x18\n" +
"\aversion\x18\x02 \x01(\x03R\aversion\"\x88\x03\n" +
"\x1fStartAdminBatchOperationRequest\x12\x1c\n" +
"\tnamespace\x18\x01 \x01(\tR\tnamespace\x12)\n" +
"\x10visibility_query\x18\x02 \x01(\tR\x0fvisibilityQuery\x12\x15\n" +
@@ -6226,7 +6356,7 @@ func file_temporal_server_api_adminservice_v1_request_response_proto_rawDescGZIP
}
var file_temporal_server_api_adminservice_v1_request_response_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes = make([]protoimpl.MessageInfo, 103)
var file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes = make([]protoimpl.MessageInfo, 105)
var file_temporal_server_api_adminservice_v1_request_response_proto_goTypes = []any{
(MigrateScheduleRequest_SchedulerTarget)(0), // 0: temporal.server.api.adminservice.v1.MigrateScheduleRequest.SchedulerTarget
(*RebuildMutableStateRequest)(nil), // 1: temporal.server.api.adminservice.v1.RebuildMutableStateRequest
@@ -6317,162 +6447,167 @@ var file_temporal_server_api_adminservice_v1_request_response_proto_goTypes = []
(*DescribeTaskQueuePartitionResponse)(nil), // 86: temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionResponse
(*ForceUnloadTaskQueuePartitionRequest)(nil), // 87: temporal.server.api.adminservice.v1.ForceUnloadTaskQueuePartitionRequest
(*ForceUnloadTaskQueuePartitionResponse)(nil), // 88: temporal.server.api.adminservice.v1.ForceUnloadTaskQueuePartitionResponse
(*StartAdminBatchOperationRequest)(nil), // 89: temporal.server.api.adminservice.v1.StartAdminBatchOperationRequest
(*StartAdminBatchOperationResponse)(nil), // 90: temporal.server.api.adminservice.v1.StartAdminBatchOperationResponse
(*BatchOperationRefreshTasks)(nil), // 91: temporal.server.api.adminservice.v1.BatchOperationRefreshTasks
(*MigrateScheduleRequest)(nil), // 92: temporal.server.api.adminservice.v1.MigrateScheduleRequest
(*MigrateScheduleResponse)(nil), // 93: temporal.server.api.adminservice.v1.MigrateScheduleResponse
nil, // 94: temporal.server.api.adminservice.v1.GetReplicationMessagesResponse.ShardMessagesEntry
nil, // 95: temporal.server.api.adminservice.v1.AddSearchAttributesRequest.SearchAttributesEntry
nil, // 96: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.CustomAttributesEntry
nil, // 97: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.SystemAttributesEntry
nil, // 98: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.MappingEntry
nil, // 99: temporal.server.api.adminservice.v1.DescribeClusterResponse.SupportedClientsEntry
nil, // 100: temporal.server.api.adminservice.v1.DescribeClusterResponse.TagsEntry
(*AddTasksRequest_Task)(nil), // 101: temporal.server.api.adminservice.v1.AddTasksRequest.Task
(*ListQueuesResponse_QueueInfo)(nil), // 102: temporal.server.api.adminservice.v1.ListQueuesResponse.QueueInfo
nil, // 103: temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionResponse.VersionsInfoInternalEntry
(*v1.WorkflowExecution)(nil), // 104: temporal.api.common.v1.WorkflowExecution
(*v1.DataBlob)(nil), // 105: temporal.api.common.v1.DataBlob
(*v11.VersionHistory)(nil), // 106: temporal.server.api.history.v1.VersionHistory
(*v12.WorkflowMutableState)(nil), // 107: temporal.server.api.persistence.v1.WorkflowMutableState
(*v13.NamespaceCacheInfo)(nil), // 108: temporal.server.api.namespace.v1.NamespaceCacheInfo
(*v12.ShardInfo)(nil), // 109: temporal.server.api.persistence.v1.ShardInfo
(*v11.TaskRange)(nil), // 110: temporal.server.api.history.v1.TaskRange
(v14.TaskType)(0), // 111: temporal.server.api.enums.v1.TaskType
(*timestamppb.Timestamp)(nil), // 112: google.protobuf.Timestamp
(*v15.ReplicationToken)(nil), // 113: temporal.server.api.replication.v1.ReplicationToken
(*v15.ReplicationMessages)(nil), // 114: temporal.server.api.replication.v1.ReplicationMessages
(*v15.ReplicationTaskInfo)(nil), // 115: temporal.server.api.replication.v1.ReplicationTaskInfo
(*v15.ReplicationTask)(nil), // 116: temporal.server.api.replication.v1.ReplicationTask
(*v17.WorkflowExecutionInfo)(nil), // 117: temporal.api.workflow.v1.WorkflowExecutionInfo
(*v18.MembershipInfo)(nil), // 118: temporal.server.api.cluster.v1.MembershipInfo
(*v19.VersionInfo)(nil), // 119: temporal.api.version.v1.VersionInfo
(*v12.ClusterMetadata)(nil), // 120: temporal.server.api.persistence.v1.ClusterMetadata
(*durationpb.Duration)(nil), // 121: google.protobuf.Duration
(v14.ClusterMemberRole)(0), // 122: temporal.server.api.enums.v1.ClusterMemberRole
(*v18.ClusterMember)(nil), // 123: temporal.server.api.cluster.v1.ClusterMember
(v14.DeadLetterQueueType)(0), // 124: temporal.server.api.enums.v1.DeadLetterQueueType
(v16.TaskQueueType)(0), // 125: temporal.api.enums.v1.TaskQueueType
(*v12.AllocatedTaskInfo)(nil), // 126: temporal.server.api.persistence.v1.AllocatedTaskInfo
(*v15.SyncReplicationState)(nil), // 127: temporal.server.api.replication.v1.SyncReplicationState
(*v15.WorkflowReplicationMessages)(nil), // 128: temporal.server.api.replication.v1.WorkflowReplicationMessages
(*v110.NamespaceInfo)(nil), // 129: temporal.api.namespace.v1.NamespaceInfo
(*v110.NamespaceConfig)(nil), // 130: temporal.api.namespace.v1.NamespaceConfig
(*v111.NamespaceReplicationConfig)(nil), // 131: temporal.api.replication.v1.NamespaceReplicationConfig
(*v111.FailoverStatus)(nil), // 132: temporal.api.replication.v1.FailoverStatus
(*v112.HistoryDLQKey)(nil), // 133: temporal.server.api.common.v1.HistoryDLQKey
(*v112.HistoryDLQTask)(nil), // 134: temporal.server.api.common.v1.HistoryDLQTask
(*v112.HistoryDLQTaskMetadata)(nil), // 135: temporal.server.api.common.v1.HistoryDLQTaskMetadata
(v14.DLQOperationType)(0), // 136: temporal.server.api.enums.v1.DLQOperationType
(v14.DLQOperationState)(0), // 137: temporal.server.api.enums.v1.DLQOperationState
(v14.HealthState)(0), // 138: temporal.server.api.enums.v1.HealthState
(*v113.ServiceHealthDetail)(nil), // 139: temporal.server.api.health.v1.ServiceHealthDetail
(*v12.VersionedTransition)(nil), // 140: temporal.server.api.persistence.v1.VersionedTransition
(*v11.VersionHistories)(nil), // 141: temporal.server.api.history.v1.VersionHistories
(*v15.VersionedTransitionArtifact)(nil), // 142: temporal.server.api.replication.v1.VersionedTransitionArtifact
(*v114.TaskQueuePartition)(nil), // 143: temporal.server.api.taskqueue.v1.TaskQueuePartition
(*v115.TaskQueueVersionSelection)(nil), // 144: temporal.api.taskqueue.v1.TaskQueueVersionSelection
(v16.IndexedValueType)(0), // 145: temporal.api.enums.v1.IndexedValueType
(*v114.TaskQueueVersionInfoInternal)(nil), // 146: temporal.server.api.taskqueue.v1.TaskQueueVersionInfoInternal
(*GetTaskQueueUserDataRequest)(nil), // 89: temporal.server.api.adminservice.v1.GetTaskQueueUserDataRequest
(*GetTaskQueueUserDataResponse)(nil), // 90: temporal.server.api.adminservice.v1.GetTaskQueueUserDataResponse
(*StartAdminBatchOperationRequest)(nil), // 91: temporal.server.api.adminservice.v1.StartAdminBatchOperationRequest
(*StartAdminBatchOperationResponse)(nil), // 92: temporal.server.api.adminservice.v1.StartAdminBatchOperationResponse
(*BatchOperationRefreshTasks)(nil), // 93: temporal.server.api.adminservice.v1.BatchOperationRefreshTasks
(*MigrateScheduleRequest)(nil), // 94: temporal.server.api.adminservice.v1.MigrateScheduleRequest
(*MigrateScheduleResponse)(nil), // 95: temporal.server.api.adminservice.v1.MigrateScheduleResponse
nil, // 96: temporal.server.api.adminservice.v1.GetReplicationMessagesResponse.ShardMessagesEntry
nil, // 97: temporal.server.api.adminservice.v1.AddSearchAttributesRequest.SearchAttributesEntry
nil, // 98: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.CustomAttributesEntry
nil, // 99: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.SystemAttributesEntry
nil, // 100: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.MappingEntry
nil, // 101: temporal.server.api.adminservice.v1.DescribeClusterResponse.SupportedClientsEntry
nil, // 102: temporal.server.api.adminservice.v1.DescribeClusterResponse.TagsEntry
(*AddTasksRequest_Task)(nil), // 103: temporal.server.api.adminservice.v1.AddTasksRequest.Task
(*ListQueuesResponse_QueueInfo)(nil), // 104: temporal.server.api.adminservice.v1.ListQueuesResponse.QueueInfo
nil, // 105: temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionResponse.VersionsInfoInternalEntry
(*v1.WorkflowExecution)(nil), // 106: temporal.api.common.v1.WorkflowExecution
(*v1.DataBlob)(nil), // 107: temporal.api.common.v1.DataBlob
(*v11.VersionHistory)(nil), // 108: temporal.server.api.history.v1.VersionHistory
(*v12.WorkflowMutableState)(nil), // 109: temporal.server.api.persistence.v1.WorkflowMutableState
(*v13.NamespaceCacheInfo)(nil), // 110: temporal.server.api.namespace.v1.NamespaceCacheInfo
(*v12.ShardInfo)(nil), // 111: temporal.server.api.persistence.v1.ShardInfo
(*v11.TaskRange)(nil), // 112: temporal.server.api.history.v1.TaskRange
(v14.TaskType)(0), // 113: temporal.server.api.enums.v1.TaskType
(*timestamppb.Timestamp)(nil), // 114: google.protobuf.Timestamp
(*v15.ReplicationToken)(nil), // 115: temporal.server.api.replication.v1.ReplicationToken
(*v15.ReplicationMessages)(nil), // 116: temporal.server.api.replication.v1.ReplicationMessages
(*v15.ReplicationTaskInfo)(nil), // 117: temporal.server.api.replication.v1.ReplicationTaskInfo
(*v15.ReplicationTask)(nil), // 118: temporal.server.api.replication.v1.ReplicationTask
(*v17.WorkflowExecutionInfo)(nil), // 119: temporal.api.workflow.v1.WorkflowExecutionInfo
(*v18.MembershipInfo)(nil), // 120: temporal.server.api.cluster.v1.MembershipInfo
(*v19.VersionInfo)(nil), // 121: temporal.api.version.v1.VersionInfo
(*v12.ClusterMetadata)(nil), // 122: temporal.server.api.persistence.v1.ClusterMetadata
(*durationpb.Duration)(nil), // 123: google.protobuf.Duration
(v14.ClusterMemberRole)(0), // 124: temporal.server.api.enums.v1.ClusterMemberRole
(*v18.ClusterMember)(nil), // 125: temporal.server.api.cluster.v1.ClusterMember
(v14.DeadLetterQueueType)(0), // 126: temporal.server.api.enums.v1.DeadLetterQueueType
(v16.TaskQueueType)(0), // 127: temporal.api.enums.v1.TaskQueueType
(*v12.AllocatedTaskInfo)(nil), // 128: temporal.server.api.persistence.v1.AllocatedTaskInfo
(*v15.SyncReplicationState)(nil), // 129: temporal.server.api.replication.v1.SyncReplicationState
(*v15.WorkflowReplicationMessages)(nil), // 130: temporal.server.api.replication.v1.WorkflowReplicationMessages
(*v110.NamespaceInfo)(nil), // 131: temporal.api.namespace.v1.NamespaceInfo
(*v110.NamespaceConfig)(nil), // 132: temporal.api.namespace.v1.NamespaceConfig
(*v111.NamespaceReplicationConfig)(nil), // 133: temporal.api.replication.v1.NamespaceReplicationConfig
(*v111.FailoverStatus)(nil), // 134: temporal.api.replication.v1.FailoverStatus
(*v112.HistoryDLQKey)(nil), // 135: temporal.server.api.common.v1.HistoryDLQKey
(*v112.HistoryDLQTask)(nil), // 136: temporal.server.api.common.v1.HistoryDLQTask
(*v112.HistoryDLQTaskMetadata)(nil), // 137: temporal.server.api.common.v1.HistoryDLQTaskMetadata
(v14.DLQOperationType)(0), // 138: temporal.server.api.enums.v1.DLQOperationType
(v14.DLQOperationState)(0), // 139: temporal.server.api.enums.v1.DLQOperationState
(v14.HealthState)(0), // 140: temporal.server.api.enums.v1.HealthState
(*v113.ServiceHealthDetail)(nil), // 141: temporal.server.api.health.v1.ServiceHealthDetail
(*v12.VersionedTransition)(nil), // 142: temporal.server.api.persistence.v1.VersionedTransition
(*v11.VersionHistories)(nil), // 143: temporal.server.api.history.v1.VersionHistories
(*v15.VersionedTransitionArtifact)(nil), // 144: temporal.server.api.replication.v1.VersionedTransitionArtifact
(*v114.TaskQueuePartition)(nil), // 145: temporal.server.api.taskqueue.v1.TaskQueuePartition
(*v115.TaskQueueVersionSelection)(nil), // 146: temporal.api.taskqueue.v1.TaskQueueVersionSelection
(*v12.TaskQueueTypeUserData)(nil), // 147: temporal.server.api.persistence.v1.TaskQueueTypeUserData
(v16.IndexedValueType)(0), // 148: temporal.api.enums.v1.IndexedValueType
(*v114.TaskQueueVersionInfoInternal)(nil), // 149: temporal.server.api.taskqueue.v1.TaskQueueVersionInfoInternal
}
var file_temporal_server_api_adminservice_v1_request_response_proto_depIdxs = []int32{
104, // 0: temporal.server.api.adminservice.v1.RebuildMutableStateRequest.execution:type_name -> temporal.api.common.v1.WorkflowExecution
104, // 1: temporal.server.api.adminservice.v1.ImportWorkflowExecutionRequest.execution:type_name -> temporal.api.common.v1.WorkflowExecution
105, // 2: temporal.server.api.adminservice.v1.ImportWorkflowExecutionRequest.history_batches:type_name -> temporal.api.common.v1.DataBlob
106, // 3: temporal.server.api.adminservice.v1.ImportWorkflowExecutionRequest.version_history:type_name -> temporal.server.api.history.v1.VersionHistory
104, // 4: temporal.server.api.adminservice.v1.DescribeMutableStateRequest.execution:type_name -> temporal.api.common.v1.WorkflowExecution
107, // 5: temporal.server.api.adminservice.v1.DescribeMutableStateResponse.cache_mutable_state:type_name -> temporal.server.api.persistence.v1.WorkflowMutableState
107, // 6: temporal.server.api.adminservice.v1.DescribeMutableStateResponse.database_mutable_state:type_name -> temporal.server.api.persistence.v1.WorkflowMutableState
104, // 7: temporal.server.api.adminservice.v1.DescribeHistoryHostRequest.workflow_execution:type_name -> temporal.api.common.v1.WorkflowExecution
108, // 8: temporal.server.api.adminservice.v1.DescribeHistoryHostResponse.namespace_cache:type_name -> temporal.server.api.namespace.v1.NamespaceCacheInfo
109, // 9: temporal.server.api.adminservice.v1.GetShardResponse.shard_info:type_name -> temporal.server.api.persistence.v1.ShardInfo
110, // 10: temporal.server.api.adminservice.v1.ListHistoryTasksRequest.task_range:type_name -> temporal.server.api.history.v1.TaskRange
106, // 0: temporal.server.api.adminservice.v1.RebuildMutableStateRequest.execution:type_name -> temporal.api.common.v1.WorkflowExecution
106, // 1: temporal.server.api.adminservice.v1.ImportWorkflowExecutionRequest.execution:type_name -> temporal.api.common.v1.WorkflowExecution
107, // 2: temporal.server.api.adminservice.v1.ImportWorkflowExecutionRequest.history_batches:type_name -> temporal.api.common.v1.DataBlob
108, // 3: temporal.server.api.adminservice.v1.ImportWorkflowExecutionRequest.version_history:type_name -> temporal.server.api.history.v1.VersionHistory
106, // 4: temporal.server.api.adminservice.v1.DescribeMutableStateRequest.execution:type_name -> temporal.api.common.v1.WorkflowExecution
109, // 5: temporal.server.api.adminservice.v1.DescribeMutableStateResponse.cache_mutable_state:type_name -> temporal.server.api.persistence.v1.WorkflowMutableState
109, // 6: temporal.server.api.adminservice.v1.DescribeMutableStateResponse.database_mutable_state:type_name -> temporal.server.api.persistence.v1.WorkflowMutableState
106, // 7: temporal.server.api.adminservice.v1.DescribeHistoryHostRequest.workflow_execution:type_name -> temporal.api.common.v1.WorkflowExecution
110, // 8: temporal.server.api.adminservice.v1.DescribeHistoryHostResponse.namespace_cache:type_name -> temporal.server.api.namespace.v1.NamespaceCacheInfo
111, // 9: temporal.server.api.adminservice.v1.GetShardResponse.shard_info:type_name -> temporal.server.api.persistence.v1.ShardInfo
112, // 10: temporal.server.api.adminservice.v1.ListHistoryTasksRequest.task_range:type_name -> temporal.server.api.history.v1.TaskRange
15, // 11: temporal.server.api.adminservice.v1.ListHistoryTasksResponse.tasks:type_name -> temporal.server.api.adminservice.v1.Task
111, // 12: temporal.server.api.adminservice.v1.Task.task_type:type_name -> temporal.server.api.enums.v1.TaskType
112, // 13: temporal.server.api.adminservice.v1.Task.fire_time:type_name -> google.protobuf.Timestamp
112, // 14: temporal.server.api.adminservice.v1.RemoveTaskRequest.visibility_time:type_name -> google.protobuf.Timestamp
104, // 15: temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryV2Request.execution:type_name -> temporal.api.common.v1.WorkflowExecution
105, // 16: temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryV2Response.history_batches:type_name -> temporal.api.common.v1.DataBlob
106, // 17: temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryV2Response.version_history:type_name -> temporal.server.api.history.v1.VersionHistory
104, // 18: temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryRequest.execution:type_name -> temporal.api.common.v1.WorkflowExecution
105, // 19: temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryResponse.history_batches:type_name -> temporal.api.common.v1.DataBlob
106, // 20: temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryResponse.version_history:type_name -> temporal.server.api.history.v1.VersionHistory
113, // 21: temporal.server.api.adminservice.v1.GetReplicationMessagesRequest.tokens:type_name -> temporal.server.api.replication.v1.ReplicationToken
94, // 22: temporal.server.api.adminservice.v1.GetReplicationMessagesResponse.shard_messages:type_name -> temporal.server.api.adminservice.v1.GetReplicationMessagesResponse.ShardMessagesEntry
114, // 23: temporal.server.api.adminservice.v1.GetNamespaceReplicationMessagesResponse.messages:type_name -> temporal.server.api.replication.v1.ReplicationMessages
115, // 24: temporal.server.api.adminservice.v1.GetDLQReplicationMessagesRequest.task_infos:type_name -> temporal.server.api.replication.v1.ReplicationTaskInfo
116, // 25: temporal.server.api.adminservice.v1.GetDLQReplicationMessagesResponse.replication_tasks:type_name -> temporal.server.api.replication.v1.ReplicationTask
104, // 26: temporal.server.api.adminservice.v1.ReapplyEventsRequest.workflow_execution:type_name -> temporal.api.common.v1.WorkflowExecution
105, // 27: temporal.server.api.adminservice.v1.ReapplyEventsRequest.events:type_name -> temporal.api.common.v1.DataBlob
95, // 28: temporal.server.api.adminservice.v1.AddSearchAttributesRequest.search_attributes:type_name -> temporal.server.api.adminservice.v1.AddSearchAttributesRequest.SearchAttributesEntry
96, // 29: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.custom_attributes:type_name -> temporal.server.api.adminservice.v1.GetSearchAttributesResponse.CustomAttributesEntry
97, // 30: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.system_attributes:type_name -> temporal.server.api.adminservice.v1.GetSearchAttributesResponse.SystemAttributesEntry
98, // 31: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.mapping:type_name -> temporal.server.api.adminservice.v1.GetSearchAttributesResponse.MappingEntry
117, // 32: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.add_workflow_execution_info:type_name -> temporal.api.workflow.v1.WorkflowExecutionInfo
99, // 33: temporal.server.api.adminservice.v1.DescribeClusterResponse.supported_clients:type_name -> temporal.server.api.adminservice.v1.DescribeClusterResponse.SupportedClientsEntry
118, // 34: temporal.server.api.adminservice.v1.DescribeClusterResponse.membership_info:type_name -> temporal.server.api.cluster.v1.MembershipInfo
119, // 35: temporal.server.api.adminservice.v1.DescribeClusterResponse.version_info:type_name -> temporal.api.version.v1.VersionInfo
100, // 36: temporal.server.api.adminservice.v1.DescribeClusterResponse.tags:type_name -> temporal.server.api.adminservice.v1.DescribeClusterResponse.TagsEntry
120, // 37: temporal.server.api.adminservice.v1.ListClustersResponse.clusters:type_name -> temporal.server.api.persistence.v1.ClusterMetadata
121, // 38: temporal.server.api.adminservice.v1.ListClusterMembersRequest.last_heartbeat_within:type_name -> google.protobuf.Duration
122, // 39: temporal.server.api.adminservice.v1.ListClusterMembersRequest.role:type_name -> temporal.server.api.enums.v1.ClusterMemberRole
112, // 40: temporal.server.api.adminservice.v1.ListClusterMembersRequest.session_started_after_time:type_name -> google.protobuf.Timestamp
123, // 41: temporal.server.api.adminservice.v1.ListClusterMembersResponse.active_members:type_name -> temporal.server.api.cluster.v1.ClusterMember
124, // 42: temporal.server.api.adminservice.v1.GetDLQMessagesRequest.type:type_name -> temporal.server.api.enums.v1.DeadLetterQueueType
124, // 43: temporal.server.api.adminservice.v1.GetDLQMessagesResponse.type:type_name -> temporal.server.api.enums.v1.DeadLetterQueueType
116, // 44: temporal.server.api.adminservice.v1.GetDLQMessagesResponse.replication_tasks:type_name -> temporal.server.api.replication.v1.ReplicationTask
115, // 45: temporal.server.api.adminservice.v1.GetDLQMessagesResponse.replication_tasks_info:type_name -> temporal.server.api.replication.v1.ReplicationTaskInfo
124, // 46: temporal.server.api.adminservice.v1.PurgeDLQMessagesRequest.type:type_name -> temporal.server.api.enums.v1.DeadLetterQueueType
124, // 47: temporal.server.api.adminservice.v1.MergeDLQMessagesRequest.type:type_name -> temporal.server.api.enums.v1.DeadLetterQueueType
104, // 48: temporal.server.api.adminservice.v1.RefreshWorkflowTasksRequest.execution:type_name -> temporal.api.common.v1.WorkflowExecution
125, // 49: temporal.server.api.adminservice.v1.GetTaskQueueTasksRequest.task_queue_type:type_name -> temporal.api.enums.v1.TaskQueueType
126, // 50: temporal.server.api.adminservice.v1.GetTaskQueueTasksResponse.tasks:type_name -> temporal.server.api.persistence.v1.AllocatedTaskInfo
104, // 51: temporal.server.api.adminservice.v1.DeleteWorkflowExecutionRequest.execution:type_name -> temporal.api.common.v1.WorkflowExecution
127, // 52: temporal.server.api.adminservice.v1.StreamWorkflowReplicationMessagesRequest.sync_replication_state:type_name -> temporal.server.api.replication.v1.SyncReplicationState
128, // 53: temporal.server.api.adminservice.v1.StreamWorkflowReplicationMessagesResponse.messages:type_name -> temporal.server.api.replication.v1.WorkflowReplicationMessages
129, // 54: temporal.server.api.adminservice.v1.GetNamespaceResponse.info:type_name -> temporal.api.namespace.v1.NamespaceInfo
130, // 55: temporal.server.api.adminservice.v1.GetNamespaceResponse.config:type_name -> temporal.api.namespace.v1.NamespaceConfig
131, // 56: temporal.server.api.adminservice.v1.GetNamespaceResponse.replication_config:type_name -> temporal.api.replication.v1.NamespaceReplicationConfig
132, // 57: temporal.server.api.adminservice.v1.GetNamespaceResponse.failover_history:type_name -> temporal.api.replication.v1.FailoverStatus
133, // 58: temporal.server.api.adminservice.v1.GetDLQTasksRequest.dlq_key:type_name -> temporal.server.api.common.v1.HistoryDLQKey
134, // 59: temporal.server.api.adminservice.v1.GetDLQTasksResponse.dlq_tasks:type_name -> temporal.server.api.common.v1.HistoryDLQTask
133, // 60: temporal.server.api.adminservice.v1.PurgeDLQTasksRequest.dlq_key:type_name -> temporal.server.api.common.v1.HistoryDLQKey
135, // 61: temporal.server.api.adminservice.v1.PurgeDLQTasksRequest.inclusive_max_task_metadata:type_name -> temporal.server.api.common.v1.HistoryDLQTaskMetadata
133, // 62: temporal.server.api.adminservice.v1.MergeDLQTasksRequest.dlq_key:type_name -> temporal.server.api.common.v1.HistoryDLQKey
135, // 63: temporal.server.api.adminservice.v1.MergeDLQTasksRequest.inclusive_max_task_metadata:type_name -> temporal.server.api.common.v1.HistoryDLQTaskMetadata
133, // 64: temporal.server.api.adminservice.v1.DescribeDLQJobResponse.dlq_key:type_name -> temporal.server.api.common.v1.HistoryDLQKey
136, // 65: temporal.server.api.adminservice.v1.DescribeDLQJobResponse.operation_type:type_name -> temporal.server.api.enums.v1.DLQOperationType
137, // 66: temporal.server.api.adminservice.v1.DescribeDLQJobResponse.operation_state:type_name -> temporal.server.api.enums.v1.DLQOperationState
112, // 67: temporal.server.api.adminservice.v1.DescribeDLQJobResponse.start_time:type_name -> google.protobuf.Timestamp
112, // 68: temporal.server.api.adminservice.v1.DescribeDLQJobResponse.end_time:type_name -> google.protobuf.Timestamp
101, // 69: temporal.server.api.adminservice.v1.AddTasksRequest.tasks:type_name -> temporal.server.api.adminservice.v1.AddTasksRequest.Task
102, // 70: temporal.server.api.adminservice.v1.ListQueuesResponse.queues:type_name -> temporal.server.api.adminservice.v1.ListQueuesResponse.QueueInfo
138, // 71: temporal.server.api.adminservice.v1.DeepHealthCheckResponse.state:type_name -> temporal.server.api.enums.v1.HealthState
139, // 72: temporal.server.api.adminservice.v1.DeepHealthCheckResponse.services:type_name -> temporal.server.api.health.v1.ServiceHealthDetail
104, // 73: temporal.server.api.adminservice.v1.SyncWorkflowStateRequest.execution:type_name -> temporal.api.common.v1.WorkflowExecution
140, // 74: temporal.server.api.adminservice.v1.SyncWorkflowStateRequest.versioned_transition:type_name -> temporal.server.api.persistence.v1.VersionedTransition
141, // 75: temporal.server.api.adminservice.v1.SyncWorkflowStateRequest.version_histories:type_name -> temporal.server.api.history.v1.VersionHistories
142, // 76: temporal.server.api.adminservice.v1.SyncWorkflowStateResponse.versioned_transition_artifact:type_name -> temporal.server.api.replication.v1.VersionedTransitionArtifact
104, // 77: temporal.server.api.adminservice.v1.GenerateLastHistoryReplicationTasksRequest.execution:type_name -> temporal.api.common.v1.WorkflowExecution
143, // 78: temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionRequest.task_queue_partition:type_name -> temporal.server.api.taskqueue.v1.TaskQueuePartition
144, // 79: temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionRequest.build_ids:type_name -> temporal.api.taskqueue.v1.TaskQueueVersionSelection
103, // 80: temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionResponse.versions_info_internal:type_name -> temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionResponse.VersionsInfoInternalEntry
143, // 81: temporal.server.api.adminservice.v1.ForceUnloadTaskQueuePartitionRequest.task_queue_partition:type_name -> temporal.server.api.taskqueue.v1.TaskQueuePartition
104, // 82: temporal.server.api.adminservice.v1.StartAdminBatchOperationRequest.executions:type_name -> temporal.api.common.v1.WorkflowExecution
91, // 83: temporal.server.api.adminservice.v1.StartAdminBatchOperationRequest.refresh_tasks_operation:type_name -> temporal.server.api.adminservice.v1.BatchOperationRefreshTasks
0, // 84: temporal.server.api.adminservice.v1.MigrateScheduleRequest.target:type_name -> temporal.server.api.adminservice.v1.MigrateScheduleRequest.SchedulerTarget
114, // 85: temporal.server.api.adminservice.v1.GetReplicationMessagesResponse.ShardMessagesEntry.value:type_name -> temporal.server.api.replication.v1.ReplicationMessages
145, // 86: temporal.server.api.adminservice.v1.AddSearchAttributesRequest.SearchAttributesEntry.value:type_name -> temporal.api.enums.v1.IndexedValueType
145, // 87: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.CustomAttributesEntry.value:type_name -> temporal.api.enums.v1.IndexedValueType
145, // 88: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.SystemAttributesEntry.value:type_name -> temporal.api.enums.v1.IndexedValueType
105, // 89: temporal.server.api.adminservice.v1.AddTasksRequest.Task.blob:type_name -> temporal.api.common.v1.DataBlob
146, // 90: temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionResponse.VersionsInfoInternalEntry.value:type_name -> temporal.server.api.taskqueue.v1.TaskQueueVersionInfoInternal
91, // [91:91] is the sub-list for method output_type
91, // [91:91] is the sub-list for method input_type
91, // [91:91] is the sub-list for extension type_name
91, // [91:91] is the sub-list for extension extendee
0, // [0:91] is the sub-list for field type_name
113, // 12: temporal.server.api.adminservice.v1.Task.task_type:type_name -> temporal.server.api.enums.v1.TaskType
114, // 13: temporal.server.api.adminservice.v1.Task.fire_time:type_name -> google.protobuf.Timestamp
114, // 14: temporal.server.api.adminservice.v1.RemoveTaskRequest.visibility_time:type_name -> google.protobuf.Timestamp
106, // 15: temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryV2Request.execution:type_name -> temporal.api.common.v1.WorkflowExecution
107, // 16: temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryV2Response.history_batches:type_name -> temporal.api.common.v1.DataBlob
108, // 17: temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryV2Response.version_history:type_name -> temporal.server.api.history.v1.VersionHistory
106, // 18: temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryRequest.execution:type_name -> temporal.api.common.v1.WorkflowExecution
107, // 19: temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryResponse.history_batches:type_name -> temporal.api.common.v1.DataBlob
108, // 20: temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryResponse.version_history:type_name -> temporal.server.api.history.v1.VersionHistory
115, // 21: temporal.server.api.adminservice.v1.GetReplicationMessagesRequest.tokens:type_name -> temporal.server.api.replication.v1.ReplicationToken
96, // 22: temporal.server.api.adminservice.v1.GetReplicationMessagesResponse.shard_messages:type_name -> temporal.server.api.adminservice.v1.GetReplicationMessagesResponse.ShardMessagesEntry
116, // 23: temporal.server.api.adminservice.v1.GetNamespaceReplicationMessagesResponse.messages:type_name -> temporal.server.api.replication.v1.ReplicationMessages
117, // 24: temporal.server.api.adminservice.v1.GetDLQReplicationMessagesRequest.task_infos:type_name -> temporal.server.api.replication.v1.ReplicationTaskInfo
118, // 25: temporal.server.api.adminservice.v1.GetDLQReplicationMessagesResponse.replication_tasks:type_name -> temporal.server.api.replication.v1.ReplicationTask
106, // 26: temporal.server.api.adminservice.v1.ReapplyEventsRequest.workflow_execution:type_name -> temporal.api.common.v1.WorkflowExecution
107, // 27: temporal.server.api.adminservice.v1.ReapplyEventsRequest.events:type_name -> temporal.api.common.v1.DataBlob
97, // 28: temporal.server.api.adminservice.v1.AddSearchAttributesRequest.search_attributes:type_name -> temporal.server.api.adminservice.v1.AddSearchAttributesRequest.SearchAttributesEntry
98, // 29: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.custom_attributes:type_name -> temporal.server.api.adminservice.v1.GetSearchAttributesResponse.CustomAttributesEntry
99, // 30: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.system_attributes:type_name -> temporal.server.api.adminservice.v1.GetSearchAttributesResponse.SystemAttributesEntry
100, // 31: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.mapping:type_name -> temporal.server.api.adminservice.v1.GetSearchAttributesResponse.MappingEntry
119, // 32: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.add_workflow_execution_info:type_name -> temporal.api.workflow.v1.WorkflowExecutionInfo
101, // 33: temporal.server.api.adminservice.v1.DescribeClusterResponse.supported_clients:type_name -> temporal.server.api.adminservice.v1.DescribeClusterResponse.SupportedClientsEntry
120, // 34: temporal.server.api.adminservice.v1.DescribeClusterResponse.membership_info:type_name -> temporal.server.api.cluster.v1.MembershipInfo
121, // 35: temporal.server.api.adminservice.v1.DescribeClusterResponse.version_info:type_name -> temporal.api.version.v1.VersionInfo
102, // 36: temporal.server.api.adminservice.v1.DescribeClusterResponse.tags:type_name -> temporal.server.api.adminservice.v1.DescribeClusterResponse.TagsEntry
122, // 37: temporal.server.api.adminservice.v1.ListClustersResponse.clusters:type_name -> temporal.server.api.persistence.v1.ClusterMetadata
123, // 38: temporal.server.api.adminservice.v1.ListClusterMembersRequest.last_heartbeat_within:type_name -> google.protobuf.Duration
124, // 39: temporal.server.api.adminservice.v1.ListClusterMembersRequest.role:type_name -> temporal.server.api.enums.v1.ClusterMemberRole
114, // 40: temporal.server.api.adminservice.v1.ListClusterMembersRequest.session_started_after_time:type_name -> google.protobuf.Timestamp
125, // 41: temporal.server.api.adminservice.v1.ListClusterMembersResponse.active_members:type_name -> temporal.server.api.cluster.v1.ClusterMember
126, // 42: temporal.server.api.adminservice.v1.GetDLQMessagesRequest.type:type_name -> temporal.server.api.enums.v1.DeadLetterQueueType
126, // 43: temporal.server.api.adminservice.v1.GetDLQMessagesResponse.type:type_name -> temporal.server.api.enums.v1.DeadLetterQueueType
118, // 44: temporal.server.api.adminservice.v1.GetDLQMessagesResponse.replication_tasks:type_name -> temporal.server.api.replication.v1.ReplicationTask
117, // 45: temporal.server.api.adminservice.v1.GetDLQMessagesResponse.replication_tasks_info:type_name -> temporal.server.api.replication.v1.ReplicationTaskInfo
126, // 46: temporal.server.api.adminservice.v1.PurgeDLQMessagesRequest.type:type_name -> temporal.server.api.enums.v1.DeadLetterQueueType
126, // 47: temporal.server.api.adminservice.v1.MergeDLQMessagesRequest.type:type_name -> temporal.server.api.enums.v1.DeadLetterQueueType
106, // 48: temporal.server.api.adminservice.v1.RefreshWorkflowTasksRequest.execution:type_name -> temporal.api.common.v1.WorkflowExecution
127, // 49: temporal.server.api.adminservice.v1.GetTaskQueueTasksRequest.task_queue_type:type_name -> temporal.api.enums.v1.TaskQueueType
128, // 50: temporal.server.api.adminservice.v1.GetTaskQueueTasksResponse.tasks:type_name -> temporal.server.api.persistence.v1.AllocatedTaskInfo
106, // 51: temporal.server.api.adminservice.v1.DeleteWorkflowExecutionRequest.execution:type_name -> temporal.api.common.v1.WorkflowExecution
129, // 52: temporal.server.api.adminservice.v1.StreamWorkflowReplicationMessagesRequest.sync_replication_state:type_name -> temporal.server.api.replication.v1.SyncReplicationState
130, // 53: temporal.server.api.adminservice.v1.StreamWorkflowReplicationMessagesResponse.messages:type_name -> temporal.server.api.replication.v1.WorkflowReplicationMessages
131, // 54: temporal.server.api.adminservice.v1.GetNamespaceResponse.info:type_name -> temporal.api.namespace.v1.NamespaceInfo
132, // 55: temporal.server.api.adminservice.v1.GetNamespaceResponse.config:type_name -> temporal.api.namespace.v1.NamespaceConfig
133, // 56: temporal.server.api.adminservice.v1.GetNamespaceResponse.replication_config:type_name -> temporal.api.replication.v1.NamespaceReplicationConfig
134, // 57: temporal.server.api.adminservice.v1.GetNamespaceResponse.failover_history:type_name -> temporal.api.replication.v1.FailoverStatus
135, // 58: temporal.server.api.adminservice.v1.GetDLQTasksRequest.dlq_key:type_name -> temporal.server.api.common.v1.HistoryDLQKey
136, // 59: temporal.server.api.adminservice.v1.GetDLQTasksResponse.dlq_tasks:type_name -> temporal.server.api.common.v1.HistoryDLQTask
135, // 60: temporal.server.api.adminservice.v1.PurgeDLQTasksRequest.dlq_key:type_name -> temporal.server.api.common.v1.HistoryDLQKey
137, // 61: temporal.server.api.adminservice.v1.PurgeDLQTasksRequest.inclusive_max_task_metadata:type_name -> temporal.server.api.common.v1.HistoryDLQTaskMetadata
135, // 62: temporal.server.api.adminservice.v1.MergeDLQTasksRequest.dlq_key:type_name -> temporal.server.api.common.v1.HistoryDLQKey
137, // 63: temporal.server.api.adminservice.v1.MergeDLQTasksRequest.inclusive_max_task_metadata:type_name -> temporal.server.api.common.v1.HistoryDLQTaskMetadata
135, // 64: temporal.server.api.adminservice.v1.DescribeDLQJobResponse.dlq_key:type_name -> temporal.server.api.common.v1.HistoryDLQKey
138, // 65: temporal.server.api.adminservice.v1.DescribeDLQJobResponse.operation_type:type_name -> temporal.server.api.enums.v1.DLQOperationType
139, // 66: temporal.server.api.adminservice.v1.DescribeDLQJobResponse.operation_state:type_name -> temporal.server.api.enums.v1.DLQOperationState
114, // 67: temporal.server.api.adminservice.v1.DescribeDLQJobResponse.start_time:type_name -> google.protobuf.Timestamp
114, // 68: temporal.server.api.adminservice.v1.DescribeDLQJobResponse.end_time:type_name -> google.protobuf.Timestamp
103, // 69: temporal.server.api.adminservice.v1.AddTasksRequest.tasks:type_name -> temporal.server.api.adminservice.v1.AddTasksRequest.Task
104, // 70: temporal.server.api.adminservice.v1.ListQueuesResponse.queues:type_name -> temporal.server.api.adminservice.v1.ListQueuesResponse.QueueInfo
140, // 71: temporal.server.api.adminservice.v1.DeepHealthCheckResponse.state:type_name -> temporal.server.api.enums.v1.HealthState
141, // 72: temporal.server.api.adminservice.v1.DeepHealthCheckResponse.services:type_name -> temporal.server.api.health.v1.ServiceHealthDetail
106, // 73: temporal.server.api.adminservice.v1.SyncWorkflowStateRequest.execution:type_name -> temporal.api.common.v1.WorkflowExecution
142, // 74: temporal.server.api.adminservice.v1.SyncWorkflowStateRequest.versioned_transition:type_name -> temporal.server.api.persistence.v1.VersionedTransition
143, // 75: temporal.server.api.adminservice.v1.SyncWorkflowStateRequest.version_histories:type_name -> temporal.server.api.history.v1.VersionHistories
144, // 76: temporal.server.api.adminservice.v1.SyncWorkflowStateResponse.versioned_transition_artifact:type_name -> temporal.server.api.replication.v1.VersionedTransitionArtifact
106, // 77: temporal.server.api.adminservice.v1.GenerateLastHistoryReplicationTasksRequest.execution:type_name -> temporal.api.common.v1.WorkflowExecution
145, // 78: temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionRequest.task_queue_partition:type_name -> temporal.server.api.taskqueue.v1.TaskQueuePartition
146, // 79: temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionRequest.build_ids:type_name -> temporal.api.taskqueue.v1.TaskQueueVersionSelection
105, // 80: temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionResponse.versions_info_internal:type_name -> temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionResponse.VersionsInfoInternalEntry
145, // 81: temporal.server.api.adminservice.v1.ForceUnloadTaskQueuePartitionRequest.task_queue_partition:type_name -> temporal.server.api.taskqueue.v1.TaskQueuePartition
127, // 82: temporal.server.api.adminservice.v1.GetTaskQueueUserDataRequest.task_queue_type:type_name -> temporal.api.enums.v1.TaskQueueType
147, // 83: temporal.server.api.adminservice.v1.GetTaskQueueUserDataResponse.user_data:type_name -> temporal.server.api.persistence.v1.TaskQueueTypeUserData
106, // 84: temporal.server.api.adminservice.v1.StartAdminBatchOperationRequest.executions:type_name -> temporal.api.common.v1.WorkflowExecution
93, // 85: temporal.server.api.adminservice.v1.StartAdminBatchOperationRequest.refresh_tasks_operation:type_name -> temporal.server.api.adminservice.v1.BatchOperationRefreshTasks
0, // 86: temporal.server.api.adminservice.v1.MigrateScheduleRequest.target:type_name -> temporal.server.api.adminservice.v1.MigrateScheduleRequest.SchedulerTarget
116, // 87: temporal.server.api.adminservice.v1.GetReplicationMessagesResponse.ShardMessagesEntry.value:type_name -> temporal.server.api.replication.v1.ReplicationMessages
148, // 88: temporal.server.api.adminservice.v1.AddSearchAttributesRequest.SearchAttributesEntry.value:type_name -> temporal.api.enums.v1.IndexedValueType
148, // 89: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.CustomAttributesEntry.value:type_name -> temporal.api.enums.v1.IndexedValueType
148, // 90: temporal.server.api.adminservice.v1.GetSearchAttributesResponse.SystemAttributesEntry.value:type_name -> temporal.api.enums.v1.IndexedValueType
107, // 91: temporal.server.api.adminservice.v1.AddTasksRequest.Task.blob:type_name -> temporal.api.common.v1.DataBlob
149, // 92: temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionResponse.VersionsInfoInternalEntry.value:type_name -> temporal.server.api.taskqueue.v1.TaskQueueVersionInfoInternal
93, // [93:93] is the sub-list for method output_type
93, // [93:93] is the sub-list for method input_type
93, // [93:93] is the sub-list for extension type_name
93, // [93:93] is the sub-list for extension extendee
0, // [0:93] is the sub-list for field type_name
}
func init() { file_temporal_server_api_adminservice_v1_request_response_proto_init() }
@@ -6490,7 +6625,7 @@ func file_temporal_server_api_adminservice_v1_request_response_proto_init() {
(*GetNamespaceRequest_Namespace)(nil),
(*GetNamespaceRequest_Id)(nil),
}
file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[88].OneofWrappers = []any{
file_temporal_server_api_adminservice_v1_request_response_proto_msgTypes[90].OneofWrappers = []any{
(*StartAdminBatchOperationRequest_RefreshTasksOperation)(nil),
}
type x struct{}
@@ -6499,7 +6634,7 @@ func file_temporal_server_api_adminservice_v1_request_response_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: unsafe.Slice(unsafe.StringData(file_temporal_server_api_adminservice_v1_request_response_proto_rawDesc), len(file_temporal_server_api_adminservice_v1_request_response_proto_rawDesc)),
NumEnums: 1,
NumMessages: 103,
NumMessages: 105,
NumExtensions: 0,
NumServices: 0,
},

View File

@@ -26,7 +26,7 @@ var File_temporal_server_api_adminservice_v1_service_proto protoreflect.FileDesc
const file_temporal_server_api_adminservice_v1_service_proto_rawDesc = "" +
"\n" +
"1temporal/server/api/adminservice/v1/service.proto\x12#temporal.server.api.adminservice.v1\x1a:temporal/server/api/adminservice/v1/request_response.proto\x1a0temporal/server/api/common/v1/api_category.proto2\x8d9\n" +
"1temporal/server/api/adminservice/v1/service.proto\x12#temporal.server.api.adminservice.v1\x1a:temporal/server/api/adminservice/v1/request_response.proto\x1a0temporal/server/api/common/v1/api_category.proto2\xb3:\n" +
"\fAdminService\x12\xa0\x01\n" +
"\x13RebuildMutableState\x12?.temporal.server.api.adminservice.v1.RebuildMutableStateRequest\x1a@.temporal.server.api.adminservice.v1.RebuildMutableStateResponse\"\x06\x8a\xb5\x18\x02\b\x03\x12\xac\x01\n" +
"\x17ImportWorkflowExecution\x12C.temporal.server.api.adminservice.v1.ImportWorkflowExecutionRequest\x1aD.temporal.server.api.adminservice.v1.ImportWorkflowExecutionResponse\"\x06\x8a\xb5\x18\x02\b\x03\x12\xa3\x01\n" +
@@ -74,7 +74,8 @@ const file_temporal_server_api_adminservice_v1_service_proto_rawDesc = "" +
"\x11SyncWorkflowState\x12=.temporal.server.api.adminservice.v1.SyncWorkflowStateRequest\x1a>.temporal.server.api.adminservice.v1.SyncWorkflowStateResponse\"\x06\x8a\xb5\x18\x02\b\x03\x12\xd0\x01\n" +
"#GenerateLastHistoryReplicationTasks\x12O.temporal.server.api.adminservice.v1.GenerateLastHistoryReplicationTasksRequest\x1aP.temporal.server.api.adminservice.v1.GenerateLastHistoryReplicationTasksResponse\"\x06\x8a\xb5\x18\x02\b\x03\x12\xb5\x01\n" +
"\x1aDescribeTaskQueuePartition\x12F.temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionRequest\x1aG.temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionResponse\"\x06\x8a\xb5\x18\x02\b\x03\x12\xbe\x01\n" +
"\x1dForceUnloadTaskQueuePartition\x12I.temporal.server.api.adminservice.v1.ForceUnloadTaskQueuePartitionRequest\x1aJ.temporal.server.api.adminservice.v1.ForceUnloadTaskQueuePartitionResponse\"\x06\x8a\xb5\x18\x02\b\x03\x12\x94\x01\n" +
"\x1dForceUnloadTaskQueuePartition\x12I.temporal.server.api.adminservice.v1.ForceUnloadTaskQueuePartitionRequest\x1aJ.temporal.server.api.adminservice.v1.ForceUnloadTaskQueuePartitionResponse\"\x06\x8a\xb5\x18\x02\b\x03\x12\xa3\x01\n" +
"\x14GetTaskQueueUserData\x12@.temporal.server.api.adminservice.v1.GetTaskQueueUserDataRequest\x1aA.temporal.server.api.adminservice.v1.GetTaskQueueUserDataResponse\"\x06\x8a\xb5\x18\x02\b\x03\x12\x94\x01\n" +
"\x0fMigrateSchedule\x12;.temporal.server.api.adminservice.v1.MigrateScheduleRequest\x1a<.temporal.server.api.adminservice.v1.MigrateScheduleResponse\"\x06\x8a\xb5\x18\x02\b\x03B8Z6go.temporal.io/server/api/adminservice/v1;adminserviceb\x06proto3"
var file_temporal_server_api_adminservice_v1_service_proto_goTypes = []any{
@@ -122,52 +123,54 @@ var file_temporal_server_api_adminservice_v1_service_proto_goTypes = []any{
(*GenerateLastHistoryReplicationTasksRequest)(nil), // 41: temporal.server.api.adminservice.v1.GenerateLastHistoryReplicationTasksRequest
(*DescribeTaskQueuePartitionRequest)(nil), // 42: temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionRequest
(*ForceUnloadTaskQueuePartitionRequest)(nil), // 43: temporal.server.api.adminservice.v1.ForceUnloadTaskQueuePartitionRequest
(*MigrateScheduleRequest)(nil), // 44: temporal.server.api.adminservice.v1.MigrateScheduleRequest
(*RebuildMutableStateResponse)(nil), // 45: temporal.server.api.adminservice.v1.RebuildMutableStateResponse
(*ImportWorkflowExecutionResponse)(nil), // 46: temporal.server.api.adminservice.v1.ImportWorkflowExecutionResponse
(*DescribeMutableStateResponse)(nil), // 47: temporal.server.api.adminservice.v1.DescribeMutableStateResponse
(*DescribeHistoryHostResponse)(nil), // 48: temporal.server.api.adminservice.v1.DescribeHistoryHostResponse
(*GetShardResponse)(nil), // 49: temporal.server.api.adminservice.v1.GetShardResponse
(*CloseShardResponse)(nil), // 50: temporal.server.api.adminservice.v1.CloseShardResponse
(*ListHistoryTasksResponse)(nil), // 51: temporal.server.api.adminservice.v1.ListHistoryTasksResponse
(*RemoveTaskResponse)(nil), // 52: temporal.server.api.adminservice.v1.RemoveTaskResponse
(*GetWorkflowExecutionRawHistoryV2Response)(nil), // 53: temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryV2Response
(*GetWorkflowExecutionRawHistoryResponse)(nil), // 54: temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryResponse
(*GetReplicationMessagesResponse)(nil), // 55: temporal.server.api.adminservice.v1.GetReplicationMessagesResponse
(*GetNamespaceReplicationMessagesResponse)(nil), // 56: temporal.server.api.adminservice.v1.GetNamespaceReplicationMessagesResponse
(*GetDLQReplicationMessagesResponse)(nil), // 57: temporal.server.api.adminservice.v1.GetDLQReplicationMessagesResponse
(*ReapplyEventsResponse)(nil), // 58: temporal.server.api.adminservice.v1.ReapplyEventsResponse
(*AddSearchAttributesResponse)(nil), // 59: temporal.server.api.adminservice.v1.AddSearchAttributesResponse
(*RemoveSearchAttributesResponse)(nil), // 60: temporal.server.api.adminservice.v1.RemoveSearchAttributesResponse
(*GetSearchAttributesResponse)(nil), // 61: temporal.server.api.adminservice.v1.GetSearchAttributesResponse
(*DescribeClusterResponse)(nil), // 62: temporal.server.api.adminservice.v1.DescribeClusterResponse
(*ListClustersResponse)(nil), // 63: temporal.server.api.adminservice.v1.ListClustersResponse
(*ListClusterMembersResponse)(nil), // 64: temporal.server.api.adminservice.v1.ListClusterMembersResponse
(*AddOrUpdateRemoteClusterResponse)(nil), // 65: temporal.server.api.adminservice.v1.AddOrUpdateRemoteClusterResponse
(*RemoveRemoteClusterResponse)(nil), // 66: temporal.server.api.adminservice.v1.RemoveRemoteClusterResponse
(*GetDLQMessagesResponse)(nil), // 67: temporal.server.api.adminservice.v1.GetDLQMessagesResponse
(*PurgeDLQMessagesResponse)(nil), // 68: temporal.server.api.adminservice.v1.PurgeDLQMessagesResponse
(*MergeDLQMessagesResponse)(nil), // 69: temporal.server.api.adminservice.v1.MergeDLQMessagesResponse
(*RefreshWorkflowTasksResponse)(nil), // 70: temporal.server.api.adminservice.v1.RefreshWorkflowTasksResponse
(*StartAdminBatchOperationResponse)(nil), // 71: temporal.server.api.adminservice.v1.StartAdminBatchOperationResponse
(*ResendReplicationTasksResponse)(nil), // 72: temporal.server.api.adminservice.v1.ResendReplicationTasksResponse
(*GetTaskQueueTasksResponse)(nil), // 73: temporal.server.api.adminservice.v1.GetTaskQueueTasksResponse
(*DeleteWorkflowExecutionResponse)(nil), // 74: temporal.server.api.adminservice.v1.DeleteWorkflowExecutionResponse
(*StreamWorkflowReplicationMessagesResponse)(nil), // 75: temporal.server.api.adminservice.v1.StreamWorkflowReplicationMessagesResponse
(*GetNamespaceResponse)(nil), // 76: temporal.server.api.adminservice.v1.GetNamespaceResponse
(*GetDLQTasksResponse)(nil), // 77: temporal.server.api.adminservice.v1.GetDLQTasksResponse
(*PurgeDLQTasksResponse)(nil), // 78: temporal.server.api.adminservice.v1.PurgeDLQTasksResponse
(*MergeDLQTasksResponse)(nil), // 79: temporal.server.api.adminservice.v1.MergeDLQTasksResponse
(*DescribeDLQJobResponse)(nil), // 80: temporal.server.api.adminservice.v1.DescribeDLQJobResponse
(*CancelDLQJobResponse)(nil), // 81: temporal.server.api.adminservice.v1.CancelDLQJobResponse
(*AddTasksResponse)(nil), // 82: temporal.server.api.adminservice.v1.AddTasksResponse
(*ListQueuesResponse)(nil), // 83: temporal.server.api.adminservice.v1.ListQueuesResponse
(*DeepHealthCheckResponse)(nil), // 84: temporal.server.api.adminservice.v1.DeepHealthCheckResponse
(*SyncWorkflowStateResponse)(nil), // 85: temporal.server.api.adminservice.v1.SyncWorkflowStateResponse
(*GenerateLastHistoryReplicationTasksResponse)(nil), // 86: temporal.server.api.adminservice.v1.GenerateLastHistoryReplicationTasksResponse
(*DescribeTaskQueuePartitionResponse)(nil), // 87: temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionResponse
(*ForceUnloadTaskQueuePartitionResponse)(nil), // 88: temporal.server.api.adminservice.v1.ForceUnloadTaskQueuePartitionResponse
(*MigrateScheduleResponse)(nil), // 89: temporal.server.api.adminservice.v1.MigrateScheduleResponse
(*GetTaskQueueUserDataRequest)(nil), // 44: temporal.server.api.adminservice.v1.GetTaskQueueUserDataRequest
(*MigrateScheduleRequest)(nil), // 45: temporal.server.api.adminservice.v1.MigrateScheduleRequest
(*RebuildMutableStateResponse)(nil), // 46: temporal.server.api.adminservice.v1.RebuildMutableStateResponse
(*ImportWorkflowExecutionResponse)(nil), // 47: temporal.server.api.adminservice.v1.ImportWorkflowExecutionResponse
(*DescribeMutableStateResponse)(nil), // 48: temporal.server.api.adminservice.v1.DescribeMutableStateResponse
(*DescribeHistoryHostResponse)(nil), // 49: temporal.server.api.adminservice.v1.DescribeHistoryHostResponse
(*GetShardResponse)(nil), // 50: temporal.server.api.adminservice.v1.GetShardResponse
(*CloseShardResponse)(nil), // 51: temporal.server.api.adminservice.v1.CloseShardResponse
(*ListHistoryTasksResponse)(nil), // 52: temporal.server.api.adminservice.v1.ListHistoryTasksResponse
(*RemoveTaskResponse)(nil), // 53: temporal.server.api.adminservice.v1.RemoveTaskResponse
(*GetWorkflowExecutionRawHistoryV2Response)(nil), // 54: temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryV2Response
(*GetWorkflowExecutionRawHistoryResponse)(nil), // 55: temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryResponse
(*GetReplicationMessagesResponse)(nil), // 56: temporal.server.api.adminservice.v1.GetReplicationMessagesResponse
(*GetNamespaceReplicationMessagesResponse)(nil), // 57: temporal.server.api.adminservice.v1.GetNamespaceReplicationMessagesResponse
(*GetDLQReplicationMessagesResponse)(nil), // 58: temporal.server.api.adminservice.v1.GetDLQReplicationMessagesResponse
(*ReapplyEventsResponse)(nil), // 59: temporal.server.api.adminservice.v1.ReapplyEventsResponse
(*AddSearchAttributesResponse)(nil), // 60: temporal.server.api.adminservice.v1.AddSearchAttributesResponse
(*RemoveSearchAttributesResponse)(nil), // 61: temporal.server.api.adminservice.v1.RemoveSearchAttributesResponse
(*GetSearchAttributesResponse)(nil), // 62: temporal.server.api.adminservice.v1.GetSearchAttributesResponse
(*DescribeClusterResponse)(nil), // 63: temporal.server.api.adminservice.v1.DescribeClusterResponse
(*ListClustersResponse)(nil), // 64: temporal.server.api.adminservice.v1.ListClustersResponse
(*ListClusterMembersResponse)(nil), // 65: temporal.server.api.adminservice.v1.ListClusterMembersResponse
(*AddOrUpdateRemoteClusterResponse)(nil), // 66: temporal.server.api.adminservice.v1.AddOrUpdateRemoteClusterResponse
(*RemoveRemoteClusterResponse)(nil), // 67: temporal.server.api.adminservice.v1.RemoveRemoteClusterResponse
(*GetDLQMessagesResponse)(nil), // 68: temporal.server.api.adminservice.v1.GetDLQMessagesResponse
(*PurgeDLQMessagesResponse)(nil), // 69: temporal.server.api.adminservice.v1.PurgeDLQMessagesResponse
(*MergeDLQMessagesResponse)(nil), // 70: temporal.server.api.adminservice.v1.MergeDLQMessagesResponse
(*RefreshWorkflowTasksResponse)(nil), // 71: temporal.server.api.adminservice.v1.RefreshWorkflowTasksResponse
(*StartAdminBatchOperationResponse)(nil), // 72: temporal.server.api.adminservice.v1.StartAdminBatchOperationResponse
(*ResendReplicationTasksResponse)(nil), // 73: temporal.server.api.adminservice.v1.ResendReplicationTasksResponse
(*GetTaskQueueTasksResponse)(nil), // 74: temporal.server.api.adminservice.v1.GetTaskQueueTasksResponse
(*DeleteWorkflowExecutionResponse)(nil), // 75: temporal.server.api.adminservice.v1.DeleteWorkflowExecutionResponse
(*StreamWorkflowReplicationMessagesResponse)(nil), // 76: temporal.server.api.adminservice.v1.StreamWorkflowReplicationMessagesResponse
(*GetNamespaceResponse)(nil), // 77: temporal.server.api.adminservice.v1.GetNamespaceResponse
(*GetDLQTasksResponse)(nil), // 78: temporal.server.api.adminservice.v1.GetDLQTasksResponse
(*PurgeDLQTasksResponse)(nil), // 79: temporal.server.api.adminservice.v1.PurgeDLQTasksResponse
(*MergeDLQTasksResponse)(nil), // 80: temporal.server.api.adminservice.v1.MergeDLQTasksResponse
(*DescribeDLQJobResponse)(nil), // 81: temporal.server.api.adminservice.v1.DescribeDLQJobResponse
(*CancelDLQJobResponse)(nil), // 82: temporal.server.api.adminservice.v1.CancelDLQJobResponse
(*AddTasksResponse)(nil), // 83: temporal.server.api.adminservice.v1.AddTasksResponse
(*ListQueuesResponse)(nil), // 84: temporal.server.api.adminservice.v1.ListQueuesResponse
(*DeepHealthCheckResponse)(nil), // 85: temporal.server.api.adminservice.v1.DeepHealthCheckResponse
(*SyncWorkflowStateResponse)(nil), // 86: temporal.server.api.adminservice.v1.SyncWorkflowStateResponse
(*GenerateLastHistoryReplicationTasksResponse)(nil), // 87: temporal.server.api.adminservice.v1.GenerateLastHistoryReplicationTasksResponse
(*DescribeTaskQueuePartitionResponse)(nil), // 88: temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionResponse
(*ForceUnloadTaskQueuePartitionResponse)(nil), // 89: temporal.server.api.adminservice.v1.ForceUnloadTaskQueuePartitionResponse
(*GetTaskQueueUserDataResponse)(nil), // 90: temporal.server.api.adminservice.v1.GetTaskQueueUserDataResponse
(*MigrateScheduleResponse)(nil), // 91: temporal.server.api.adminservice.v1.MigrateScheduleResponse
}
var file_temporal_server_api_adminservice_v1_service_proto_depIdxs = []int32{
0, // 0: temporal.server.api.adminservice.v1.AdminService.RebuildMutableState:input_type -> temporal.server.api.adminservice.v1.RebuildMutableStateRequest
@@ -214,54 +217,56 @@ var file_temporal_server_api_adminservice_v1_service_proto_depIdxs = []int32{
41, // 41: temporal.server.api.adminservice.v1.AdminService.GenerateLastHistoryReplicationTasks:input_type -> temporal.server.api.adminservice.v1.GenerateLastHistoryReplicationTasksRequest
42, // 42: temporal.server.api.adminservice.v1.AdminService.DescribeTaskQueuePartition:input_type -> temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionRequest
43, // 43: temporal.server.api.adminservice.v1.AdminService.ForceUnloadTaskQueuePartition:input_type -> temporal.server.api.adminservice.v1.ForceUnloadTaskQueuePartitionRequest
44, // 44: temporal.server.api.adminservice.v1.AdminService.MigrateSchedule:input_type -> temporal.server.api.adminservice.v1.MigrateScheduleRequest
45, // 45: temporal.server.api.adminservice.v1.AdminService.RebuildMutableState:output_type -> temporal.server.api.adminservice.v1.RebuildMutableStateResponse
46, // 46: temporal.server.api.adminservice.v1.AdminService.ImportWorkflowExecution:output_type -> temporal.server.api.adminservice.v1.ImportWorkflowExecutionResponse
47, // 47: temporal.server.api.adminservice.v1.AdminService.DescribeMutableState:output_type -> temporal.server.api.adminservice.v1.DescribeMutableStateResponse
48, // 48: temporal.server.api.adminservice.v1.AdminService.DescribeHistoryHost:output_type -> temporal.server.api.adminservice.v1.DescribeHistoryHostResponse
49, // 49: temporal.server.api.adminservice.v1.AdminService.GetShard:output_type -> temporal.server.api.adminservice.v1.GetShardResponse
50, // 50: temporal.server.api.adminservice.v1.AdminService.CloseShard:output_type -> temporal.server.api.adminservice.v1.CloseShardResponse
51, // 51: temporal.server.api.adminservice.v1.AdminService.ListHistoryTasks:output_type -> temporal.server.api.adminservice.v1.ListHistoryTasksResponse
52, // 52: temporal.server.api.adminservice.v1.AdminService.RemoveTask:output_type -> temporal.server.api.adminservice.v1.RemoveTaskResponse
53, // 53: temporal.server.api.adminservice.v1.AdminService.GetWorkflowExecutionRawHistoryV2:output_type -> temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryV2Response
54, // 54: temporal.server.api.adminservice.v1.AdminService.GetWorkflowExecutionRawHistory:output_type -> temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryResponse
55, // 55: temporal.server.api.adminservice.v1.AdminService.GetReplicationMessages:output_type -> temporal.server.api.adminservice.v1.GetReplicationMessagesResponse
56, // 56: temporal.server.api.adminservice.v1.AdminService.GetNamespaceReplicationMessages:output_type -> temporal.server.api.adminservice.v1.GetNamespaceReplicationMessagesResponse
57, // 57: temporal.server.api.adminservice.v1.AdminService.GetDLQReplicationMessages:output_type -> temporal.server.api.adminservice.v1.GetDLQReplicationMessagesResponse
58, // 58: temporal.server.api.adminservice.v1.AdminService.ReapplyEvents:output_type -> temporal.server.api.adminservice.v1.ReapplyEventsResponse
59, // 59: temporal.server.api.adminservice.v1.AdminService.AddSearchAttributes:output_type -> temporal.server.api.adminservice.v1.AddSearchAttributesResponse
60, // 60: temporal.server.api.adminservice.v1.AdminService.RemoveSearchAttributes:output_type -> temporal.server.api.adminservice.v1.RemoveSearchAttributesResponse
61, // 61: temporal.server.api.adminservice.v1.AdminService.GetSearchAttributes:output_type -> temporal.server.api.adminservice.v1.GetSearchAttributesResponse
62, // 62: temporal.server.api.adminservice.v1.AdminService.DescribeCluster:output_type -> temporal.server.api.adminservice.v1.DescribeClusterResponse
63, // 63: temporal.server.api.adminservice.v1.AdminService.ListClusters:output_type -> temporal.server.api.adminservice.v1.ListClustersResponse
64, // 64: temporal.server.api.adminservice.v1.AdminService.ListClusterMembers:output_type -> temporal.server.api.adminservice.v1.ListClusterMembersResponse
65, // 65: temporal.server.api.adminservice.v1.AdminService.AddOrUpdateRemoteCluster:output_type -> temporal.server.api.adminservice.v1.AddOrUpdateRemoteClusterResponse
66, // 66: temporal.server.api.adminservice.v1.AdminService.RemoveRemoteCluster:output_type -> temporal.server.api.adminservice.v1.RemoveRemoteClusterResponse
67, // 67: temporal.server.api.adminservice.v1.AdminService.GetDLQMessages:output_type -> temporal.server.api.adminservice.v1.GetDLQMessagesResponse
68, // 68: temporal.server.api.adminservice.v1.AdminService.PurgeDLQMessages:output_type -> temporal.server.api.adminservice.v1.PurgeDLQMessagesResponse
69, // 69: temporal.server.api.adminservice.v1.AdminService.MergeDLQMessages:output_type -> temporal.server.api.adminservice.v1.MergeDLQMessagesResponse
70, // 70: temporal.server.api.adminservice.v1.AdminService.RefreshWorkflowTasks:output_type -> temporal.server.api.adminservice.v1.RefreshWorkflowTasksResponse
71, // 71: temporal.server.api.adminservice.v1.AdminService.StartAdminBatchOperation:output_type -> temporal.server.api.adminservice.v1.StartAdminBatchOperationResponse
72, // 72: temporal.server.api.adminservice.v1.AdminService.ResendReplicationTasks:output_type -> temporal.server.api.adminservice.v1.ResendReplicationTasksResponse
73, // 73: temporal.server.api.adminservice.v1.AdminService.GetTaskQueueTasks:output_type -> temporal.server.api.adminservice.v1.GetTaskQueueTasksResponse
74, // 74: temporal.server.api.adminservice.v1.AdminService.DeleteWorkflowExecution:output_type -> temporal.server.api.adminservice.v1.DeleteWorkflowExecutionResponse
75, // 75: temporal.server.api.adminservice.v1.AdminService.StreamWorkflowReplicationMessages:output_type -> temporal.server.api.adminservice.v1.StreamWorkflowReplicationMessagesResponse
76, // 76: temporal.server.api.adminservice.v1.AdminService.GetNamespace:output_type -> temporal.server.api.adminservice.v1.GetNamespaceResponse
77, // 77: temporal.server.api.adminservice.v1.AdminService.GetDLQTasks:output_type -> temporal.server.api.adminservice.v1.GetDLQTasksResponse
78, // 78: temporal.server.api.adminservice.v1.AdminService.PurgeDLQTasks:output_type -> temporal.server.api.adminservice.v1.PurgeDLQTasksResponse
79, // 79: temporal.server.api.adminservice.v1.AdminService.MergeDLQTasks:output_type -> temporal.server.api.adminservice.v1.MergeDLQTasksResponse
80, // 80: temporal.server.api.adminservice.v1.AdminService.DescribeDLQJob:output_type -> temporal.server.api.adminservice.v1.DescribeDLQJobResponse
81, // 81: temporal.server.api.adminservice.v1.AdminService.CancelDLQJob:output_type -> temporal.server.api.adminservice.v1.CancelDLQJobResponse
82, // 82: temporal.server.api.adminservice.v1.AdminService.AddTasks:output_type -> temporal.server.api.adminservice.v1.AddTasksResponse
83, // 83: temporal.server.api.adminservice.v1.AdminService.ListQueues:output_type -> temporal.server.api.adminservice.v1.ListQueuesResponse
84, // 84: temporal.server.api.adminservice.v1.AdminService.DeepHealthCheck:output_type -> temporal.server.api.adminservice.v1.DeepHealthCheckResponse
85, // 85: temporal.server.api.adminservice.v1.AdminService.SyncWorkflowState:output_type -> temporal.server.api.adminservice.v1.SyncWorkflowStateResponse
86, // 86: temporal.server.api.adminservice.v1.AdminService.GenerateLastHistoryReplicationTasks:output_type -> temporal.server.api.adminservice.v1.GenerateLastHistoryReplicationTasksResponse
87, // 87: temporal.server.api.adminservice.v1.AdminService.DescribeTaskQueuePartition:output_type -> temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionResponse
88, // 88: temporal.server.api.adminservice.v1.AdminService.ForceUnloadTaskQueuePartition:output_type -> temporal.server.api.adminservice.v1.ForceUnloadTaskQueuePartitionResponse
89, // 89: temporal.server.api.adminservice.v1.AdminService.MigrateSchedule:output_type -> temporal.server.api.adminservice.v1.MigrateScheduleResponse
45, // [45:90] is the sub-list for method output_type
0, // [0:45] is the sub-list for method input_type
44, // 44: temporal.server.api.adminservice.v1.AdminService.GetTaskQueueUserData:input_type -> temporal.server.api.adminservice.v1.GetTaskQueueUserDataRequest
45, // 45: temporal.server.api.adminservice.v1.AdminService.MigrateSchedule:input_type -> temporal.server.api.adminservice.v1.MigrateScheduleRequest
46, // 46: temporal.server.api.adminservice.v1.AdminService.RebuildMutableState:output_type -> temporal.server.api.adminservice.v1.RebuildMutableStateResponse
47, // 47: temporal.server.api.adminservice.v1.AdminService.ImportWorkflowExecution:output_type -> temporal.server.api.adminservice.v1.ImportWorkflowExecutionResponse
48, // 48: temporal.server.api.adminservice.v1.AdminService.DescribeMutableState:output_type -> temporal.server.api.adminservice.v1.DescribeMutableStateResponse
49, // 49: temporal.server.api.adminservice.v1.AdminService.DescribeHistoryHost:output_type -> temporal.server.api.adminservice.v1.DescribeHistoryHostResponse
50, // 50: temporal.server.api.adminservice.v1.AdminService.GetShard:output_type -> temporal.server.api.adminservice.v1.GetShardResponse
51, // 51: temporal.server.api.adminservice.v1.AdminService.CloseShard:output_type -> temporal.server.api.adminservice.v1.CloseShardResponse
52, // 52: temporal.server.api.adminservice.v1.AdminService.ListHistoryTasks:output_type -> temporal.server.api.adminservice.v1.ListHistoryTasksResponse
53, // 53: temporal.server.api.adminservice.v1.AdminService.RemoveTask:output_type -> temporal.server.api.adminservice.v1.RemoveTaskResponse
54, // 54: temporal.server.api.adminservice.v1.AdminService.GetWorkflowExecutionRawHistoryV2:output_type -> temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryV2Response
55, // 55: temporal.server.api.adminservice.v1.AdminService.GetWorkflowExecutionRawHistory:output_type -> temporal.server.api.adminservice.v1.GetWorkflowExecutionRawHistoryResponse
56, // 56: temporal.server.api.adminservice.v1.AdminService.GetReplicationMessages:output_type -> temporal.server.api.adminservice.v1.GetReplicationMessagesResponse
57, // 57: temporal.server.api.adminservice.v1.AdminService.GetNamespaceReplicationMessages:output_type -> temporal.server.api.adminservice.v1.GetNamespaceReplicationMessagesResponse
58, // 58: temporal.server.api.adminservice.v1.AdminService.GetDLQReplicationMessages:output_type -> temporal.server.api.adminservice.v1.GetDLQReplicationMessagesResponse
59, // 59: temporal.server.api.adminservice.v1.AdminService.ReapplyEvents:output_type -> temporal.server.api.adminservice.v1.ReapplyEventsResponse
60, // 60: temporal.server.api.adminservice.v1.AdminService.AddSearchAttributes:output_type -> temporal.server.api.adminservice.v1.AddSearchAttributesResponse
61, // 61: temporal.server.api.adminservice.v1.AdminService.RemoveSearchAttributes:output_type -> temporal.server.api.adminservice.v1.RemoveSearchAttributesResponse
62, // 62: temporal.server.api.adminservice.v1.AdminService.GetSearchAttributes:output_type -> temporal.server.api.adminservice.v1.GetSearchAttributesResponse
63, // 63: temporal.server.api.adminservice.v1.AdminService.DescribeCluster:output_type -> temporal.server.api.adminservice.v1.DescribeClusterResponse
64, // 64: temporal.server.api.adminservice.v1.AdminService.ListClusters:output_type -> temporal.server.api.adminservice.v1.ListClustersResponse
65, // 65: temporal.server.api.adminservice.v1.AdminService.ListClusterMembers:output_type -> temporal.server.api.adminservice.v1.ListClusterMembersResponse
66, // 66: temporal.server.api.adminservice.v1.AdminService.AddOrUpdateRemoteCluster:output_type -> temporal.server.api.adminservice.v1.AddOrUpdateRemoteClusterResponse
67, // 67: temporal.server.api.adminservice.v1.AdminService.RemoveRemoteCluster:output_type -> temporal.server.api.adminservice.v1.RemoveRemoteClusterResponse
68, // 68: temporal.server.api.adminservice.v1.AdminService.GetDLQMessages:output_type -> temporal.server.api.adminservice.v1.GetDLQMessagesResponse
69, // 69: temporal.server.api.adminservice.v1.AdminService.PurgeDLQMessages:output_type -> temporal.server.api.adminservice.v1.PurgeDLQMessagesResponse
70, // 70: temporal.server.api.adminservice.v1.AdminService.MergeDLQMessages:output_type -> temporal.server.api.adminservice.v1.MergeDLQMessagesResponse
71, // 71: temporal.server.api.adminservice.v1.AdminService.RefreshWorkflowTasks:output_type -> temporal.server.api.adminservice.v1.RefreshWorkflowTasksResponse
72, // 72: temporal.server.api.adminservice.v1.AdminService.StartAdminBatchOperation:output_type -> temporal.server.api.adminservice.v1.StartAdminBatchOperationResponse
73, // 73: temporal.server.api.adminservice.v1.AdminService.ResendReplicationTasks:output_type -> temporal.server.api.adminservice.v1.ResendReplicationTasksResponse
74, // 74: temporal.server.api.adminservice.v1.AdminService.GetTaskQueueTasks:output_type -> temporal.server.api.adminservice.v1.GetTaskQueueTasksResponse
75, // 75: temporal.server.api.adminservice.v1.AdminService.DeleteWorkflowExecution:output_type -> temporal.server.api.adminservice.v1.DeleteWorkflowExecutionResponse
76, // 76: temporal.server.api.adminservice.v1.AdminService.StreamWorkflowReplicationMessages:output_type -> temporal.server.api.adminservice.v1.StreamWorkflowReplicationMessagesResponse
77, // 77: temporal.server.api.adminservice.v1.AdminService.GetNamespace:output_type -> temporal.server.api.adminservice.v1.GetNamespaceResponse
78, // 78: temporal.server.api.adminservice.v1.AdminService.GetDLQTasks:output_type -> temporal.server.api.adminservice.v1.GetDLQTasksResponse
79, // 79: temporal.server.api.adminservice.v1.AdminService.PurgeDLQTasks:output_type -> temporal.server.api.adminservice.v1.PurgeDLQTasksResponse
80, // 80: temporal.server.api.adminservice.v1.AdminService.MergeDLQTasks:output_type -> temporal.server.api.adminservice.v1.MergeDLQTasksResponse
81, // 81: temporal.server.api.adminservice.v1.AdminService.DescribeDLQJob:output_type -> temporal.server.api.adminservice.v1.DescribeDLQJobResponse
82, // 82: temporal.server.api.adminservice.v1.AdminService.CancelDLQJob:output_type -> temporal.server.api.adminservice.v1.CancelDLQJobResponse
83, // 83: temporal.server.api.adminservice.v1.AdminService.AddTasks:output_type -> temporal.server.api.adminservice.v1.AddTasksResponse
84, // 84: temporal.server.api.adminservice.v1.AdminService.ListQueues:output_type -> temporal.server.api.adminservice.v1.ListQueuesResponse
85, // 85: temporal.server.api.adminservice.v1.AdminService.DeepHealthCheck:output_type -> temporal.server.api.adminservice.v1.DeepHealthCheckResponse
86, // 86: temporal.server.api.adminservice.v1.AdminService.SyncWorkflowState:output_type -> temporal.server.api.adminservice.v1.SyncWorkflowStateResponse
87, // 87: temporal.server.api.adminservice.v1.AdminService.GenerateLastHistoryReplicationTasks:output_type -> temporal.server.api.adminservice.v1.GenerateLastHistoryReplicationTasksResponse
88, // 88: temporal.server.api.adminservice.v1.AdminService.DescribeTaskQueuePartition:output_type -> temporal.server.api.adminservice.v1.DescribeTaskQueuePartitionResponse
89, // 89: temporal.server.api.adminservice.v1.AdminService.ForceUnloadTaskQueuePartition:output_type -> temporal.server.api.adminservice.v1.ForceUnloadTaskQueuePartitionResponse
90, // 90: temporal.server.api.adminservice.v1.AdminService.GetTaskQueueUserData:output_type -> temporal.server.api.adminservice.v1.GetTaskQueueUserDataResponse
91, // 91: temporal.server.api.adminservice.v1.AdminService.MigrateSchedule:output_type -> temporal.server.api.adminservice.v1.MigrateScheduleResponse
46, // [46:92] is the sub-list for method output_type
0, // [0:46] is the sub-list for method input_type
0, // [0:0] is the sub-list for extension type_name
0, // [0:0] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name

View File

@@ -64,6 +64,7 @@ const (
AdminService_GenerateLastHistoryReplicationTasks_FullMethodName = "/temporal.server.api.adminservice.v1.AdminService/GenerateLastHistoryReplicationTasks"
AdminService_DescribeTaskQueuePartition_FullMethodName = "/temporal.server.api.adminservice.v1.AdminService/DescribeTaskQueuePartition"
AdminService_ForceUnloadTaskQueuePartition_FullMethodName = "/temporal.server.api.adminservice.v1.AdminService/ForceUnloadTaskQueuePartition"
AdminService_GetTaskQueueUserData_FullMethodName = "/temporal.server.api.adminservice.v1.AdminService/GetTaskQueueUserData"
AdminService_MigrateSchedule_FullMethodName = "/temporal.server.api.adminservice.v1.AdminService/MigrateSchedule"
)
@@ -157,6 +158,7 @@ type AdminServiceClient interface {
GenerateLastHistoryReplicationTasks(ctx context.Context, in *GenerateLastHistoryReplicationTasksRequest, opts ...grpc.CallOption) (*GenerateLastHistoryReplicationTasksResponse, error)
DescribeTaskQueuePartition(ctx context.Context, in *DescribeTaskQueuePartitionRequest, opts ...grpc.CallOption) (*DescribeTaskQueuePartitionResponse, error)
ForceUnloadTaskQueuePartition(ctx context.Context, in *ForceUnloadTaskQueuePartitionRequest, opts ...grpc.CallOption) (*ForceUnloadTaskQueuePartitionResponse, error)
GetTaskQueueUserData(ctx context.Context, in *GetTaskQueueUserDataRequest, opts ...grpc.CallOption) (*GetTaskQueueUserDataResponse, error)
// MigrateSchedule migrates a schedule between V1 (workflow-backed) and V2 (CHASM-backed) implementations.
MigrateSchedule(ctx context.Context, in *MigrateScheduleRequest, opts ...grpc.CallOption) (*MigrateScheduleResponse, error)
}
@@ -587,6 +589,15 @@ func (c *adminServiceClient) ForceUnloadTaskQueuePartition(ctx context.Context,
return out, nil
}
func (c *adminServiceClient) GetTaskQueueUserData(ctx context.Context, in *GetTaskQueueUserDataRequest, opts ...grpc.CallOption) (*GetTaskQueueUserDataResponse, error) {
out := new(GetTaskQueueUserDataResponse)
err := c.cc.Invoke(ctx, AdminService_GetTaskQueueUserData_FullMethodName, in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *adminServiceClient) MigrateSchedule(ctx context.Context, in *MigrateScheduleRequest, opts ...grpc.CallOption) (*MigrateScheduleResponse, error) {
out := new(MigrateScheduleResponse)
err := c.cc.Invoke(ctx, AdminService_MigrateSchedule_FullMethodName, in, out, opts...)
@@ -686,6 +697,7 @@ type AdminServiceServer interface {
GenerateLastHistoryReplicationTasks(context.Context, *GenerateLastHistoryReplicationTasksRequest) (*GenerateLastHistoryReplicationTasksResponse, error)
DescribeTaskQueuePartition(context.Context, *DescribeTaskQueuePartitionRequest) (*DescribeTaskQueuePartitionResponse, error)
ForceUnloadTaskQueuePartition(context.Context, *ForceUnloadTaskQueuePartitionRequest) (*ForceUnloadTaskQueuePartitionResponse, error)
GetTaskQueueUserData(context.Context, *GetTaskQueueUserDataRequest) (*GetTaskQueueUserDataResponse, error)
// MigrateSchedule migrates a schedule between V1 (workflow-backed) and V2 (CHASM-backed) implementations.
MigrateSchedule(context.Context, *MigrateScheduleRequest) (*MigrateScheduleResponse, error)
mustEmbedUnimplementedAdminServiceServer()
@@ -827,6 +839,9 @@ func (UnimplementedAdminServiceServer) DescribeTaskQueuePartition(context.Contex
func (UnimplementedAdminServiceServer) ForceUnloadTaskQueuePartition(context.Context, *ForceUnloadTaskQueuePartitionRequest) (*ForceUnloadTaskQueuePartitionResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ForceUnloadTaskQueuePartition not implemented")
}
func (UnimplementedAdminServiceServer) GetTaskQueueUserData(context.Context, *GetTaskQueueUserDataRequest) (*GetTaskQueueUserDataResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetTaskQueueUserData not implemented")
}
func (UnimplementedAdminServiceServer) MigrateSchedule(context.Context, *MigrateScheduleRequest) (*MigrateScheduleResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method MigrateSchedule not implemented")
}
@@ -1643,6 +1658,24 @@ func _AdminService_ForceUnloadTaskQueuePartition_Handler(srv interface{}, ctx co
return interceptor(ctx, in, info, handler)
}
func _AdminService_GetTaskQueueUserData_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(GetTaskQueueUserDataRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(AdminServiceServer).GetTaskQueueUserData(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: AdminService_GetTaskQueueUserData_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AdminServiceServer).GetTaskQueueUserData(ctx, req.(*GetTaskQueueUserDataRequest))
}
return interceptor(ctx, in, info, handler)
}
func _AdminService_MigrateSchedule_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(MigrateScheduleRequest)
if err := dec(in); err != nil {
@@ -1840,6 +1873,10 @@ var AdminService_ServiceDesc = grpc.ServiceDesc{
MethodName: "ForceUnloadTaskQueuePartition",
Handler: _AdminService_ForceUnloadTaskQueuePartition_Handler,
},
{
MethodName: "GetTaskQueueUserData",
Handler: _AdminService_GetTaskQueueUserData_Handler,
},
{
MethodName: "MigrateSchedule",
Handler: _AdminService_MigrateSchedule_Handler,

View File

@@ -503,6 +503,26 @@ func (mr *MockAdminServiceClientMockRecorder) GetTaskQueueTasks(ctx, in any, opt
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetTaskQueueTasks", reflect.TypeOf((*MockAdminServiceClient)(nil).GetTaskQueueTasks), varargs...)
}
// GetTaskQueueUserData mocks base method.
func (m *MockAdminServiceClient) GetTaskQueueUserData(ctx context.Context, in *adminservice.GetTaskQueueUserDataRequest, opts ...grpc.CallOption) (*adminservice.GetTaskQueueUserDataResponse, error) {
m.ctrl.T.Helper()
varargs := []any{ctx, in}
for _, a := range opts {
varargs = append(varargs, a)
}
ret := m.ctrl.Call(m, "GetTaskQueueUserData", varargs...)
ret0, _ := ret[0].(*adminservice.GetTaskQueueUserDataResponse)
ret1, _ := ret[1].(error)
return ret0, ret1
}
// GetTaskQueueUserData indicates an expected call of GetTaskQueueUserData.
func (mr *MockAdminServiceClientMockRecorder) GetTaskQueueUserData(ctx, in any, opts ...any) *gomock.Call {
mr.mock.ctrl.T.Helper()
varargs := append([]any{ctx, in}, opts...)
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetTaskQueueUserData", reflect.TypeOf((*MockAdminServiceClient)(nil).GetTaskQueueUserData), varargs...)
}
// GetWorkflowExecutionRawHistory mocks base method.
func (m *MockAdminServiceClient) GetWorkflowExecutionRawHistory(ctx context.Context, in *adminservice.GetWorkflowExecutionRawHistoryRequest, opts ...grpc.CallOption) (*adminservice.GetWorkflowExecutionRawHistoryResponse, error) {
m.ctrl.T.Helper()
@@ -1450,6 +1470,21 @@ func (mr *MockAdminServiceServerMockRecorder) GetTaskQueueTasks(arg0, arg1 any)
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetTaskQueueTasks", reflect.TypeOf((*MockAdminServiceServer)(nil).GetTaskQueueTasks), arg0, arg1)
}
// GetTaskQueueUserData mocks base method.
func (m *MockAdminServiceServer) GetTaskQueueUserData(arg0 context.Context, arg1 *adminservice.GetTaskQueueUserDataRequest) (*adminservice.GetTaskQueueUserDataResponse, error) {
m.ctrl.T.Helper()
ret := m.ctrl.Call(m, "GetTaskQueueUserData", arg0, arg1)
ret0, _ := ret[0].(*adminservice.GetTaskQueueUserDataResponse)
ret1, _ := ret[1].(error)
return ret0, ret1
}
// GetTaskQueueUserData indicates an expected call of GetTaskQueueUserData.
func (mr *MockAdminServiceServerMockRecorder) GetTaskQueueUserData(arg0, arg1 any) *gomock.Call {
mr.mock.ctrl.T.Helper()
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetTaskQueueUserData", reflect.TypeOf((*MockAdminServiceServer)(nil).GetTaskQueueUserData), arg0, arg1)
}
// GetWorkflowExecutionRawHistory mocks base method.
func (m *MockAdminServiceServer) GetWorkflowExecutionRawHistory(arg0 context.Context, arg1 *adminservice.GetWorkflowExecutionRawHistoryRequest) (*adminservice.GetWorkflowExecutionRawHistoryResponse, error) {
m.ctrl.T.Helper()

View File

@@ -239,6 +239,16 @@ func (c *clientImpl) GetTaskQueueTasks(
return c.client.GetTaskQueueTasks(ctx, request, opts...)
}
func (c *clientImpl) GetTaskQueueUserData(
ctx context.Context,
request *adminservice.GetTaskQueueUserDataRequest,
opts ...grpc.CallOption,
) (*adminservice.GetTaskQueueUserDataResponse, error) {
ctx, cancel := c.createContext(ctx)
defer cancel()
return c.client.GetTaskQueueUserData(ctx, request, opts...)
}
func (c *clientImpl) GetWorkflowExecutionRawHistory(
ctx context.Context,
request *adminservice.GetWorkflowExecutionRawHistoryRequest,

View File

@@ -331,6 +331,20 @@ func (c *metricClient) GetTaskQueueTasks(
return c.client.GetTaskQueueTasks(ctx, request, opts...)
}
func (c *metricClient) GetTaskQueueUserData(
ctx context.Context,
request *adminservice.GetTaskQueueUserDataRequest,
opts ...grpc.CallOption,
) (_ *adminservice.GetTaskQueueUserDataResponse, retError error) {
metricsHandler, startTime := c.startMetricsRecording(ctx, "AdminClientGetTaskQueueUserData")
defer func() {
c.finishMetricsRecording(metricsHandler, startTime, retError)
}()
return c.client.GetTaskQueueUserData(ctx, request, opts...)
}
func (c *metricClient) GetWorkflowExecutionRawHistory(
ctx context.Context,
request *adminservice.GetWorkflowExecutionRawHistoryRequest,

View File

@@ -356,6 +356,21 @@ func (c *retryableClient) GetTaskQueueTasks(
return resp, err
}
func (c *retryableClient) GetTaskQueueUserData(
ctx context.Context,
request *adminservice.GetTaskQueueUserDataRequest,
opts ...grpc.CallOption,
) (*adminservice.GetTaskQueueUserDataResponse, error) {
var resp *adminservice.GetTaskQueueUserDataResponse
op := func(ctx context.Context) error {
var err error
resp, err = c.client.GetTaskQueueUserData(ctx, request, opts...)
return err
}
err := backoff.ThrottleRetryContext(ctx, op, c.policy, c.isRetryable)
return resp, err
}
func (c *retryableClient) GetWorkflowExecutionRawHistory(
ctx context.Context,
request *adminservice.GetWorkflowExecutionRawHistoryRequest,

View File

@@ -113,6 +113,10 @@ func (wt *WorkflowTags) extractFromAdminServiceServerMessage(message any) []tag.
return nil
case *adminservice.GetTaskQueueTasksResponse:
return nil
case *adminservice.GetTaskQueueUserDataRequest:
return nil
case *adminservice.GetTaskQueueUserDataResponse:
return nil
case *adminservice.GetWorkflowExecutionRawHistoryRequest:
return []tag.Tag{
tag.WorkflowID(r.GetExecution().GetWorkflowId()),

View File

@@ -24,6 +24,7 @@ import "temporal/server/api/namespace/v1/message.proto";
import "temporal/server/api/persistence/v1/cluster_metadata.proto";
import "temporal/server/api/persistence/v1/executions.proto";
import "temporal/server/api/persistence/v1/hsm.proto";
import "temporal/server/api/persistence/v1/task_queues.proto";
import "temporal/server/api/persistence/v1/tasks.proto";
import "temporal/server/api/persistence/v1/workflow_mutable_state.proto";
import "temporal/server/api/replication/v1/message.proto";
@@ -603,6 +604,19 @@ message ForceUnloadTaskQueuePartitionResponse {
bool was_loaded = 1;
}
message GetTaskQueueUserDataRequest {
string namespace = 1;
string task_queue = 2;
temporal.api.enums.v1.TaskQueueType task_queue_type = 3;
// If non-zero, fetch the user data loaded by this partition instead of the root.
int32 partition_id = 4;
}
message GetTaskQueueUserDataResponse {
temporal.server.api.persistence.v1.TaskQueueTypeUserData user_data = 1;
int64 version = 2;
}
// StartAdminBatchOperationRequest starts an admin batch operation.
// WARNING: Batch Operations are exposed to all users of the namespace. Admin Batch Operations should be exercised with caution.
message StartAdminBatchOperationRequest {

View File

@@ -223,6 +223,10 @@ service AdminService {
option (temporal.server.api.common.v1.api_category).category = API_CATEGORY_SYSTEM;
}
rpc GetTaskQueueUserData(GetTaskQueueUserDataRequest) returns (GetTaskQueueUserDataResponse) {
option (temporal.server.api.common.v1.api_category).category = API_CATEGORY_SYSTEM;
}
// MigrateSchedule migrates a schedule between V1 (workflow-backed) and V2 (CHASM-backed) implementations.
rpc MigrateSchedule(MigrateScheduleRequest) returns (MigrateScheduleResponse) {
option (temporal.server.api.common.v1.api_category).category = API_CATEGORY_SYSTEM;

View File

@@ -63,6 +63,7 @@ import (
"go.temporal.io/server/common/searchattribute"
"go.temporal.io/server/common/searchattribute/sadefs"
serviceerrors "go.temporal.io/server/common/serviceerror"
"go.temporal.io/server/common/tqid"
"go.temporal.io/server/common/util"
"go.temporal.io/server/service/history/tasks"
"go.temporal.io/server/service/worker/addsearchattributes"
@@ -1829,6 +1830,61 @@ func (adh *AdminHandler) ForceUnloadTaskQueuePartition(
}, nil
}
func (adh *AdminHandler) GetTaskQueueUserData(
ctx context.Context,
request *adminservice.GetTaskQueueUserDataRequest,
) (_ *adminservice.GetTaskQueueUserDataResponse, err error) {
defer log.CapturePanic(adh.logger, &err)
if request == nil {
return nil, errRequestNotSet
}
if len(request.Namespace) == 0 {
return nil, errNamespaceNotSet
}
// Admin API takes namespace name; matching requires namespace ID.
namespaceID, err := adh.namespaceRegistry.GetNamespaceID(namespace.Name(request.GetNamespace()))
if err != nil {
return nil, err
}
// Build the partition object to get its wire-format RPC name.
// partition_id=0 (root) → bare task queue name, e.g. "my-queue".
// partition_id=N → mangled name, e.g. "/_sys/my-queue/N".
// The matching client uses this name for consistent-hash routing to the correct host,
// and the matching engine parses it to find the right in-memory partition manager.
// namespaceID is passed for correctness even though RpcName() only uses the task queue name.
family, err := tqid.NewTaskQueueFamily(namespaceID.String(), request.GetTaskQueue())
if err != nil {
return nil, err
}
partition := family.TaskQueue(request.GetTaskQueueType()).NormalPartition(int(request.GetPartitionId()))
// Fetch the user data currently loaded by the target partition.
// LastKnownUserDataVersion=0: no cached version, always return current data.
// LastKnownEphemeralDataVersion=-1: skip ephemeral data; we only need persisted per-type data.
resp, err := adh.matchingClient.GetTaskQueueUserData(ctx, &matchingservice.GetTaskQueueUserDataRequest{
NamespaceId: namespaceID.String(),
TaskQueue: partition.RpcName(),
TaskQueueType: request.GetTaskQueueType(),
LastKnownUserDataVersion: 0,
LastKnownEphemeralDataVersion: -1,
})
if err != nil {
return nil, err
}
// User data is a family-level map keyed by TaskQueueType (int32).
// Extract only the entry for the requested type and return it alongside the version,
// so callers can compare versions across partitions to check replication lag.
perType := resp.GetUserData().GetData().GetPerType()
return &adminservice.GetTaskQueueUserDataResponse{
UserData: perType[int32(request.GetTaskQueueType())],
Version: resp.GetUserData().GetVersion(),
}, nil
}
func (adh *AdminHandler) DeleteWorkflowExecution(
ctx context.Context,
request *adminservice.DeleteWorkflowExecutionRequest,

View File

@@ -2189,3 +2189,154 @@ func (s *adminHandlerSuite) TestMigrateScheduleToWorkflowError() {
var notFoundErr *serviceerror.NotFound
s.ErrorAs(err, &notFoundErr)
}
func (s *adminHandlerSuite) TestGetTaskQueueUserData() {
handler := s.handler
ctx := context.Background()
type testCase struct {
Name string
Request *adminservice.GetTaskQueueUserDataRequest
Expected error
}
// Validation error cases — no mock setup needed.
errorCases := []testCase{
{
Name: "nil request",
Request: nil,
Expected: &serviceerror.InvalidArgument{Message: "Request is nil."},
},
{
Name: "empty namespace",
Request: &adminservice.GetTaskQueueUserDataRequest{},
Expected: &serviceerror.InvalidArgument{Message: "Namespace is not set on request."},
},
}
for _, tc := range errorCases {
s.Run(tc.Name, func() {
resp, err := handler.GetTaskQueueUserData(ctx, tc.Request)
s.Equal(tc.Expected, err)
s.Nil(resp)
})
}
// Namespace registry error is propagated before matching is called.
s.Run("namespace not found", func() {
s.mockNamespaceCache.EXPECT().GetNamespaceID(gomock.Any()).Return(namespace.ID(""), serviceerror.NewNotFound("Namespace nonexistent is not found."))
resp, err := handler.GetTaskQueueUserData(ctx, &adminservice.GetTaskQueueUserDataRequest{
Namespace: "nonexistent",
TaskQueue: "my-queue",
})
s.Error(err)
s.Nil(resp)
})
// Task queue name starting with /_sys/ is rejected by tqid.NewTaskQueueFamily before matching is called.
s.Run("invalid task queue name", func() {
s.mockNamespaceCache.EXPECT().GetNamespaceID(s.namespace).Return(s.namespaceID, nil)
resp, err := handler.GetTaskQueueUserData(ctx, &adminservice.GetTaskQueueUserDataRequest{
Namespace: s.namespace.String(),
TaskQueue: "/_sys/my-queue/1",
})
s.Error(err)
s.Nil(resp)
})
// Root partition (partition_id=0) sends bare task queue name to matching.
s.Run("root partition", func() {
perTypeData := &persistencespb.TaskQueueTypeUserData{}
matchingReq := &matchingservice.GetTaskQueueUserDataRequest{
NamespaceId: s.namespaceID.String(),
TaskQueue: "my-queue",
TaskQueueType: enumspb.TASK_QUEUE_TYPE_WORKFLOW,
LastKnownUserDataVersion: 0,
LastKnownEphemeralDataVersion: -1,
}
matchingResp := &matchingservice.GetTaskQueueUserDataResponse{
UserData: &persistencespb.VersionedTaskQueueUserData{
Version: 5,
Data: &persistencespb.TaskQueueUserData{
PerType: map[int32]*persistencespb.TaskQueueTypeUserData{
int32(enumspb.TASK_QUEUE_TYPE_WORKFLOW): perTypeData,
},
},
},
}
s.mockNamespaceCache.EXPECT().GetNamespaceID(s.namespace).Return(s.namespaceID, nil)
s.mockMatchingClient.EXPECT().GetTaskQueueUserData(ctx, matchingReq).Return(matchingResp, nil)
resp, err := handler.GetTaskQueueUserData(ctx, &adminservice.GetTaskQueueUserDataRequest{
Namespace: s.namespace.String(),
TaskQueue: "my-queue",
TaskQueueType: enumspb.TASK_QUEUE_TYPE_WORKFLOW,
PartitionId: 0,
})
s.NoError(err)
s.Equal(perTypeData, resp.UserData)
s.Equal(int64(5), resp.Version)
})
// Non-root partition (partition_id=1) sends mangled name /_sys/my-queue/1 to matching.
s.Run("non-root partition", func() {
matchingReq := &matchingservice.GetTaskQueueUserDataRequest{
NamespaceId: s.namespaceID.String(),
TaskQueue: "/_sys/my-queue/1",
TaskQueueType: enumspb.TASK_QUEUE_TYPE_WORKFLOW,
LastKnownUserDataVersion: 0,
LastKnownEphemeralDataVersion: -1,
}
s.mockNamespaceCache.EXPECT().GetNamespaceID(s.namespace).Return(s.namespaceID, nil)
s.mockMatchingClient.EXPECT().GetTaskQueueUserData(ctx, matchingReq).Return(
&matchingservice.GetTaskQueueUserDataResponse{}, nil,
)
resp, err := handler.GetTaskQueueUserData(ctx, &adminservice.GetTaskQueueUserDataRequest{
Namespace: s.namespace.String(),
TaskQueue: "my-queue",
TaskQueueType: enumspb.TASK_QUEUE_TYPE_WORKFLOW,
PartitionId: 1,
})
s.NoError(err)
s.Nil(resp.UserData)
s.Equal(int64(0), resp.Version)
})
// Empty per_type map: UserData is nil, but Version is still populated.
s.Run("no per-type data", func() {
s.mockNamespaceCache.EXPECT().GetNamespaceID(s.namespace).Return(s.namespaceID, nil)
s.mockMatchingClient.EXPECT().GetTaskQueueUserData(ctx, gomock.Any()).Return(
&matchingservice.GetTaskQueueUserDataResponse{
UserData: &persistencespb.VersionedTaskQueueUserData{
Version: 3,
Data: &persistencespb.TaskQueueUserData{},
},
}, nil,
)
resp, err := handler.GetTaskQueueUserData(ctx, &adminservice.GetTaskQueueUserDataRequest{
Namespace: s.namespace.String(),
TaskQueue: "my-queue",
TaskQueueType: enumspb.TASK_QUEUE_TYPE_WORKFLOW,
})
s.NoError(err)
s.Nil(resp.UserData)
s.Equal(int64(3), resp.Version)
})
// Matching error is propagated to the caller.
s.Run("matching error", func() {
s.mockNamespaceCache.EXPECT().GetNamespaceID(s.namespace).Return(s.namespaceID, nil)
s.mockMatchingClient.EXPECT().GetTaskQueueUserData(ctx, gomock.Any()).Return(
nil, serviceerror.NewUnavailable("matching unavailable"),
)
resp, err := handler.GetTaskQueueUserData(ctx, &adminservice.GetTaskQueueUserDataRequest{
Namespace: s.namespace.String(),
TaskQueue: "my-queue",
TaskQueueType: enumspb.TASK_QUEUE_TYPE_WORKFLOW,
})
s.Error(err)
s.Nil(resp)
})
}

View File

@@ -22,6 +22,7 @@ import (
sdkclient "go.temporal.io/sdk/client"
"go.temporal.io/sdk/worker"
"go.temporal.io/sdk/workflow"
"go.temporal.io/server/api/adminservice/v1"
"go.temporal.io/server/api/matchingservice/v1"
taskqueuespb "go.temporal.io/server/api/taskqueue/v1"
"go.temporal.io/server/common"
@@ -1516,3 +1517,78 @@ func (s *TaskQueueSuite) TestShutdownWorkerCancelsOutstandingPolls() {
s.Empty(actResp.GetTaskToken(), "activity re-poll from shutdown worker should return empty response")
s.Less(time.Since(actStart), 2*time.Minute, "activity re-poll should be rejected quickly, not wait for timeout")
}
func (s *TaskQueueSuite) TestAdminGetTaskQueueUserData_RootPartition() {
tv := testvars.New(s.T())
ctx := testcore.NewContext()
// Write per-type config for the workflow task queue to bump user data version above 0.
// Rate limits are not allowed on workflow task queues, so use fairness weight overrides.
_, err := s.FrontendClient().UpdateTaskQueueConfig(ctx, &workflowservice.UpdateTaskQueueConfigRequest{
Namespace: s.Namespace().String(),
TaskQueue: tv.TaskQueue().GetName(),
TaskQueueType: enumspb.TASK_QUEUE_TYPE_WORKFLOW,
SetFairnessWeightOverrides: map[string]float32{"key1": 1.5},
})
s.NoError(err)
// Root partition (partition_id=0) owns user data storage. The admin RPC resolves the
// namespace by name and routes to root via the bare task queue name.
resp, err := s.AdminClient().GetTaskQueueUserData(ctx, &adminservice.GetTaskQueueUserDataRequest{
Namespace: s.Namespace().String(),
TaskQueue: tv.TaskQueue().GetName(),
TaskQueueType: enumspb.TASK_QUEUE_TYPE_WORKFLOW,
PartitionId: 0,
})
s.NoError(err)
s.Positive(resp.GetVersion())
s.NotNil(resp.GetUserData())
}
func (s *TaskQueueSuite) TestAdminGetTaskQueueUserData_NonRootPartition() {
tv := testvars.New(s.T())
ctx := testcore.NewContext()
// Write per-type config for the workflow task queue.
_, err := s.FrontendClient().UpdateTaskQueueConfig(ctx, &workflowservice.UpdateTaskQueueConfigRequest{
Namespace: s.Namespace().String(),
TaskQueue: tv.TaskQueue().GetName(),
TaskQueueType: enumspb.TASK_QUEUE_TYPE_WORKFLOW,
SetFairnessWeightOverrides: map[string]float32{"key1": 1.5},
})
s.NoError(err)
// Get the root partition version to know what to expect on non-root partitions.
rootResp, err := s.AdminClient().GetTaskQueueUserData(ctx, &adminservice.GetTaskQueueUserDataRequest{
Namespace: s.Namespace().String(),
TaskQueue: tv.TaskQueue().GetName(),
TaskQueueType: enumspb.TASK_QUEUE_TYPE_WORKFLOW,
PartitionId: 0,
})
s.NoError(err)
s.Positive(rootResp.GetVersion())
// partition_id=1 routes to a non-root partition via the mangled name /_sys/<queue>/1.
// Non-root partitions replicate user data from root asynchronously, so poll until the
// version matches. TaskQueueSuite sets MatchingNumTaskqueueWritePartitions=4, so
// partition 1 always exists.
s.Eventually(func() bool {
resp, err := s.AdminClient().GetTaskQueueUserData(testcore.NewContext(), &adminservice.GetTaskQueueUserDataRequest{
Namespace: s.Namespace().String(),
TaskQueue: tv.TaskQueue().GetName(),
TaskQueueType: enumspb.TASK_QUEUE_TYPE_WORKFLOW,
PartitionId: 1,
})
return err == nil && resp.GetVersion() == rootResp.GetVersion()
}, 15*time.Second, 200*time.Millisecond)
resp, err := s.AdminClient().GetTaskQueueUserData(ctx, &adminservice.GetTaskQueueUserDataRequest{
Namespace: s.Namespace().String(),
TaskQueue: tv.TaskQueue().GetName(),
TaskQueueType: enumspb.TASK_QUEUE_TYPE_WORKFLOW,
PartitionId: 1,
})
s.NoError(err)
s.Equal(rootResp.GetVersion(), resp.GetVersion())
s.NotNil(resp.GetUserData())
}