feat: support batch ddl (#135)

* feat: support batch create table

* feat: ddl batch

* feat: batch ddl task

* feat: response table ids
This commit is contained in:
JeremyHi
2024-01-22 14:39:21 +08:00
committed by GitHub
parent 65b008f018
commit 519b1d0757
9 changed files with 10969 additions and 357 deletions
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+394 -119
View File
@@ -144,6 +144,53 @@ func (x *CreateTableTask) GetTableInfo() []byte {
return nil
}
type CreateTableTasks struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Tasks []*CreateTableTask `protobuf:"bytes,1,rep,name=tasks,proto3" json:"tasks,omitempty"`
}
func (x *CreateTableTasks) Reset() {
*x = CreateTableTasks{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CreateTableTasks) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CreateTableTasks) ProtoMessage() {}
func (x *CreateTableTasks) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CreateTableTasks.ProtoReflect.Descriptor instead.
func (*CreateTableTasks) Descriptor() ([]byte, []int) {
return file_greptime_v1_meta_ddl_proto_rawDescGZIP(), []int{1}
}
func (x *CreateTableTasks) GetTasks() []*CreateTableTask {
if x != nil {
return x.Tasks
}
return nil
}
type DropTableTask struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -155,7 +202,7 @@ type DropTableTask struct {
func (x *DropTableTask) Reset() {
*x = DropTableTask{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[1]
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -168,7 +215,7 @@ func (x *DropTableTask) String() string {
func (*DropTableTask) ProtoMessage() {}
func (x *DropTableTask) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[1]
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -181,7 +228,7 @@ func (x *DropTableTask) ProtoReflect() protoreflect.Message {
// Deprecated: Use DropTableTask.ProtoReflect.Descriptor instead.
func (*DropTableTask) Descriptor() ([]byte, []int) {
return file_greptime_v1_meta_ddl_proto_rawDescGZIP(), []int{1}
return file_greptime_v1_meta_ddl_proto_rawDescGZIP(), []int{2}
}
func (x *DropTableTask) GetDropTable() *v1.DropTableExpr {
@@ -191,6 +238,53 @@ func (x *DropTableTask) GetDropTable() *v1.DropTableExpr {
return nil
}
type DropTableTasks struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Tasks []*DropTableTask `protobuf:"bytes,1,rep,name=tasks,proto3" json:"tasks,omitempty"`
}
func (x *DropTableTasks) Reset() {
*x = DropTableTasks{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DropTableTasks) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DropTableTasks) ProtoMessage() {}
func (x *DropTableTasks) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DropTableTasks.ProtoReflect.Descriptor instead.
func (*DropTableTasks) Descriptor() ([]byte, []int) {
return file_greptime_v1_meta_ddl_proto_rawDescGZIP(), []int{3}
}
func (x *DropTableTasks) GetTasks() []*DropTableTask {
if x != nil {
return x.Tasks
}
return nil
}
type AlterTableTask struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -202,7 +296,7 @@ type AlterTableTask struct {
func (x *AlterTableTask) Reset() {
*x = AlterTableTask{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[2]
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -215,7 +309,7 @@ func (x *AlterTableTask) String() string {
func (*AlterTableTask) ProtoMessage() {}
func (x *AlterTableTask) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[2]
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -228,7 +322,7 @@ func (x *AlterTableTask) ProtoReflect() protoreflect.Message {
// Deprecated: Use AlterTableTask.ProtoReflect.Descriptor instead.
func (*AlterTableTask) Descriptor() ([]byte, []int) {
return file_greptime_v1_meta_ddl_proto_rawDescGZIP(), []int{2}
return file_greptime_v1_meta_ddl_proto_rawDescGZIP(), []int{4}
}
func (x *AlterTableTask) GetAlterTable() *v1.AlterExpr {
@@ -238,6 +332,53 @@ func (x *AlterTableTask) GetAlterTable() *v1.AlterExpr {
return nil
}
type AlterTableTasks struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Tasks []*AlterTableTask `protobuf:"bytes,1,rep,name=tasks,proto3" json:"tasks,omitempty"`
}
func (x *AlterTableTasks) Reset() {
*x = AlterTableTasks{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AlterTableTasks) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AlterTableTasks) ProtoMessage() {}
func (x *AlterTableTasks) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use AlterTableTasks.ProtoReflect.Descriptor instead.
func (*AlterTableTasks) Descriptor() ([]byte, []int) {
return file_greptime_v1_meta_ddl_proto_rawDescGZIP(), []int{5}
}
func (x *AlterTableTasks) GetTasks() []*AlterTableTask {
if x != nil {
return x.Tasks
}
return nil
}
type TruncateTableTask struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -249,7 +390,7 @@ type TruncateTableTask struct {
func (x *TruncateTableTask) Reset() {
*x = TruncateTableTask{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[3]
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -262,7 +403,7 @@ func (x *TruncateTableTask) String() string {
func (*TruncateTableTask) ProtoMessage() {}
func (x *TruncateTableTask) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[3]
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -275,7 +416,7 @@ func (x *TruncateTableTask) ProtoReflect() protoreflect.Message {
// Deprecated: Use TruncateTableTask.ProtoReflect.Descriptor instead.
func (*TruncateTableTask) Descriptor() ([]byte, []int) {
return file_greptime_v1_meta_ddl_proto_rawDescGZIP(), []int{3}
return file_greptime_v1_meta_ddl_proto_rawDescGZIP(), []int{6}
}
func (x *TruncateTableTask) GetTruncateTable() *v1.TruncateTableExpr {
@@ -297,13 +438,16 @@ type SubmitDdlTaskRequest struct {
// *SubmitDdlTaskRequest_DropTableTask
// *SubmitDdlTaskRequest_AlterTableTask
// *SubmitDdlTaskRequest_TruncateTableTask
// *SubmitDdlTaskRequest_CreateTableTasks
// *SubmitDdlTaskRequest_DropTableTasks
// *SubmitDdlTaskRequest_AlterTableTasks
Task isSubmitDdlTaskRequest_Task `protobuf_oneof:"task"`
}
func (x *SubmitDdlTaskRequest) Reset() {
*x = SubmitDdlTaskRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[4]
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -316,7 +460,7 @@ func (x *SubmitDdlTaskRequest) String() string {
func (*SubmitDdlTaskRequest) ProtoMessage() {}
func (x *SubmitDdlTaskRequest) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[4]
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -329,7 +473,7 @@ func (x *SubmitDdlTaskRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use SubmitDdlTaskRequest.ProtoReflect.Descriptor instead.
func (*SubmitDdlTaskRequest) Descriptor() ([]byte, []int) {
return file_greptime_v1_meta_ddl_proto_rawDescGZIP(), []int{4}
return file_greptime_v1_meta_ddl_proto_rawDescGZIP(), []int{7}
}
func (x *SubmitDdlTaskRequest) GetHeader() *RequestHeader {
@@ -374,6 +518,27 @@ func (x *SubmitDdlTaskRequest) GetTruncateTableTask() *TruncateTableTask {
return nil
}
func (x *SubmitDdlTaskRequest) GetCreateTableTasks() *CreateTableTasks {
if x, ok := x.GetTask().(*SubmitDdlTaskRequest_CreateTableTasks); ok {
return x.CreateTableTasks
}
return nil
}
func (x *SubmitDdlTaskRequest) GetDropTableTasks() *DropTableTasks {
if x, ok := x.GetTask().(*SubmitDdlTaskRequest_DropTableTasks); ok {
return x.DropTableTasks
}
return nil
}
func (x *SubmitDdlTaskRequest) GetAlterTableTasks() *AlterTableTasks {
if x, ok := x.GetTask().(*SubmitDdlTaskRequest_AlterTableTasks); ok {
return x.AlterTableTasks
}
return nil
}
type isSubmitDdlTaskRequest_Task interface {
isSubmitDdlTaskRequest_Task()
}
@@ -394,6 +559,18 @@ type SubmitDdlTaskRequest_TruncateTableTask struct {
TruncateTableTask *TruncateTableTask `protobuf:"bytes,5,opt,name=truncate_table_task,json=truncateTableTask,proto3,oneof"`
}
type SubmitDdlTaskRequest_CreateTableTasks struct {
CreateTableTasks *CreateTableTasks `protobuf:"bytes,6,opt,name=create_table_tasks,json=createTableTasks,proto3,oneof"`
}
type SubmitDdlTaskRequest_DropTableTasks struct {
DropTableTasks *DropTableTasks `protobuf:"bytes,7,opt,name=drop_table_tasks,json=dropTableTasks,proto3,oneof"`
}
type SubmitDdlTaskRequest_AlterTableTasks struct {
AlterTableTasks *AlterTableTasks `protobuf:"bytes,8,opt,name=alter_table_tasks,json=alterTableTasks,proto3,oneof"`
}
func (*SubmitDdlTaskRequest_CreateTableTask) isSubmitDdlTaskRequest_Task() {}
func (*SubmitDdlTaskRequest_DropTableTask) isSubmitDdlTaskRequest_Task() {}
@@ -402,6 +579,12 @@ func (*SubmitDdlTaskRequest_AlterTableTask) isSubmitDdlTaskRequest_Task() {}
func (*SubmitDdlTaskRequest_TruncateTableTask) isSubmitDdlTaskRequest_Task() {}
func (*SubmitDdlTaskRequest_CreateTableTasks) isSubmitDdlTaskRequest_Task() {}
func (*SubmitDdlTaskRequest_DropTableTasks) isSubmitDdlTaskRequest_Task() {}
func (*SubmitDdlTaskRequest_AlterTableTasks) isSubmitDdlTaskRequest_Task() {}
type SubmitDdlTaskResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -411,13 +594,16 @@ type SubmitDdlTaskResponse struct {
// Key is the identifier for the ddl task.
Key []byte `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"`
// Returns if table created.
// TODO(jeremy): remove it?
TableId *TableId `protobuf:"bytes,4,opt,name=table_id,json=tableId,proto3" json:"table_id,omitempty"`
// Returns if the tables created.
TableIds []*TableId `protobuf:"bytes,5,rep,name=table_ids,json=tableIds,proto3" json:"table_ids,omitempty"`
}
func (x *SubmitDdlTaskResponse) Reset() {
*x = SubmitDdlTaskResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[5]
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -430,7 +616,7 @@ func (x *SubmitDdlTaskResponse) String() string {
func (*SubmitDdlTaskResponse) ProtoMessage() {}
func (x *SubmitDdlTaskResponse) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[5]
mi := &file_greptime_v1_meta_ddl_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -443,7 +629,7 @@ func (x *SubmitDdlTaskResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use SubmitDdlTaskResponse.ProtoReflect.Descriptor instead.
func (*SubmitDdlTaskResponse) Descriptor() ([]byte, []int) {
return file_greptime_v1_meta_ddl_proto_rawDescGZIP(), []int{5}
return file_greptime_v1_meta_ddl_proto_rawDescGZIP(), []int{8}
}
func (x *SubmitDdlTaskResponse) GetHeader() *ResponseHeader {
@@ -467,6 +653,13 @@ func (x *SubmitDdlTaskResponse) GetTableId() *TableId {
return nil
}
func (x *SubmitDdlTaskResponse) GetTableIds() []*TableId {
if x != nil {
return x.TableIds
}
return nil
}
var File_greptime_v1_meta_ddl_proto protoreflect.FileDescriptor
var file_greptime_v1_meta_ddl_proto_rawDesc = []byte{
@@ -489,71 +682,104 @@ var file_greptime_v1_meta_ddl_proto_rawDesc = []byte{
0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x69, 0x6e,
0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x49,
0x6e, 0x66, 0x6f, 0x22, 0x4a, 0x0a, 0x0d, 0x44, 0x72, 0x6f, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65,
0x54, 0x61, 0x73, 0x6b, 0x12, 0x39, 0x0a, 0x0a, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x74, 0x61, 0x62,
0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74,
0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65,
0x45, 0x78, 0x70, 0x72, 0x52, 0x09, 0x64, 0x72, 0x6f, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x22,
0x49, 0x0a, 0x0e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73,
0x6b, 0x12, 0x37, 0x0a, 0x0b, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d,
0x65, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x78, 0x70, 0x72, 0x52, 0x0a,
0x61, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x5a, 0x0a, 0x11, 0x54, 0x72,
0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x12,
0x45, 0x0a, 0x0e, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69,
0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x54, 0x61,
0x62, 0x6c, 0x65, 0x45, 0x78, 0x70, 0x72, 0x52, 0x0d, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74,
0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x98, 0x03, 0x0a, 0x14, 0x53, 0x75, 0x62, 0x6d, 0x69,
0x74, 0x44, 0x64, 0x6c, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x37, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x1f, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65,
0x74, 0x61, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72,
0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x4f, 0x0a, 0x11, 0x63, 0x72, 0x65, 0x61,
0x74, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76,
0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62,
0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x48, 0x00, 0x52, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x49, 0x0a, 0x0f, 0x64, 0x72, 0x6f,
0x70, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x61, 0x73, 0x6b, 0x18, 0x03, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31,
0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54,
0x61, 0x73, 0x6b, 0x48, 0x00, 0x52, 0x0d, 0x64, 0x72, 0x6f, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65,
0x54, 0x61, 0x73, 0x6b, 0x12, 0x4c, 0x0a, 0x10, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x61,
0x62, 0x6c, 0x65, 0x5f, 0x74, 0x61, 0x73, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20,
0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74,
0x61, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b,
0x48, 0x00, 0x52, 0x0e, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61,
0x73, 0x6b, 0x12, 0x55, 0x0a, 0x13, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x74,
0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x61, 0x73, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x23, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65,
0x74, 0x61, 0x2e, 0x54, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65,
0x54, 0x61, 0x73, 0x6b, 0x48, 0x00, 0x52, 0x11, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65,
0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x42, 0x06, 0x0a, 0x04, 0x74, 0x61, 0x73,
0x6b, 0x22, 0x99, 0x01, 0x0a, 0x15, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x44, 0x64, 0x6c, 0x54,
0x61, 0x73, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x06, 0x68,
0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x72,
0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68,
0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0c, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x34, 0x0a, 0x08, 0x74, 0x61, 0x62, 0x6c, 0x65,
0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x72, 0x65, 0x70,
0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62,
0x6c, 0x65, 0x49, 0x64, 0x52, 0x07, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x64, 0x2a, 0x23, 0x0a,
0x0b, 0x44, 0x64, 0x6c, 0x54, 0x61, 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06,
0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x72, 0x6f, 0x70,
0x10, 0x01, 0x32, 0x6b, 0x0a, 0x07, 0x44, 0x64, 0x6c, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x60, 0x0a,
0x0d, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x44, 0x64, 0x6c, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x26,
0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74,
0x61, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x44, 0x64, 0x6c, 0x54, 0x61, 0x73, 0x6b, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d,
0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74,
0x44, 0x64, 0x6c, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42,
0x3c, 0x5a, 0x3a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x47, 0x72,
0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x2f, 0x67, 0x72, 0x65, 0x70, 0x74,
0x69, 0x6d, 0x65, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x72, 0x65,
0x70, 0x74, 0x69, 0x6d, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x65, 0x74, 0x61, 0x62, 0x06, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x33,
0x6e, 0x66, 0x6f, 0x22, 0x4b, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62,
0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x37, 0x0a, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73,
0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d,
0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73,
0x22, 0x4a, 0x0a, 0x0d, 0x44, 0x72, 0x6f, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73,
0x6b, 0x12, 0x39, 0x0a, 0x0a, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65,
0x2e, 0x76, 0x31, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x78, 0x70,
0x72, 0x52, 0x09, 0x64, 0x72, 0x6f, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x47, 0x0a, 0x0e,
0x44, 0x72, 0x6f, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x35,
0x0a, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e,
0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61,
0x2e, 0x44, 0x72, 0x6f, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x05,
0x74, 0x61, 0x73, 0x6b, 0x73, 0x22, 0x49, 0x0a, 0x0e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61,
0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x37, 0x0a, 0x0b, 0x61, 0x6c, 0x74, 0x65, 0x72,
0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67,
0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72,
0x45, 0x78, 0x70, 0x72, 0x52, 0x0a, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65,
0x22, 0x49, 0x0a, 0x0f, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61,
0x73, 0x6b, 0x73, 0x12, 0x36, 0x0a, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31,
0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65,
0x54, 0x61, 0x73, 0x6b, 0x52, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x22, 0x5a, 0x0a, 0x11, 0x54,
0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b,
0x12, 0x45, 0x0a, 0x0e, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x61, 0x62,
0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74,
0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x54,
0x61, 0x62, 0x6c, 0x65, 0x45, 0x78, 0x70, 0x72, 0x52, 0x0d, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61,
0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x8b, 0x05, 0x0a, 0x14, 0x53, 0x75, 0x62, 0x6d,
0x69, 0x74, 0x44, 0x64, 0x6c, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x37, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x1f, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d,
0x65, 0x74, 0x61, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65,
0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x4f, 0x0a, 0x11, 0x63, 0x72, 0x65,
0x61, 0x74, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x61, 0x73, 0x6b, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e,
0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x61,
0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x48, 0x00, 0x52, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74,
0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x49, 0x0a, 0x0f, 0x64, 0x72,
0x6f, 0x70, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x61, 0x73, 0x6b, 0x18, 0x03, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76,
0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65,
0x54, 0x61, 0x73, 0x6b, 0x48, 0x00, 0x52, 0x0d, 0x64, 0x72, 0x6f, 0x70, 0x54, 0x61, 0x62, 0x6c,
0x65, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x4c, 0x0a, 0x10, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x74,
0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x61, 0x73, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x20, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65,
0x74, 0x61, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73,
0x6b, 0x48, 0x00, 0x52, 0x0e, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54,
0x61, 0x73, 0x6b, 0x12, 0x55, 0x0a, 0x13, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x5f,
0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x61, 0x73, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x23, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d,
0x65, 0x74, 0x61, 0x2e, 0x54, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c,
0x65, 0x54, 0x61, 0x73, 0x6b, 0x48, 0x00, 0x52, 0x11, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74,
0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x52, 0x0a, 0x12, 0x63, 0x72,
0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x61, 0x73, 0x6b, 0x73,
0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d,
0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x48, 0x00, 0x52, 0x10, 0x63, 0x72,
0x65, 0x61, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x4c,
0x0a, 0x10, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x61, 0x73,
0x6b, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74,
0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x44, 0x72, 0x6f, 0x70,
0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x48, 0x00, 0x52, 0x0e, 0x64, 0x72,
0x6f, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x4f, 0x0a, 0x11,
0x61, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x61, 0x73, 0x6b,
0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69,
0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72,
0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x48, 0x00, 0x52, 0x0f, 0x61, 0x6c,
0x74, 0x65, 0x72, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x73, 0x42, 0x06, 0x0a,
0x04, 0x74, 0x61, 0x73, 0x6b, 0x22, 0xd1, 0x01, 0x0a, 0x15, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74,
0x44, 0x64, 0x6c, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x38, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x20, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65,
0x74, 0x61, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65,
0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x34, 0x0a, 0x08, 0x74,
0x61, 0x62, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e,
0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61,
0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x64, 0x52, 0x07, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x49,
0x64, 0x12, 0x36, 0x0a, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x05,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e,
0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x64, 0x52,
0x08, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x64, 0x73, 0x2a, 0x23, 0x0a, 0x0b, 0x44, 0x64, 0x6c,
0x54, 0x61, 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x72, 0x65, 0x61,
0x74, 0x65, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x72, 0x6f, 0x70, 0x10, 0x01, 0x32, 0x6b,
0x0a, 0x07, 0x44, 0x64, 0x6c, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x60, 0x0a, 0x0d, 0x53, 0x75, 0x62,
0x6d, 0x69, 0x74, 0x44, 0x64, 0x6c, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x26, 0x2e, 0x67, 0x72, 0x65,
0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x53, 0x75,
0x62, 0x6d, 0x69, 0x74, 0x44, 0x64, 0x6c, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31,
0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x44, 0x64, 0x6c, 0x54,
0x61, 0x73, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x3c, 0x5a, 0x3a, 0x67,
0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x47, 0x72, 0x65, 0x70, 0x74, 0x69,
0x6d, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x2f, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2d,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d,
0x65, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x65, 0x74, 0x61, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x33,
}
var (
@@ -569,44 +795,54 @@ func file_greptime_v1_meta_ddl_proto_rawDescGZIP() []byte {
}
var file_greptime_v1_meta_ddl_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_greptime_v1_meta_ddl_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
var file_greptime_v1_meta_ddl_proto_msgTypes = make([]protoimpl.MessageInfo, 9)
var file_greptime_v1_meta_ddl_proto_goTypes = []interface{}{
(DdlTaskType)(0), // 0: greptime.v1.meta.DdlTaskType
(*CreateTableTask)(nil), // 1: greptime.v1.meta.CreateTableTask
(*DropTableTask)(nil), // 2: greptime.v1.meta.DropTableTask
(*AlterTableTask)(nil), // 3: greptime.v1.meta.AlterTableTask
(*TruncateTableTask)(nil), // 4: greptime.v1.meta.TruncateTableTask
(*SubmitDdlTaskRequest)(nil), // 5: greptime.v1.meta.SubmitDdlTaskRequest
(*SubmitDdlTaskResponse)(nil), // 6: greptime.v1.meta.SubmitDdlTaskResponse
(*v1.CreateTableExpr)(nil), // 7: greptime.v1.CreateTableExpr
(*Partition)(nil), // 8: greptime.v1.meta.Partition
(*v1.DropTableExpr)(nil), // 9: greptime.v1.DropTableExpr
(*v1.AlterExpr)(nil), // 10: greptime.v1.AlterExpr
(*v1.TruncateTableExpr)(nil), // 11: greptime.v1.TruncateTableExpr
(*RequestHeader)(nil), // 12: greptime.v1.meta.RequestHeader
(*ResponseHeader)(nil), // 13: greptime.v1.meta.ResponseHeader
(*TableId)(nil), // 14: greptime.v1.meta.TableId
(*CreateTableTasks)(nil), // 2: greptime.v1.meta.CreateTableTasks
(*DropTableTask)(nil), // 3: greptime.v1.meta.DropTableTask
(*DropTableTasks)(nil), // 4: greptime.v1.meta.DropTableTasks
(*AlterTableTask)(nil), // 5: greptime.v1.meta.AlterTableTask
(*AlterTableTasks)(nil), // 6: greptime.v1.meta.AlterTableTasks
(*TruncateTableTask)(nil), // 7: greptime.v1.meta.TruncateTableTask
(*SubmitDdlTaskRequest)(nil), // 8: greptime.v1.meta.SubmitDdlTaskRequest
(*SubmitDdlTaskResponse)(nil), // 9: greptime.v1.meta.SubmitDdlTaskResponse
(*v1.CreateTableExpr)(nil), // 10: greptime.v1.CreateTableExpr
(*Partition)(nil), // 11: greptime.v1.meta.Partition
(*v1.DropTableExpr)(nil), // 12: greptime.v1.DropTableExpr
(*v1.AlterExpr)(nil), // 13: greptime.v1.AlterExpr
(*v1.TruncateTableExpr)(nil), // 14: greptime.v1.TruncateTableExpr
(*RequestHeader)(nil), // 15: greptime.v1.meta.RequestHeader
(*ResponseHeader)(nil), // 16: greptime.v1.meta.ResponseHeader
(*TableId)(nil), // 17: greptime.v1.meta.TableId
}
var file_greptime_v1_meta_ddl_proto_depIdxs = []int32{
7, // 0: greptime.v1.meta.CreateTableTask.create_table:type_name -> greptime.v1.CreateTableExpr
8, // 1: greptime.v1.meta.CreateTableTask.partitions:type_name -> greptime.v1.meta.Partition
9, // 2: greptime.v1.meta.DropTableTask.drop_table:type_name -> greptime.v1.DropTableExpr
10, // 3: greptime.v1.meta.AlterTableTask.alter_table:type_name -> greptime.v1.AlterExpr
11, // 4: greptime.v1.meta.TruncateTableTask.truncate_table:type_name -> greptime.v1.TruncateTableExpr
12, // 5: greptime.v1.meta.SubmitDdlTaskRequest.header:type_name -> greptime.v1.meta.RequestHeader
1, // 6: greptime.v1.meta.SubmitDdlTaskRequest.create_table_task:type_name -> greptime.v1.meta.CreateTableTask
2, // 7: greptime.v1.meta.SubmitDdlTaskRequest.drop_table_task:type_name -> greptime.v1.meta.DropTableTask
3, // 8: greptime.v1.meta.SubmitDdlTaskRequest.alter_table_task:type_name -> greptime.v1.meta.AlterTableTask
4, // 9: greptime.v1.meta.SubmitDdlTaskRequest.truncate_table_task:type_name -> greptime.v1.meta.TruncateTableTask
13, // 10: greptime.v1.meta.SubmitDdlTaskResponse.header:type_name -> greptime.v1.meta.ResponseHeader
14, // 11: greptime.v1.meta.SubmitDdlTaskResponse.table_id:type_name -> greptime.v1.meta.TableId
5, // 12: greptime.v1.meta.DdlTask.SubmitDdlTask:input_type -> greptime.v1.meta.SubmitDdlTaskRequest
6, // 13: greptime.v1.meta.DdlTask.SubmitDdlTask:output_type -> greptime.v1.meta.SubmitDdlTaskResponse
13, // [13:14] is the sub-list for method output_type
12, // [12:13] is the sub-list for method input_type
12, // [12:12] is the sub-list for extension type_name
12, // [12:12] is the sub-list for extension extendee
0, // [0:12] is the sub-list for field type_name
10, // 0: greptime.v1.meta.CreateTableTask.create_table:type_name -> greptime.v1.CreateTableExpr
11, // 1: greptime.v1.meta.CreateTableTask.partitions:type_name -> greptime.v1.meta.Partition
1, // 2: greptime.v1.meta.CreateTableTasks.tasks:type_name -> greptime.v1.meta.CreateTableTask
12, // 3: greptime.v1.meta.DropTableTask.drop_table:type_name -> greptime.v1.DropTableExpr
3, // 4: greptime.v1.meta.DropTableTasks.tasks:type_name -> greptime.v1.meta.DropTableTask
13, // 5: greptime.v1.meta.AlterTableTask.alter_table:type_name -> greptime.v1.AlterExpr
5, // 6: greptime.v1.meta.AlterTableTasks.tasks:type_name -> greptime.v1.meta.AlterTableTask
14, // 7: greptime.v1.meta.TruncateTableTask.truncate_table:type_name -> greptime.v1.TruncateTableExpr
15, // 8: greptime.v1.meta.SubmitDdlTaskRequest.header:type_name -> greptime.v1.meta.RequestHeader
1, // 9: greptime.v1.meta.SubmitDdlTaskRequest.create_table_task:type_name -> greptime.v1.meta.CreateTableTask
3, // 10: greptime.v1.meta.SubmitDdlTaskRequest.drop_table_task:type_name -> greptime.v1.meta.DropTableTask
5, // 11: greptime.v1.meta.SubmitDdlTaskRequest.alter_table_task:type_name -> greptime.v1.meta.AlterTableTask
7, // 12: greptime.v1.meta.SubmitDdlTaskRequest.truncate_table_task:type_name -> greptime.v1.meta.TruncateTableTask
2, // 13: greptime.v1.meta.SubmitDdlTaskRequest.create_table_tasks:type_name -> greptime.v1.meta.CreateTableTasks
4, // 14: greptime.v1.meta.SubmitDdlTaskRequest.drop_table_tasks:type_name -> greptime.v1.meta.DropTableTasks
6, // 15: greptime.v1.meta.SubmitDdlTaskRequest.alter_table_tasks:type_name -> greptime.v1.meta.AlterTableTasks
16, // 16: greptime.v1.meta.SubmitDdlTaskResponse.header:type_name -> greptime.v1.meta.ResponseHeader
17, // 17: greptime.v1.meta.SubmitDdlTaskResponse.table_id:type_name -> greptime.v1.meta.TableId
17, // 18: greptime.v1.meta.SubmitDdlTaskResponse.table_ids:type_name -> greptime.v1.meta.TableId
8, // 19: greptime.v1.meta.DdlTask.SubmitDdlTask:input_type -> greptime.v1.meta.SubmitDdlTaskRequest
9, // 20: greptime.v1.meta.DdlTask.SubmitDdlTask:output_type -> greptime.v1.meta.SubmitDdlTaskResponse
20, // [20:21] is the sub-list for method output_type
19, // [19:20] is the sub-list for method input_type
19, // [19:19] is the sub-list for extension type_name
19, // [19:19] is the sub-list for extension extendee
0, // [0:19] is the sub-list for field type_name
}
func init() { file_greptime_v1_meta_ddl_proto_init() }
@@ -630,7 +866,7 @@ func file_greptime_v1_meta_ddl_proto_init() {
}
}
file_greptime_v1_meta_ddl_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DropTableTask); i {
switch v := v.(*CreateTableTasks); i {
case 0:
return &v.state
case 1:
@@ -642,7 +878,7 @@ func file_greptime_v1_meta_ddl_proto_init() {
}
}
file_greptime_v1_meta_ddl_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AlterTableTask); i {
switch v := v.(*DropTableTask); i {
case 0:
return &v.state
case 1:
@@ -654,7 +890,7 @@ func file_greptime_v1_meta_ddl_proto_init() {
}
}
file_greptime_v1_meta_ddl_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TruncateTableTask); i {
switch v := v.(*DropTableTasks); i {
case 0:
return &v.state
case 1:
@@ -666,7 +902,7 @@ func file_greptime_v1_meta_ddl_proto_init() {
}
}
file_greptime_v1_meta_ddl_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SubmitDdlTaskRequest); i {
switch v := v.(*AlterTableTask); i {
case 0:
return &v.state
case 1:
@@ -678,6 +914,42 @@ func file_greptime_v1_meta_ddl_proto_init() {
}
}
file_greptime_v1_meta_ddl_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AlterTableTasks); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_greptime_v1_meta_ddl_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*TruncateTableTask); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_greptime_v1_meta_ddl_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SubmitDdlTaskRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_greptime_v1_meta_ddl_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SubmitDdlTaskResponse); i {
case 0:
return &v.state
@@ -690,11 +962,14 @@ func file_greptime_v1_meta_ddl_proto_init() {
}
}
}
file_greptime_v1_meta_ddl_proto_msgTypes[4].OneofWrappers = []interface{}{
file_greptime_v1_meta_ddl_proto_msgTypes[7].OneofWrappers = []interface{}{
(*SubmitDdlTaskRequest_CreateTableTask)(nil),
(*SubmitDdlTaskRequest_DropTableTask)(nil),
(*SubmitDdlTaskRequest_AlterTableTask)(nil),
(*SubmitDdlTaskRequest_TruncateTableTask)(nil),
(*SubmitDdlTaskRequest_CreateTableTasks)(nil),
(*SubmitDdlTaskRequest_DropTableTasks)(nil),
(*SubmitDdlTaskRequest_AlterTableTasks)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
@@ -702,7 +977,7 @@ func file_greptime_v1_meta_ddl_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_greptime_v1_meta_ddl_proto_rawDesc,
NumEnums: 1,
NumMessages: 6,
NumMessages: 9,
NumExtensions: 0,
NumServices: 1,
},
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+12
View File
@@ -39,14 +39,20 @@ message CreateTableTask {
bytes table_info = 3;
}
message CreateTableTasks { repeated CreateTableTask tasks = 1; }
message DropTableTask{
DropTableExpr drop_table = 1;
}
message DropTableTasks { repeated DropTableTask tasks = 1; }
message AlterTableTask{
AlterExpr alter_table = 1;
}
message AlterTableTasks { repeated AlterTableTask tasks = 1; }
message TruncateTableTask {
TruncateTableExpr truncate_table = 1;
}
@@ -59,6 +65,9 @@ message SubmitDdlTaskRequest {
DropTableTask drop_table_task = 3;
AlterTableTask alter_table_task = 4;
TruncateTableTask truncate_table_task = 5;
CreateTableTasks create_table_tasks = 6;
DropTableTasks drop_table_tasks = 7;
AlterTableTasks alter_table_tasks = 8;
}
}
@@ -68,5 +77,8 @@ message SubmitDdlTaskResponse {
bytes key = 2;
// Returns if table created.
// TODO(jeremy): remove it?
TableId table_id = 4;
// Returns if the tables created.
repeated TableId table_ids = 5;
}
+13
View File
@@ -47,6 +47,9 @@ message RegionRequest {
FlushRequest flush = 10;
CompactRequest compact = 11;
TruncateRequest truncate = 12;
CreateRequests creates = 13;
DropRequests drops = 14;
AlterRequests alters = 15;
}
}
@@ -76,6 +79,11 @@ message QueryRequest {
bytes plan = 3;
}
// Create a batch of regions at once, usually used to create multiple logical regions
// at once. Different engines can choose whether to support this request.
// Metric Engine needs it.
message CreateRequests { repeated CreateRequest requests = 1; }
message CreateRequest {
uint64 region_id = 1;
// Region engine name
@@ -91,6 +99,9 @@ message CreateRequest {
// TODO: add partition def
}
// Same as CreateRequests, but for dropping regions.
message DropRequests { repeated DropRequest requests = 1; }
message DropRequest { uint64 region_id = 1; }
message OpenRequest {
@@ -105,6 +116,8 @@ message OpenRequest {
message CloseRequest { uint64 region_id = 1; }
message AlterRequests { repeated AlterRequest requests = 1; }
message AlterRequest {
uint64 region_id = 1;
oneof kind {