mirror of
https://github.com/temporalio/temporal.git
synced 2026-08-30 18:41:49 -07:00
## What changed? Add scale manager component. ## Why? Part of dynamic partitioning. ## How did you test it? - [ ] built - [ ] run locally and tested manually - [ ] covered by existing tests - [x] added new unit test(s) - [x] added new functional test(s) - to come in future PRs ## Potential risks No behavior changes yet.
782 lines
29 KiB
Go
782 lines
29 KiB
Go
// Code generated by protoc-gen-go. DO NOT EDIT.
|
|
// plugins:
|
|
// protoc-gen-go
|
|
// protoc
|
|
// source: temporal/server/api/persistence/v1/tasks.proto
|
|
|
|
package persistence
|
|
|
|
import (
|
|
reflect "reflect"
|
|
sync "sync"
|
|
unsafe "unsafe"
|
|
|
|
v12 "go.temporal.io/api/common/v1"
|
|
v13 "go.temporal.io/api/enums/v1"
|
|
v1 "go.temporal.io/server/api/clock/v1"
|
|
v11 "go.temporal.io/server/api/taskqueue/v1"
|
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
anypb "google.golang.org/protobuf/types/known/anypb"
|
|
timestamppb "google.golang.org/protobuf/types/known/timestamppb"
|
|
)
|
|
|
|
const (
|
|
// Verify that this generated code is sufficiently up-to-date.
|
|
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
|
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
|
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
|
)
|
|
|
|
// task column
|
|
type AllocatedTaskInfo struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Data *TaskInfo `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
|
|
TaskPass int64 `protobuf:"varint,3,opt,name=task_pass,json=taskPass,proto3" json:"task_pass,omitempty"`
|
|
TaskId int64 `protobuf:"varint,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *AllocatedTaskInfo) Reset() {
|
|
*x = AllocatedTaskInfo{}
|
|
mi := &file_temporal_server_api_persistence_v1_tasks_proto_msgTypes[0]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *AllocatedTaskInfo) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*AllocatedTaskInfo) ProtoMessage() {}
|
|
|
|
func (x *AllocatedTaskInfo) ProtoReflect() protoreflect.Message {
|
|
mi := &file_temporal_server_api_persistence_v1_tasks_proto_msgTypes[0]
|
|
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 AllocatedTaskInfo.ProtoReflect.Descriptor instead.
|
|
func (*AllocatedTaskInfo) Descriptor() ([]byte, []int) {
|
|
return file_temporal_server_api_persistence_v1_tasks_proto_rawDescGZIP(), []int{0}
|
|
}
|
|
|
|
func (x *AllocatedTaskInfo) GetData() *TaskInfo {
|
|
if x != nil {
|
|
return x.Data
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AllocatedTaskInfo) GetTaskPass() int64 {
|
|
if x != nil {
|
|
return x.TaskPass
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *AllocatedTaskInfo) GetTaskId() int64 {
|
|
if x != nil {
|
|
return x.TaskId
|
|
}
|
|
return 0
|
|
}
|
|
|
|
type TaskInfo struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
NamespaceId string `protobuf:"bytes,1,opt,name=namespace_id,json=namespaceId,proto3" json:"namespace_id,omitempty"`
|
|
WorkflowId string `protobuf:"bytes,2,opt,name=workflow_id,json=workflowId,proto3" json:"workflow_id,omitempty"`
|
|
RunId string `protobuf:"bytes,3,opt,name=run_id,json=runId,proto3" json:"run_id,omitempty"`
|
|
ScheduledEventId int64 `protobuf:"varint,4,opt,name=scheduled_event_id,json=scheduledEventId,proto3" json:"scheduled_event_id,omitempty"`
|
|
CreateTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
|
|
ExpiryTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=expiry_time,json=expiryTime,proto3" json:"expiry_time,omitempty"`
|
|
Clock *v1.VectorClock `protobuf:"bytes,7,opt,name=clock,proto3" json:"clock,omitempty"`
|
|
// How this task should be directed. (Missing means the default for
|
|
// TaskVersionDirective, which is unversioned.)
|
|
VersionDirective *v11.TaskVersionDirective `protobuf:"bytes,8,opt,name=version_directive,json=versionDirective,proto3" json:"version_directive,omitempty"`
|
|
// Stamp field allows to differentiate between different instances of the same task
|
|
Stamp int32 `protobuf:"varint,9,opt,name=stamp,proto3" json:"stamp,omitempty"`
|
|
Priority *v12.Priority `protobuf:"bytes,10,opt,name=priority,proto3" json:"priority,omitempty"`
|
|
// Reference to any chasm component associated with this task
|
|
ComponentRef []byte `protobuf:"bytes,11,opt,name=component_ref,json=componentRef,proto3" json:"component_ref,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *TaskInfo) Reset() {
|
|
*x = TaskInfo{}
|
|
mi := &file_temporal_server_api_persistence_v1_tasks_proto_msgTypes[1]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *TaskInfo) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*TaskInfo) ProtoMessage() {}
|
|
|
|
func (x *TaskInfo) ProtoReflect() protoreflect.Message {
|
|
mi := &file_temporal_server_api_persistence_v1_tasks_proto_msgTypes[1]
|
|
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 TaskInfo.ProtoReflect.Descriptor instead.
|
|
func (*TaskInfo) Descriptor() ([]byte, []int) {
|
|
return file_temporal_server_api_persistence_v1_tasks_proto_rawDescGZIP(), []int{1}
|
|
}
|
|
|
|
func (x *TaskInfo) GetNamespaceId() string {
|
|
if x != nil {
|
|
return x.NamespaceId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *TaskInfo) GetWorkflowId() string {
|
|
if x != nil {
|
|
return x.WorkflowId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *TaskInfo) GetRunId() string {
|
|
if x != nil {
|
|
return x.RunId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *TaskInfo) GetScheduledEventId() int64 {
|
|
if x != nil {
|
|
return x.ScheduledEventId
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *TaskInfo) GetCreateTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.CreateTime
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *TaskInfo) GetExpiryTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.ExpiryTime
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *TaskInfo) GetClock() *v1.VectorClock {
|
|
if x != nil {
|
|
return x.Clock
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *TaskInfo) GetVersionDirective() *v11.TaskVersionDirective {
|
|
if x != nil {
|
|
return x.VersionDirective
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *TaskInfo) GetStamp() int32 {
|
|
if x != nil {
|
|
return x.Stamp
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *TaskInfo) GetPriority() *v12.Priority {
|
|
if x != nil {
|
|
return x.Priority
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *TaskInfo) GetComponentRef() []byte {
|
|
if x != nil {
|
|
return x.ComponentRef
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// task_queue column
|
|
type TaskQueueInfo struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
NamespaceId string `protobuf:"bytes,1,opt,name=namespace_id,json=namespaceId,proto3" json:"namespace_id,omitempty"`
|
|
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
|
|
TaskType v13.TaskQueueType `protobuf:"varint,3,opt,name=task_type,json=taskType,proto3,enum=temporal.api.enums.v1.TaskQueueType" json:"task_type,omitempty"`
|
|
Kind v13.TaskQueueKind `protobuf:"varint,4,opt,name=kind,proto3,enum=temporal.api.enums.v1.TaskQueueKind" json:"kind,omitempty"`
|
|
// After data is migrated into subqueues, this contains a copy of the ack level for subqueue 0.
|
|
AckLevel int64 `protobuf:"varint,5,opt,name=ack_level,json=ackLevel,proto3" json:"ack_level,omitempty"`
|
|
ExpiryTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=expiry_time,json=expiryTime,proto3" json:"expiry_time,omitempty"`
|
|
LastUpdateTime *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=last_update_time,json=lastUpdateTime,proto3" json:"last_update_time,omitempty"`
|
|
// After data is migrated into subqueues, this contains a copy of the count for subqueue 0.
|
|
ApproximateBacklogCount int64 `protobuf:"varint,8,opt,name=approximate_backlog_count,json=approximateBacklogCount,proto3" json:"approximate_backlog_count,omitempty"`
|
|
// Subqueues contains one entry for each subqueue in this physical task queue.
|
|
// Tasks are split into subqueues to implement priority and fairness.
|
|
// Subqueues are indexed starting from 0, the zero subqueue is always present
|
|
// and corresponds to the "main" queue before subqueues were introduced.
|
|
//
|
|
// The message at index n describes the subqueue at index n.
|
|
//
|
|
// Each subqueue has its own ack level and approx backlog count, but they share
|
|
// the range id. For compatibility, ack level and backlog count for subqueue 0
|
|
// is copied into TaskQueueInfo.
|
|
Subqueues []*SubqueueInfo `protobuf:"bytes,9,rep,name=subqueues,proto3" json:"subqueues,omitempty"`
|
|
// For transitioning from tasks (v1) to tasks_v2 and back:
|
|
//
|
|
// If this TaskQueueInfo is in v1 and this is set, then v2 may have tasks.
|
|
// If this TaskQueueInfo is in v2 and this is set, then v1 may have tasks.
|
|
//
|
|
// New metadata starts with this flag set (we could skip this when useNewMatcher is off).
|
|
// Whenever locking any metadata as the inactive one (drain-only), this should be set.
|
|
// If the flag is true, no tasks should be written to the active table until the inactive
|
|
// table has also been locked (and the flag set there for a potential reverse transition).
|
|
// After determinining that the inactive table has no more tasks left, then this
|
|
// can be cleared on the active table.
|
|
OtherHasTasks bool `protobuf:"varint,10,opt,name=other_has_tasks,json=otherHasTasks,proto3" json:"other_has_tasks,omitempty"`
|
|
// Dynamic partition scaling state (root only):
|
|
PartitionScaleState *PartitionScaleState `protobuf:"bytes,11,opt,name=partition_scale_state,json=partitionScaleState,proto3" json:"partition_scale_state,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *TaskQueueInfo) Reset() {
|
|
*x = TaskQueueInfo{}
|
|
mi := &file_temporal_server_api_persistence_v1_tasks_proto_msgTypes[2]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *TaskQueueInfo) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*TaskQueueInfo) ProtoMessage() {}
|
|
|
|
func (x *TaskQueueInfo) ProtoReflect() protoreflect.Message {
|
|
mi := &file_temporal_server_api_persistence_v1_tasks_proto_msgTypes[2]
|
|
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 TaskQueueInfo.ProtoReflect.Descriptor instead.
|
|
func (*TaskQueueInfo) Descriptor() ([]byte, []int) {
|
|
return file_temporal_server_api_persistence_v1_tasks_proto_rawDescGZIP(), []int{2}
|
|
}
|
|
|
|
func (x *TaskQueueInfo) GetNamespaceId() string {
|
|
if x != nil {
|
|
return x.NamespaceId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *TaskQueueInfo) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *TaskQueueInfo) GetTaskType() v13.TaskQueueType {
|
|
if x != nil {
|
|
return x.TaskType
|
|
}
|
|
return v13.TaskQueueType(0)
|
|
}
|
|
|
|
func (x *TaskQueueInfo) GetKind() v13.TaskQueueKind {
|
|
if x != nil {
|
|
return x.Kind
|
|
}
|
|
return v13.TaskQueueKind(0)
|
|
}
|
|
|
|
func (x *TaskQueueInfo) GetAckLevel() int64 {
|
|
if x != nil {
|
|
return x.AckLevel
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *TaskQueueInfo) GetExpiryTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.ExpiryTime
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *TaskQueueInfo) GetLastUpdateTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.LastUpdateTime
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *TaskQueueInfo) GetApproximateBacklogCount() int64 {
|
|
if x != nil {
|
|
return x.ApproximateBacklogCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *TaskQueueInfo) GetSubqueues() []*SubqueueInfo {
|
|
if x != nil {
|
|
return x.Subqueues
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *TaskQueueInfo) GetOtherHasTasks() bool {
|
|
if x != nil {
|
|
return x.OtherHasTasks
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *TaskQueueInfo) GetPartitionScaleState() *PartitionScaleState {
|
|
if x != nil {
|
|
return x.PartitionScaleState
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type SubqueueInfo struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
// Key is the information used by a splitting algorithm to decide which tasks should go in
|
|
// this subqueue. It should not change after being registered in TaskQueueInfo.
|
|
Key *SubqueueKey `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
|
|
// The rest are mutable state for the subqueue:
|
|
AckLevel int64 `protobuf:"varint,2,opt,name=ack_level,json=ackLevel,proto3" json:"ack_level,omitempty"`
|
|
FairAckLevel *v11.FairLevel `protobuf:"bytes,4,opt,name=fair_ack_level,json=fairAckLevel,proto3" json:"fair_ack_level,omitempty"`
|
|
ApproximateBacklogCount int64 `protobuf:"varint,3,opt,name=approximate_backlog_count,json=approximateBacklogCount,proto3" json:"approximate_backlog_count,omitempty"`
|
|
// Max read level keeps track of the highest task level ever written, but is only
|
|
// maintained best-effort. Do not trust these values.
|
|
FairMaxReadLevel *v11.FairLevel `protobuf:"bytes,5,opt,name=fair_max_read_level,json=fairMaxReadLevel,proto3" json:"fair_max_read_level,omitempty"`
|
|
// We can persist a limited number of fairness key counts in task queue
|
|
// metadata so they're not lost on migration.
|
|
TopKFairnessCounts []*FairnessKeyCount `protobuf:"bytes,6,rep,name=top_k_fairness_counts,json=topKFairnessCounts,proto3" json:"top_k_fairness_counts,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *SubqueueInfo) Reset() {
|
|
*x = SubqueueInfo{}
|
|
mi := &file_temporal_server_api_persistence_v1_tasks_proto_msgTypes[3]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *SubqueueInfo) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*SubqueueInfo) ProtoMessage() {}
|
|
|
|
func (x *SubqueueInfo) ProtoReflect() protoreflect.Message {
|
|
mi := &file_temporal_server_api_persistence_v1_tasks_proto_msgTypes[3]
|
|
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 SubqueueInfo.ProtoReflect.Descriptor instead.
|
|
func (*SubqueueInfo) Descriptor() ([]byte, []int) {
|
|
return file_temporal_server_api_persistence_v1_tasks_proto_rawDescGZIP(), []int{3}
|
|
}
|
|
|
|
func (x *SubqueueInfo) GetKey() *SubqueueKey {
|
|
if x != nil {
|
|
return x.Key
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *SubqueueInfo) GetAckLevel() int64 {
|
|
if x != nil {
|
|
return x.AckLevel
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *SubqueueInfo) GetFairAckLevel() *v11.FairLevel {
|
|
if x != nil {
|
|
return x.FairAckLevel
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *SubqueueInfo) GetApproximateBacklogCount() int64 {
|
|
if x != nil {
|
|
return x.ApproximateBacklogCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *SubqueueInfo) GetFairMaxReadLevel() *v11.FairLevel {
|
|
if x != nil {
|
|
return x.FairMaxReadLevel
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *SubqueueInfo) GetTopKFairnessCounts() []*FairnessKeyCount {
|
|
if x != nil {
|
|
return x.TopKFairnessCounts
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type FairnessKeyCount struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
|
|
Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *FairnessKeyCount) Reset() {
|
|
*x = FairnessKeyCount{}
|
|
mi := &file_temporal_server_api_persistence_v1_tasks_proto_msgTypes[4]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *FairnessKeyCount) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*FairnessKeyCount) ProtoMessage() {}
|
|
|
|
func (x *FairnessKeyCount) ProtoReflect() protoreflect.Message {
|
|
mi := &file_temporal_server_api_persistence_v1_tasks_proto_msgTypes[4]
|
|
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 FairnessKeyCount.ProtoReflect.Descriptor instead.
|
|
func (*FairnessKeyCount) Descriptor() ([]byte, []int) {
|
|
return file_temporal_server_api_persistence_v1_tasks_proto_rawDescGZIP(), []int{4}
|
|
}
|
|
|
|
func (x *FairnessKeyCount) GetKey() string {
|
|
if x != nil {
|
|
return x.Key
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *FairnessKeyCount) GetCount() int64 {
|
|
if x != nil {
|
|
return x.Count
|
|
}
|
|
return 0
|
|
}
|
|
|
|
type SubqueueKey struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
// Each subqueue contains tasks from only one priority level.
|
|
Priority int32 `protobuf:"varint,1,opt,name=priority,proto3" json:"priority,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *SubqueueKey) Reset() {
|
|
*x = SubqueueKey{}
|
|
mi := &file_temporal_server_api_persistence_v1_tasks_proto_msgTypes[5]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *SubqueueKey) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*SubqueueKey) ProtoMessage() {}
|
|
|
|
func (x *SubqueueKey) ProtoReflect() protoreflect.Message {
|
|
mi := &file_temporal_server_api_persistence_v1_tasks_proto_msgTypes[5]
|
|
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 SubqueueKey.ProtoReflect.Descriptor instead.
|
|
func (*SubqueueKey) Descriptor() ([]byte, []int) {
|
|
return file_temporal_server_api_persistence_v1_tasks_proto_rawDescGZIP(), []int{5}
|
|
}
|
|
|
|
func (x *SubqueueKey) GetPriority() int32 {
|
|
if x != nil {
|
|
return x.Priority
|
|
}
|
|
return 0
|
|
}
|
|
|
|
type PartitionScaleState struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
// Target number of partitions. Zero means managed scaling is not enabled.
|
|
Target int32 `protobuf:"varint,1,opt,name=target,proto3" json:"target,omitempty"`
|
|
// Highest value that target has ever been set to.
|
|
MaxTarget int32 `protobuf:"varint,2,opt,name=max_target,json=maxTarget,proto3" json:"max_target,omitempty"`
|
|
// Version number for target. This should change every time target changes.
|
|
TargetVersion int64 `protobuf:"fixed64,3,opt,name=target_version,json=targetVersion,proto3" json:"target_version,omitempty"`
|
|
// Bit field of partitions that may have backlog. Partition i is represented by:
|
|
// backlog_state[i/64] & (1 << i%64).
|
|
// (-- api-linter: core::0141::forbidden-types=disabled
|
|
//
|
|
// aip.dev/not-precedent: This is a bit field --)
|
|
BacklogState []uint64 `protobuf:"varint,4,rep,packed,name=backlog_state,json=backlogState,proto3" json:"backlog_state,omitempty"`
|
|
// Arbitrary state kept by the scaler implementation.
|
|
// (-- api-linter: core::0146::any=disabled
|
|
//
|
|
// aip.dev/not-precedent: This is not public. --)
|
|
PrivateScalerState *anypb.Any `protobuf:"bytes,100,opt,name=private_scaler_state,json=privateScalerState,proto3" json:"private_scaler_state,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *PartitionScaleState) Reset() {
|
|
*x = PartitionScaleState{}
|
|
mi := &file_temporal_server_api_persistence_v1_tasks_proto_msgTypes[6]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *PartitionScaleState) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*PartitionScaleState) ProtoMessage() {}
|
|
|
|
func (x *PartitionScaleState) ProtoReflect() protoreflect.Message {
|
|
mi := &file_temporal_server_api_persistence_v1_tasks_proto_msgTypes[6]
|
|
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 PartitionScaleState.ProtoReflect.Descriptor instead.
|
|
func (*PartitionScaleState) Descriptor() ([]byte, []int) {
|
|
return file_temporal_server_api_persistence_v1_tasks_proto_rawDescGZIP(), []int{6}
|
|
}
|
|
|
|
func (x *PartitionScaleState) GetTarget() int32 {
|
|
if x != nil {
|
|
return x.Target
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *PartitionScaleState) GetMaxTarget() int32 {
|
|
if x != nil {
|
|
return x.MaxTarget
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *PartitionScaleState) GetTargetVersion() int64 {
|
|
if x != nil {
|
|
return x.TargetVersion
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *PartitionScaleState) GetBacklogState() []uint64 {
|
|
if x != nil {
|
|
return x.BacklogState
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *PartitionScaleState) GetPrivateScalerState() *anypb.Any {
|
|
if x != nil {
|
|
return x.PrivateScalerState
|
|
}
|
|
return nil
|
|
}
|
|
|
|
var File_temporal_server_api_persistence_v1_tasks_proto protoreflect.FileDescriptor
|
|
|
|
const file_temporal_server_api_persistence_v1_tasks_proto_rawDesc = "" +
|
|
"\n" +
|
|
".temporal/server/api/persistence/v1/tasks.proto\x12\"temporal.server.api.persistence.v1\x1a\x19google/protobuf/any.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a$temporal/api/common/v1/message.proto\x1a&temporal/api/enums/v1/task_queue.proto\x1a*temporal/server/api/clock/v1/message.proto\x1a.temporal/server/api/taskqueue/v1/message.proto\"\x8b\x01\n" +
|
|
"\x11AllocatedTaskInfo\x12@\n" +
|
|
"\x04data\x18\x01 \x01(\v2,.temporal.server.api.persistence.v1.TaskInfoR\x04data\x12\x1b\n" +
|
|
"\ttask_pass\x18\x03 \x01(\x03R\btaskPass\x12\x17\n" +
|
|
"\atask_id\x18\x02 \x01(\x03R\x06taskId\"\xac\x04\n" +
|
|
"\bTaskInfo\x12!\n" +
|
|
"\fnamespace_id\x18\x01 \x01(\tR\vnamespaceId\x12\x1f\n" +
|
|
"\vworkflow_id\x18\x02 \x01(\tR\n" +
|
|
"workflowId\x12\x15\n" +
|
|
"\x06run_id\x18\x03 \x01(\tR\x05runId\x12,\n" +
|
|
"\x12scheduled_event_id\x18\x04 \x01(\x03R\x10scheduledEventId\x12;\n" +
|
|
"\vcreate_time\x18\x05 \x01(\v2\x1a.google.protobuf.TimestampR\n" +
|
|
"createTime\x12;\n" +
|
|
"\vexpiry_time\x18\x06 \x01(\v2\x1a.google.protobuf.TimestampR\n" +
|
|
"expiryTime\x12?\n" +
|
|
"\x05clock\x18\a \x01(\v2).temporal.server.api.clock.v1.VectorClockR\x05clock\x12c\n" +
|
|
"\x11version_directive\x18\b \x01(\v26.temporal.server.api.taskqueue.v1.TaskVersionDirectiveR\x10versionDirective\x12\x14\n" +
|
|
"\x05stamp\x18\t \x01(\x05R\x05stamp\x12<\n" +
|
|
"\bpriority\x18\n" +
|
|
" \x01(\v2 .temporal.api.common.v1.PriorityR\bpriority\x12#\n" +
|
|
"\rcomponent_ref\x18\v \x01(\fR\fcomponentRef\"\x84\x05\n" +
|
|
"\rTaskQueueInfo\x12!\n" +
|
|
"\fnamespace_id\x18\x01 \x01(\tR\vnamespaceId\x12\x12\n" +
|
|
"\x04name\x18\x02 \x01(\tR\x04name\x12A\n" +
|
|
"\ttask_type\x18\x03 \x01(\x0e2$.temporal.api.enums.v1.TaskQueueTypeR\btaskType\x128\n" +
|
|
"\x04kind\x18\x04 \x01(\x0e2$.temporal.api.enums.v1.TaskQueueKindR\x04kind\x12\x1b\n" +
|
|
"\tack_level\x18\x05 \x01(\x03R\backLevel\x12;\n" +
|
|
"\vexpiry_time\x18\x06 \x01(\v2\x1a.google.protobuf.TimestampR\n" +
|
|
"expiryTime\x12D\n" +
|
|
"\x10last_update_time\x18\a \x01(\v2\x1a.google.protobuf.TimestampR\x0elastUpdateTime\x12:\n" +
|
|
"\x19approximate_backlog_count\x18\b \x01(\x03R\x17approximateBacklogCount\x12N\n" +
|
|
"\tsubqueues\x18\t \x03(\v20.temporal.server.api.persistence.v1.SubqueueInfoR\tsubqueues\x12&\n" +
|
|
"\x0fother_has_tasks\x18\n" +
|
|
" \x01(\bR\rotherHasTasks\x12k\n" +
|
|
"\x15partition_scale_state\x18\v \x01(\v27.temporal.server.api.persistence.v1.PartitionScaleStateR\x13partitionScaleState\"\xc2\x03\n" +
|
|
"\fSubqueueInfo\x12A\n" +
|
|
"\x03key\x18\x01 \x01(\v2/.temporal.server.api.persistence.v1.SubqueueKeyR\x03key\x12\x1b\n" +
|
|
"\tack_level\x18\x02 \x01(\x03R\backLevel\x12Q\n" +
|
|
"\x0efair_ack_level\x18\x04 \x01(\v2+.temporal.server.api.taskqueue.v1.FairLevelR\ffairAckLevel\x12:\n" +
|
|
"\x19approximate_backlog_count\x18\x03 \x01(\x03R\x17approximateBacklogCount\x12Z\n" +
|
|
"\x13fair_max_read_level\x18\x05 \x01(\v2+.temporal.server.api.taskqueue.v1.FairLevelR\x10fairMaxReadLevel\x12g\n" +
|
|
"\x15top_k_fairness_counts\x18\x06 \x03(\v24.temporal.server.api.persistence.v1.FairnessKeyCountR\x12topKFairnessCounts\":\n" +
|
|
"\x10FairnessKeyCount\x12\x10\n" +
|
|
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
|
|
"\x05count\x18\x02 \x01(\x03R\x05count\")\n" +
|
|
"\vSubqueueKey\x12\x1a\n" +
|
|
"\bpriority\x18\x01 \x01(\x05R\bpriority\"\xe0\x01\n" +
|
|
"\x13PartitionScaleState\x12\x16\n" +
|
|
"\x06target\x18\x01 \x01(\x05R\x06target\x12\x1d\n" +
|
|
"\n" +
|
|
"max_target\x18\x02 \x01(\x05R\tmaxTarget\x12%\n" +
|
|
"\x0etarget_version\x18\x03 \x01(\x10R\rtargetVersion\x12#\n" +
|
|
"\rbacklog_state\x18\x04 \x03(\x04R\fbacklogState\x12F\n" +
|
|
"\x14private_scaler_state\x18d \x01(\v2\x14.google.protobuf.AnyR\x12privateScalerStateB6Z4go.temporal.io/server/api/persistence/v1;persistenceb\x06proto3"
|
|
|
|
var (
|
|
file_temporal_server_api_persistence_v1_tasks_proto_rawDescOnce sync.Once
|
|
file_temporal_server_api_persistence_v1_tasks_proto_rawDescData []byte
|
|
)
|
|
|
|
func file_temporal_server_api_persistence_v1_tasks_proto_rawDescGZIP() []byte {
|
|
file_temporal_server_api_persistence_v1_tasks_proto_rawDescOnce.Do(func() {
|
|
file_temporal_server_api_persistence_v1_tasks_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_temporal_server_api_persistence_v1_tasks_proto_rawDesc), len(file_temporal_server_api_persistence_v1_tasks_proto_rawDesc)))
|
|
})
|
|
return file_temporal_server_api_persistence_v1_tasks_proto_rawDescData
|
|
}
|
|
|
|
var file_temporal_server_api_persistence_v1_tasks_proto_msgTypes = make([]protoimpl.MessageInfo, 7)
|
|
var file_temporal_server_api_persistence_v1_tasks_proto_goTypes = []any{
|
|
(*AllocatedTaskInfo)(nil), // 0: temporal.server.api.persistence.v1.AllocatedTaskInfo
|
|
(*TaskInfo)(nil), // 1: temporal.server.api.persistence.v1.TaskInfo
|
|
(*TaskQueueInfo)(nil), // 2: temporal.server.api.persistence.v1.TaskQueueInfo
|
|
(*SubqueueInfo)(nil), // 3: temporal.server.api.persistence.v1.SubqueueInfo
|
|
(*FairnessKeyCount)(nil), // 4: temporal.server.api.persistence.v1.FairnessKeyCount
|
|
(*SubqueueKey)(nil), // 5: temporal.server.api.persistence.v1.SubqueueKey
|
|
(*PartitionScaleState)(nil), // 6: temporal.server.api.persistence.v1.PartitionScaleState
|
|
(*timestamppb.Timestamp)(nil), // 7: google.protobuf.Timestamp
|
|
(*v1.VectorClock)(nil), // 8: temporal.server.api.clock.v1.VectorClock
|
|
(*v11.TaskVersionDirective)(nil), // 9: temporal.server.api.taskqueue.v1.TaskVersionDirective
|
|
(*v12.Priority)(nil), // 10: temporal.api.common.v1.Priority
|
|
(v13.TaskQueueType)(0), // 11: temporal.api.enums.v1.TaskQueueType
|
|
(v13.TaskQueueKind)(0), // 12: temporal.api.enums.v1.TaskQueueKind
|
|
(*v11.FairLevel)(nil), // 13: temporal.server.api.taskqueue.v1.FairLevel
|
|
(*anypb.Any)(nil), // 14: google.protobuf.Any
|
|
}
|
|
var file_temporal_server_api_persistence_v1_tasks_proto_depIdxs = []int32{
|
|
1, // 0: temporal.server.api.persistence.v1.AllocatedTaskInfo.data:type_name -> temporal.server.api.persistence.v1.TaskInfo
|
|
7, // 1: temporal.server.api.persistence.v1.TaskInfo.create_time:type_name -> google.protobuf.Timestamp
|
|
7, // 2: temporal.server.api.persistence.v1.TaskInfo.expiry_time:type_name -> google.protobuf.Timestamp
|
|
8, // 3: temporal.server.api.persistence.v1.TaskInfo.clock:type_name -> temporal.server.api.clock.v1.VectorClock
|
|
9, // 4: temporal.server.api.persistence.v1.TaskInfo.version_directive:type_name -> temporal.server.api.taskqueue.v1.TaskVersionDirective
|
|
10, // 5: temporal.server.api.persistence.v1.TaskInfo.priority:type_name -> temporal.api.common.v1.Priority
|
|
11, // 6: temporal.server.api.persistence.v1.TaskQueueInfo.task_type:type_name -> temporal.api.enums.v1.TaskQueueType
|
|
12, // 7: temporal.server.api.persistence.v1.TaskQueueInfo.kind:type_name -> temporal.api.enums.v1.TaskQueueKind
|
|
7, // 8: temporal.server.api.persistence.v1.TaskQueueInfo.expiry_time:type_name -> google.protobuf.Timestamp
|
|
7, // 9: temporal.server.api.persistence.v1.TaskQueueInfo.last_update_time:type_name -> google.protobuf.Timestamp
|
|
3, // 10: temporal.server.api.persistence.v1.TaskQueueInfo.subqueues:type_name -> temporal.server.api.persistence.v1.SubqueueInfo
|
|
6, // 11: temporal.server.api.persistence.v1.TaskQueueInfo.partition_scale_state:type_name -> temporal.server.api.persistence.v1.PartitionScaleState
|
|
5, // 12: temporal.server.api.persistence.v1.SubqueueInfo.key:type_name -> temporal.server.api.persistence.v1.SubqueueKey
|
|
13, // 13: temporal.server.api.persistence.v1.SubqueueInfo.fair_ack_level:type_name -> temporal.server.api.taskqueue.v1.FairLevel
|
|
13, // 14: temporal.server.api.persistence.v1.SubqueueInfo.fair_max_read_level:type_name -> temporal.server.api.taskqueue.v1.FairLevel
|
|
4, // 15: temporal.server.api.persistence.v1.SubqueueInfo.top_k_fairness_counts:type_name -> temporal.server.api.persistence.v1.FairnessKeyCount
|
|
14, // 16: temporal.server.api.persistence.v1.PartitionScaleState.private_scaler_state:type_name -> google.protobuf.Any
|
|
17, // [17:17] is the sub-list for method output_type
|
|
17, // [17:17] is the sub-list for method input_type
|
|
17, // [17:17] is the sub-list for extension type_name
|
|
17, // [17:17] is the sub-list for extension extendee
|
|
0, // [0:17] is the sub-list for field type_name
|
|
}
|
|
|
|
func init() { file_temporal_server_api_persistence_v1_tasks_proto_init() }
|
|
func file_temporal_server_api_persistence_v1_tasks_proto_init() {
|
|
if File_temporal_server_api_persistence_v1_tasks_proto != nil {
|
|
return
|
|
}
|
|
type x struct{}
|
|
out := protoimpl.TypeBuilder{
|
|
File: protoimpl.DescBuilder{
|
|
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
|
RawDescriptor: unsafe.Slice(unsafe.StringData(file_temporal_server_api_persistence_v1_tasks_proto_rawDesc), len(file_temporal_server_api_persistence_v1_tasks_proto_rawDesc)),
|
|
NumEnums: 0,
|
|
NumMessages: 7,
|
|
NumExtensions: 0,
|
|
NumServices: 0,
|
|
},
|
|
GoTypes: file_temporal_server_api_persistence_v1_tasks_proto_goTypes,
|
|
DependencyIndexes: file_temporal_server_api_persistence_v1_tasks_proto_depIdxs,
|
|
MessageInfos: file_temporal_server_api_persistence_v1_tasks_proto_msgTypes,
|
|
}.Build()
|
|
File_temporal_server_api_persistence_v1_tasks_proto = out.File
|
|
file_temporal_server_api_persistence_v1_tasks_proto_goTypes = nil
|
|
file_temporal_server_api_persistence_v1_tasks_proto_depIdxs = nil
|
|
}
|