diff --git a/go/vt/proto/tabletmanagerdata/tabletmanagerdata.pb.go b/go/vt/proto/tabletmanagerdata/tabletmanagerdata.pb.go index 7540ee2b4e5..a71f082ad08 100644 --- a/go/vt/proto/tabletmanagerdata/tabletmanagerdata.pb.go +++ b/go/vt/proto/tabletmanagerdata/tabletmanagerdata.pb.go @@ -7635,6 +7635,175 @@ func (x *ChangeTagsResponse) GetTags() map[string]string { return nil } +type UpdateSequenceTablesRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + Sequences []*UpdateSequenceTablesRequest_SequenceMetadata `protobuf:"bytes,1,rep,name=sequences,proto3" json:"sequences,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *UpdateSequenceTablesRequest) Reset() { + *x = UpdateSequenceTablesRequest{} + mi := &file_tabletmanagerdata_proto_msgTypes[145] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *UpdateSequenceTablesRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateSequenceTablesRequest) ProtoMessage() {} + +func (x *UpdateSequenceTablesRequest) ProtoReflect() protoreflect.Message { + mi := &file_tabletmanagerdata_proto_msgTypes[145] + 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 UpdateSequenceTablesRequest.ProtoReflect.Descriptor instead. +func (*UpdateSequenceTablesRequest) Descriptor() ([]byte, []int) { + return file_tabletmanagerdata_proto_rawDescGZIP(), []int{145} +} + +func (x *UpdateSequenceTablesRequest) GetSequences() []*UpdateSequenceTablesRequest_SequenceMetadata { + if x != nil { + return x.Sequences + } + return nil +} + +type UpdateSequenceTablesResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *UpdateSequenceTablesResponse) Reset() { + *x = UpdateSequenceTablesResponse{} + mi := &file_tabletmanagerdata_proto_msgTypes[146] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *UpdateSequenceTablesResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateSequenceTablesResponse) ProtoMessage() {} + +func (x *UpdateSequenceTablesResponse) ProtoReflect() protoreflect.Message { + mi := &file_tabletmanagerdata_proto_msgTypes[146] + 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 UpdateSequenceTablesResponse.ProtoReflect.Descriptor instead. +func (*UpdateSequenceTablesResponse) Descriptor() ([]byte, []int) { + return file_tabletmanagerdata_proto_rawDescGZIP(), []int{146} +} + +type GetMaxValueForSequencesRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + Sequences []*GetMaxValueForSequencesRequest_SequenceMetadata `protobuf:"bytes,1,rep,name=sequences,proto3" json:"sequences,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *GetMaxValueForSequencesRequest) Reset() { + *x = GetMaxValueForSequencesRequest{} + mi := &file_tabletmanagerdata_proto_msgTypes[147] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *GetMaxValueForSequencesRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetMaxValueForSequencesRequest) ProtoMessage() {} + +func (x *GetMaxValueForSequencesRequest) ProtoReflect() protoreflect.Message { + mi := &file_tabletmanagerdata_proto_msgTypes[147] + 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 GetMaxValueForSequencesRequest.ProtoReflect.Descriptor instead. +func (*GetMaxValueForSequencesRequest) Descriptor() ([]byte, []int) { + return file_tabletmanagerdata_proto_rawDescGZIP(), []int{147} +} + +func (x *GetMaxValueForSequencesRequest) GetSequences() []*GetMaxValueForSequencesRequest_SequenceMetadata { + if x != nil { + return x.Sequences + } + return nil +} + +type GetMaxValueForSequencesResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + // Max used sequence value mapped with the backing sequence table. + MaxValuesBySequenceTable map[string]int64 `protobuf:"bytes,1,rep,name=max_values_by_sequence_table,json=maxValuesBySequenceTable,proto3" json:"max_values_by_sequence_table,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *GetMaxValueForSequencesResponse) Reset() { + *x = GetMaxValueForSequencesResponse{} + mi := &file_tabletmanagerdata_proto_msgTypes[148] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *GetMaxValueForSequencesResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetMaxValueForSequencesResponse) ProtoMessage() {} + +func (x *GetMaxValueForSequencesResponse) ProtoReflect() protoreflect.Message { + mi := &file_tabletmanagerdata_proto_msgTypes[148] + 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 GetMaxValueForSequencesResponse.ProtoReflect.Descriptor instead. +func (*GetMaxValueForSequencesResponse) Descriptor() ([]byte, []int) { + return file_tabletmanagerdata_proto_rawDescGZIP(), []int{148} +} + +func (x *GetMaxValueForSequencesResponse) GetMaxValuesBySequenceTable() map[string]int64 { + if x != nil { + return x.MaxValuesBySequenceTable + } + return nil +} + type ReadVReplicationWorkflowResponse_Stream struct { state protoimpl.MessageState `protogen:"open.v1"` Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` @@ -7657,7 +7826,7 @@ type ReadVReplicationWorkflowResponse_Stream struct { func (x *ReadVReplicationWorkflowResponse_Stream) Reset() { *x = ReadVReplicationWorkflowResponse_Stream{} - mi := &file_tabletmanagerdata_proto_msgTypes[150] + mi := &file_tabletmanagerdata_proto_msgTypes[154] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7669,7 +7838,7 @@ func (x *ReadVReplicationWorkflowResponse_Stream) String() string { func (*ReadVReplicationWorkflowResponse_Stream) ProtoMessage() {} func (x *ReadVReplicationWorkflowResponse_Stream) ProtoReflect() protoreflect.Message { - mi := &file_tabletmanagerdata_proto_msgTypes[150] + mi := &file_tabletmanagerdata_proto_msgTypes[154] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7805,7 +7974,7 @@ type CheckThrottlerResponse_Metric struct { func (x *CheckThrottlerResponse_Metric) Reset() { *x = CheckThrottlerResponse_Metric{} - mi := &file_tabletmanagerdata_proto_msgTypes[153] + mi := &file_tabletmanagerdata_proto_msgTypes[157] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7817,7 +7986,7 @@ func (x *CheckThrottlerResponse_Metric) String() string { func (*CheckThrottlerResponse_Metric) ProtoMessage() {} func (x *CheckThrottlerResponse_Metric) ProtoReflect() protoreflect.Message { - mi := &file_tabletmanagerdata_proto_msgTypes[153] + mi := &file_tabletmanagerdata_proto_msgTypes[157] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7892,7 +8061,7 @@ type GetThrottlerStatusResponse_MetricResult struct { func (x *GetThrottlerStatusResponse_MetricResult) Reset() { *x = GetThrottlerStatusResponse_MetricResult{} - mi := &file_tabletmanagerdata_proto_msgTypes[155] + mi := &file_tabletmanagerdata_proto_msgTypes[159] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7904,7 +8073,7 @@ func (x *GetThrottlerStatusResponse_MetricResult) String() string { func (*GetThrottlerStatusResponse_MetricResult) ProtoMessage() {} func (x *GetThrottlerStatusResponse_MetricResult) ProtoReflect() protoreflect.Message { - mi := &file_tabletmanagerdata_proto_msgTypes[155] + mi := &file_tabletmanagerdata_proto_msgTypes[159] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7944,7 +8113,7 @@ type GetThrottlerStatusResponse_MetricHealth struct { func (x *GetThrottlerStatusResponse_MetricHealth) Reset() { *x = GetThrottlerStatusResponse_MetricHealth{} - mi := &file_tabletmanagerdata_proto_msgTypes[158] + mi := &file_tabletmanagerdata_proto_msgTypes[162] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7956,7 +8125,7 @@ func (x *GetThrottlerStatusResponse_MetricHealth) String() string { func (*GetThrottlerStatusResponse_MetricHealth) ProtoMessage() {} func (x *GetThrottlerStatusResponse_MetricHealth) ProtoReflect() protoreflect.Message { - mi := &file_tabletmanagerdata_proto_msgTypes[158] + mi := &file_tabletmanagerdata_proto_msgTypes[162] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7997,7 +8166,7 @@ type GetThrottlerStatusResponse_RecentApp struct { func (x *GetThrottlerStatusResponse_RecentApp) Reset() { *x = GetThrottlerStatusResponse_RecentApp{} - mi := &file_tabletmanagerdata_proto_msgTypes[162] + mi := &file_tabletmanagerdata_proto_msgTypes[166] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8009,7 +8178,7 @@ func (x *GetThrottlerStatusResponse_RecentApp) String() string { func (*GetThrottlerStatusResponse_RecentApp) ProtoMessage() {} func (x *GetThrottlerStatusResponse_RecentApp) ProtoReflect() protoreflect.Message { - mi := &file_tabletmanagerdata_proto_msgTypes[162] + mi := &file_tabletmanagerdata_proto_msgTypes[166] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8039,6 +8208,142 @@ func (x *GetThrottlerStatusResponse_RecentApp) GetResponseCode() CheckThrottlerR return CheckThrottlerResponseCode_UNDEFINED } +type UpdateSequenceTablesRequest_SequenceMetadata struct { + state protoimpl.MessageState `protogen:"open.v1"` + // The name of the sequence table. + BackingTableName string `protobuf:"bytes,1,opt,name=backing_table_name,json=backingTableName,proto3" json:"backing_table_name,omitempty"` + // The dbName in use by the keyspace where the backing table lives. + BackingTableDbName string `protobuf:"bytes,2,opt,name=backing_table_db_name,json=backingTableDbName,proto3" json:"backing_table_db_name,omitempty"` + // The maximum used sequence value. + MaxValue int64 `protobuf:"varint,3,opt,name=max_value,json=maxValue,proto3" json:"max_value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *UpdateSequenceTablesRequest_SequenceMetadata) Reset() { + *x = UpdateSequenceTablesRequest_SequenceMetadata{} + mi := &file_tabletmanagerdata_proto_msgTypes[170] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *UpdateSequenceTablesRequest_SequenceMetadata) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateSequenceTablesRequest_SequenceMetadata) ProtoMessage() {} + +func (x *UpdateSequenceTablesRequest_SequenceMetadata) ProtoReflect() protoreflect.Message { + mi := &file_tabletmanagerdata_proto_msgTypes[170] + 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 UpdateSequenceTablesRequest_SequenceMetadata.ProtoReflect.Descriptor instead. +func (*UpdateSequenceTablesRequest_SequenceMetadata) Descriptor() ([]byte, []int) { + return file_tabletmanagerdata_proto_rawDescGZIP(), []int{145, 0} +} + +func (x *UpdateSequenceTablesRequest_SequenceMetadata) GetBackingTableName() string { + if x != nil { + return x.BackingTableName + } + return "" +} + +func (x *UpdateSequenceTablesRequest_SequenceMetadata) GetBackingTableDbName() string { + if x != nil { + return x.BackingTableDbName + } + return "" +} + +func (x *UpdateSequenceTablesRequest_SequenceMetadata) GetMaxValue() int64 { + if x != nil { + return x.MaxValue + } + return 0 +} + +type GetMaxValueForSequencesRequest_SequenceMetadata struct { + state protoimpl.MessageState `protogen:"open.v1"` + // The name of the sequence table. This will be used for mapping max value + // with table in the response. + BackingTableName string `protobuf:"bytes,1,opt,name=backing_table_name,json=backingTableName,proto3" json:"backing_table_name,omitempty"` + // Escaped column name specified for sequence in table. + UsingColEscaped string `protobuf:"bytes,2,opt,name=using_col_escaped,json=usingColEscaped,proto3" json:"using_col_escaped,omitempty"` + // Escaped name of the table using the sequence. + UsingTableNameEscaped string `protobuf:"bytes,3,opt,name=using_table_name_escaped,json=usingTableNameEscaped,proto3" json:"using_table_name_escaped,omitempty"` + // Escaped db name in use by the keyspace where the using table lives. + UsingTableDbNameEscaped string `protobuf:"bytes,4,opt,name=using_table_db_name_escaped,json=usingTableDbNameEscaped,proto3" json:"using_table_db_name_escaped,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *GetMaxValueForSequencesRequest_SequenceMetadata) Reset() { + *x = GetMaxValueForSequencesRequest_SequenceMetadata{} + mi := &file_tabletmanagerdata_proto_msgTypes[171] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *GetMaxValueForSequencesRequest_SequenceMetadata) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetMaxValueForSequencesRequest_SequenceMetadata) ProtoMessage() {} + +func (x *GetMaxValueForSequencesRequest_SequenceMetadata) ProtoReflect() protoreflect.Message { + mi := &file_tabletmanagerdata_proto_msgTypes[171] + 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 GetMaxValueForSequencesRequest_SequenceMetadata.ProtoReflect.Descriptor instead. +func (*GetMaxValueForSequencesRequest_SequenceMetadata) Descriptor() ([]byte, []int) { + return file_tabletmanagerdata_proto_rawDescGZIP(), []int{147, 0} +} + +func (x *GetMaxValueForSequencesRequest_SequenceMetadata) GetBackingTableName() string { + if x != nil { + return x.BackingTableName + } + return "" +} + +func (x *GetMaxValueForSequencesRequest_SequenceMetadata) GetUsingColEscaped() string { + if x != nil { + return x.UsingColEscaped + } + return "" +} + +func (x *GetMaxValueForSequencesRequest_SequenceMetadata) GetUsingTableNameEscaped() string { + if x != nil { + return x.UsingTableNameEscaped + } + return "" +} + +func (x *GetMaxValueForSequencesRequest_SequenceMetadata) GetUsingTableDbNameEscaped() string { + if x != nil { + return x.UsingTableDbNameEscaped + } + return "" +} + var File_tabletmanagerdata_proto protoreflect.FileDescriptor var file_tabletmanagerdata_proto_rawDesc = string([]byte{ @@ -9208,23 +9513,81 @@ var file_tabletmanagerdata_proto_rawDesc = string([]byte{ 0x0a, 0x09, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x2a, 0x3e, 0x0a, 0x19, 0x54, 0x61, 0x62, 0x6c, 0x65, - 0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, - 0x65, 0x6e, 0x63, 0x65, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x4e, 0x59, 0x10, 0x00, 0x12, 0x0b, 0x0a, - 0x07, 0x49, 0x4e, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, - 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x03, 0x2a, 0x83, 0x01, 0x0a, 0x1a, 0x43, 0x68, 0x65, 0x63, - 0x6b, 0x54, 0x68, 0x72, 0x6f, 0x74, 0x74, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0d, 0x0a, 0x09, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, - 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x4f, 0x4b, 0x10, 0x01, 0x12, 0x16, 0x0a, - 0x12, 0x54, 0x48, 0x52, 0x45, 0x53, 0x48, 0x4f, 0x4c, 0x44, 0x5f, 0x45, 0x58, 0x43, 0x45, 0x45, - 0x44, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x41, 0x50, 0x50, 0x5f, 0x44, 0x45, 0x4e, - 0x49, 0x45, 0x44, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, - 0x5f, 0x4d, 0x45, 0x54, 0x52, 0x49, 0x43, 0x10, 0x04, 0x12, 0x12, 0x0a, 0x0e, 0x49, 0x4e, 0x54, - 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x42, 0x30, 0x5a, - 0x2e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x73, 0x2e, 0x69, 0x6f, 0x2f, 0x76, 0x69, 0x74, 0x65, 0x73, - 0x73, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x74, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x74, 0x61, - 0x62, 0x6c, 0x65, 0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x64, 0x61, 0x74, 0x61, 0x62, - 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x8f, 0x02, 0x0a, 0x1b, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x5d, 0x0a, 0x09, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x74, 0x61, 0x62, + 0x6c, 0x65, 0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x54, 0x61, 0x62, + 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x09, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x1a, 0x90, 0x01, 0x0a, 0x10, 0x53, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x2c, 0x0a, 0x12, 0x62, + 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x62, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x15, 0x62, 0x61, 0x63, + 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x64, 0x62, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x62, 0x61, 0x63, 0x6b, 0x69, 0x6e, + 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x62, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, + 0x6d, 0x61, 0x78, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x08, 0x6d, 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x1e, 0x0a, 0x1c, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe8, 0x02, 0x0a, 0x1e, 0x47, 0x65, + 0x74, 0x4d, 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x60, 0x0a, 0x09, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x42, 0x2e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x64, + 0x61, 0x74, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x46, + 0x6f, 0x72, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x2e, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x52, 0x09, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x1a, 0xe3, + 0x01, 0x0a, 0x10, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x12, 0x2c, 0x0a, 0x12, 0x62, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x10, 0x62, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6c, 0x5f, 0x65, + 0x73, 0x63, 0x61, 0x70, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x75, 0x73, + 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6c, 0x45, 0x73, 0x63, 0x61, 0x70, 0x65, 0x64, 0x12, 0x37, 0x0a, + 0x18, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x5f, 0x65, 0x73, 0x63, 0x61, 0x70, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x15, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x45, + 0x73, 0x63, 0x61, 0x70, 0x65, 0x64, 0x12, 0x3c, 0x0a, 0x1b, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x5f, + 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x64, 0x62, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x65, 0x73, + 0x63, 0x61, 0x70, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x75, 0x73, 0x69, + 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x62, 0x4e, 0x61, 0x6d, 0x65, 0x45, 0x73, 0x63, + 0x61, 0x70, 0x65, 0x64, 0x22, 0x81, 0x02, 0x0a, 0x1f, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x90, 0x01, 0x0a, 0x1c, 0x6d, 0x61, 0x78, + 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x62, 0x79, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x50, 0x2e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x64, + 0x61, 0x74, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x46, + 0x6f, 0x72, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x4d, 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x42, 0x79, 0x53, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x52, 0x18, 0x6d, 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x42, 0x79, 0x53, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x1a, 0x4b, 0x0a, 0x1d, 0x4d, + 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x42, 0x79, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x2a, 0x3e, 0x0a, 0x19, 0x54, 0x61, 0x62, 0x6c, + 0x65, 0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x66, 0x65, + 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x4e, 0x59, 0x10, 0x00, 0x12, 0x0b, + 0x0a, 0x07, 0x49, 0x4e, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x55, + 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x03, 0x2a, 0x83, 0x01, 0x0a, 0x1a, 0x43, 0x68, 0x65, + 0x63, 0x6b, 0x54, 0x68, 0x72, 0x6f, 0x74, 0x74, 0x6c, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0d, 0x0a, 0x09, 0x55, 0x4e, 0x44, 0x45, 0x46, + 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x4f, 0x4b, 0x10, 0x01, 0x12, 0x16, + 0x0a, 0x12, 0x54, 0x48, 0x52, 0x45, 0x53, 0x48, 0x4f, 0x4c, 0x44, 0x5f, 0x45, 0x58, 0x43, 0x45, + 0x45, 0x44, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x41, 0x50, 0x50, 0x5f, 0x44, 0x45, + 0x4e, 0x49, 0x45, 0x44, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, + 0x4e, 0x5f, 0x4d, 0x45, 0x54, 0x52, 0x49, 0x43, 0x10, 0x04, 0x12, 0x12, 0x0a, 0x0e, 0x49, 0x4e, + 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x42, 0x30, + 0x5a, 0x2e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x73, 0x2e, 0x69, 0x6f, 0x2f, 0x76, 0x69, 0x74, 0x65, + 0x73, 0x73, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x74, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x64, 0x61, 0x74, 0x61, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, }) var ( @@ -9240,7 +9603,7 @@ func file_tabletmanagerdata_proto_rawDescGZIP() []byte { } var file_tabletmanagerdata_proto_enumTypes = make([]protoimpl.EnumInfo, 2) -var file_tabletmanagerdata_proto_msgTypes = make([]protoimpl.MessageInfo, 166) +var file_tabletmanagerdata_proto_msgTypes = make([]protoimpl.MessageInfo, 173) var file_tabletmanagerdata_proto_goTypes = []any{ (TabletSelectionPreference)(0), // 0: tabletmanagerdata.TabletSelectionPreference (CheckThrottlerResponseCode)(0), // 1: tabletmanagerdata.CheckThrottlerResponseCode @@ -9389,155 +9752,165 @@ var file_tabletmanagerdata_proto_goTypes = []any{ (*GetThrottlerStatusResponse)(nil), // 144: tabletmanagerdata.GetThrottlerStatusResponse (*ChangeTagsRequest)(nil), // 145: tabletmanagerdata.ChangeTagsRequest (*ChangeTagsResponse)(nil), // 146: tabletmanagerdata.ChangeTagsResponse - nil, // 147: tabletmanagerdata.UserPermission.PrivilegesEntry - nil, // 148: tabletmanagerdata.DbPermission.PrivilegesEntry - nil, // 149: tabletmanagerdata.ExecuteHookRequest.ExtraEnvEntry - nil, // 150: tabletmanagerdata.GetGlobalStatusVarsResponse.StatusValuesEntry - nil, // 151: tabletmanagerdata.DeleteTableDataRequest.TableFiltersEntry - (*ReadVReplicationWorkflowResponse_Stream)(nil), // 152: tabletmanagerdata.ReadVReplicationWorkflowResponse.Stream - nil, // 153: tabletmanagerdata.ReadVReplicationWorkflowResponse.ConfigOverridesEntry - nil, // 154: tabletmanagerdata.UpdateVReplicationWorkflowRequest.ConfigOverridesEntry - (*CheckThrottlerResponse_Metric)(nil), // 155: tabletmanagerdata.CheckThrottlerResponse.Metric - nil, // 156: tabletmanagerdata.CheckThrottlerResponse.MetricsEntry - (*GetThrottlerStatusResponse_MetricResult)(nil), // 157: tabletmanagerdata.GetThrottlerStatusResponse.MetricResult - nil, // 158: tabletmanagerdata.GetThrottlerStatusResponse.AggregatedMetricsEntry - nil, // 159: tabletmanagerdata.GetThrottlerStatusResponse.MetricThresholdsEntry - (*GetThrottlerStatusResponse_MetricHealth)(nil), // 160: tabletmanagerdata.GetThrottlerStatusResponse.MetricHealth - nil, // 161: tabletmanagerdata.GetThrottlerStatusResponse.MetricsHealthEntry - nil, // 162: tabletmanagerdata.GetThrottlerStatusResponse.ThrottledAppsEntry - nil, // 163: tabletmanagerdata.GetThrottlerStatusResponse.AppCheckedMetricsEntry - (*GetThrottlerStatusResponse_RecentApp)(nil), // 164: tabletmanagerdata.GetThrottlerStatusResponse.RecentApp - nil, // 165: tabletmanagerdata.GetThrottlerStatusResponse.RecentAppsEntry - nil, // 166: tabletmanagerdata.ChangeTagsRequest.TagsEntry - nil, // 167: tabletmanagerdata.ChangeTagsResponse.TagsEntry - (*query.Field)(nil), // 168: query.Field - (topodata.TabletType)(0), // 169: topodata.TabletType - (*vtrpc.CallerID)(nil), // 170: vtrpc.CallerID - (*query.QueryResult)(nil), // 171: query.QueryResult - (*query.TransactionMetadata)(nil), // 172: query.TransactionMetadata - (*mysqlctl.HostMetricsResponse)(nil), // 173: mysqlctl.HostMetricsResponse - (*replicationdata.Status)(nil), // 174: replicationdata.Status - (*replicationdata.PrimaryStatus)(nil), // 175: replicationdata.PrimaryStatus - (*topodata.TabletAlias)(nil), // 176: topodata.TabletAlias - (*replicationdata.FullStatus)(nil), // 177: replicationdata.FullStatus - (replicationdata.StopReplicationMode)(0), // 178: replicationdata.StopReplicationMode - (*replicationdata.StopReplicationStatus)(nil), // 179: replicationdata.StopReplicationStatus - (*vttime.Duration)(nil), // 180: vttime.Duration - (*logutil.Event)(nil), // 181: logutil.Event - (*vttime.Time)(nil), // 182: vttime.Time - (*binlogdata.BinlogSource)(nil), // 183: binlogdata.BinlogSource - (binlogdata.VReplicationWorkflowType)(0), // 184: binlogdata.VReplicationWorkflowType - (binlogdata.VReplicationWorkflowSubType)(0), // 185: binlogdata.VReplicationWorkflowSubType - (binlogdata.VReplicationWorkflowState)(0), // 186: binlogdata.VReplicationWorkflowState - (binlogdata.OnDDLAction)(0), // 187: binlogdata.OnDDLAction - (*topodata.ThrottledAppRule)(nil), // 188: topodata.ThrottledAppRule + (*UpdateSequenceTablesRequest)(nil), // 147: tabletmanagerdata.UpdateSequenceTablesRequest + (*UpdateSequenceTablesResponse)(nil), // 148: tabletmanagerdata.UpdateSequenceTablesResponse + (*GetMaxValueForSequencesRequest)(nil), // 149: tabletmanagerdata.GetMaxValueForSequencesRequest + (*GetMaxValueForSequencesResponse)(nil), // 150: tabletmanagerdata.GetMaxValueForSequencesResponse + nil, // 151: tabletmanagerdata.UserPermission.PrivilegesEntry + nil, // 152: tabletmanagerdata.DbPermission.PrivilegesEntry + nil, // 153: tabletmanagerdata.ExecuteHookRequest.ExtraEnvEntry + nil, // 154: tabletmanagerdata.GetGlobalStatusVarsResponse.StatusValuesEntry + nil, // 155: tabletmanagerdata.DeleteTableDataRequest.TableFiltersEntry + (*ReadVReplicationWorkflowResponse_Stream)(nil), // 156: tabletmanagerdata.ReadVReplicationWorkflowResponse.Stream + nil, // 157: tabletmanagerdata.ReadVReplicationWorkflowResponse.ConfigOverridesEntry + nil, // 158: tabletmanagerdata.UpdateVReplicationWorkflowRequest.ConfigOverridesEntry + (*CheckThrottlerResponse_Metric)(nil), // 159: tabletmanagerdata.CheckThrottlerResponse.Metric + nil, // 160: tabletmanagerdata.CheckThrottlerResponse.MetricsEntry + (*GetThrottlerStatusResponse_MetricResult)(nil), // 161: tabletmanagerdata.GetThrottlerStatusResponse.MetricResult + nil, // 162: tabletmanagerdata.GetThrottlerStatusResponse.AggregatedMetricsEntry + nil, // 163: tabletmanagerdata.GetThrottlerStatusResponse.MetricThresholdsEntry + (*GetThrottlerStatusResponse_MetricHealth)(nil), // 164: tabletmanagerdata.GetThrottlerStatusResponse.MetricHealth + nil, // 165: tabletmanagerdata.GetThrottlerStatusResponse.MetricsHealthEntry + nil, // 166: tabletmanagerdata.GetThrottlerStatusResponse.ThrottledAppsEntry + nil, // 167: tabletmanagerdata.GetThrottlerStatusResponse.AppCheckedMetricsEntry + (*GetThrottlerStatusResponse_RecentApp)(nil), // 168: tabletmanagerdata.GetThrottlerStatusResponse.RecentApp + nil, // 169: tabletmanagerdata.GetThrottlerStatusResponse.RecentAppsEntry + nil, // 170: tabletmanagerdata.ChangeTagsRequest.TagsEntry + nil, // 171: tabletmanagerdata.ChangeTagsResponse.TagsEntry + (*UpdateSequenceTablesRequest_SequenceMetadata)(nil), // 172: tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata + (*GetMaxValueForSequencesRequest_SequenceMetadata)(nil), // 173: tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata + nil, // 174: tabletmanagerdata.GetMaxValueForSequencesResponse.MaxValuesBySequenceTableEntry + (*query.Field)(nil), // 175: query.Field + (topodata.TabletType)(0), // 176: topodata.TabletType + (*vtrpc.CallerID)(nil), // 177: vtrpc.CallerID + (*query.QueryResult)(nil), // 178: query.QueryResult + (*query.TransactionMetadata)(nil), // 179: query.TransactionMetadata + (*mysqlctl.HostMetricsResponse)(nil), // 180: mysqlctl.HostMetricsResponse + (*replicationdata.Status)(nil), // 181: replicationdata.Status + (*replicationdata.PrimaryStatus)(nil), // 182: replicationdata.PrimaryStatus + (*topodata.TabletAlias)(nil), // 183: topodata.TabletAlias + (*replicationdata.FullStatus)(nil), // 184: replicationdata.FullStatus + (replicationdata.StopReplicationMode)(0), // 185: replicationdata.StopReplicationMode + (*replicationdata.StopReplicationStatus)(nil), // 186: replicationdata.StopReplicationStatus + (*vttime.Duration)(nil), // 187: vttime.Duration + (*logutil.Event)(nil), // 188: logutil.Event + (*vttime.Time)(nil), // 189: vttime.Time + (*binlogdata.BinlogSource)(nil), // 190: binlogdata.BinlogSource + (binlogdata.VReplicationWorkflowType)(0), // 191: binlogdata.VReplicationWorkflowType + (binlogdata.VReplicationWorkflowSubType)(0), // 192: binlogdata.VReplicationWorkflowSubType + (binlogdata.VReplicationWorkflowState)(0), // 193: binlogdata.VReplicationWorkflowState + (binlogdata.OnDDLAction)(0), // 194: binlogdata.OnDDLAction + (*topodata.ThrottledAppRule)(nil), // 195: topodata.ThrottledAppRule } var file_tabletmanagerdata_proto_depIdxs = []int32{ - 168, // 0: tabletmanagerdata.TableDefinition.fields:type_name -> query.Field + 175, // 0: tabletmanagerdata.TableDefinition.fields:type_name -> query.Field 2, // 1: tabletmanagerdata.SchemaDefinition.table_definitions:type_name -> tabletmanagerdata.TableDefinition 3, // 2: tabletmanagerdata.SchemaChangeResult.before_schema:type_name -> tabletmanagerdata.SchemaDefinition 3, // 3: tabletmanagerdata.SchemaChangeResult.after_schema:type_name -> tabletmanagerdata.SchemaDefinition - 147, // 4: tabletmanagerdata.UserPermission.privileges:type_name -> tabletmanagerdata.UserPermission.PrivilegesEntry - 148, // 5: tabletmanagerdata.DbPermission.privileges:type_name -> tabletmanagerdata.DbPermission.PrivilegesEntry + 151, // 4: tabletmanagerdata.UserPermission.privileges:type_name -> tabletmanagerdata.UserPermission.PrivilegesEntry + 152, // 5: tabletmanagerdata.DbPermission.privileges:type_name -> tabletmanagerdata.DbPermission.PrivilegesEntry 5, // 6: tabletmanagerdata.Permissions.user_permissions:type_name -> tabletmanagerdata.UserPermission 6, // 7: tabletmanagerdata.Permissions.db_permissions:type_name -> tabletmanagerdata.DbPermission - 149, // 8: tabletmanagerdata.ExecuteHookRequest.extra_env:type_name -> tabletmanagerdata.ExecuteHookRequest.ExtraEnvEntry + 153, // 8: tabletmanagerdata.ExecuteHookRequest.extra_env:type_name -> tabletmanagerdata.ExecuteHookRequest.ExtraEnvEntry 3, // 9: tabletmanagerdata.GetSchemaResponse.schema_definition:type_name -> tabletmanagerdata.SchemaDefinition 7, // 10: tabletmanagerdata.GetPermissionsResponse.permissions:type_name -> tabletmanagerdata.Permissions - 150, // 11: tabletmanagerdata.GetGlobalStatusVarsResponse.status_values:type_name -> tabletmanagerdata.GetGlobalStatusVarsResponse.StatusValuesEntry - 169, // 12: tabletmanagerdata.ChangeTypeRequest.tablet_type:type_name -> topodata.TabletType + 154, // 11: tabletmanagerdata.GetGlobalStatusVarsResponse.status_values:type_name -> tabletmanagerdata.GetGlobalStatusVarsResponse.StatusValuesEntry + 176, // 12: tabletmanagerdata.ChangeTypeRequest.tablet_type:type_name -> topodata.TabletType 4, // 13: tabletmanagerdata.PreflightSchemaResponse.change_results:type_name -> tabletmanagerdata.SchemaChangeResult 3, // 14: tabletmanagerdata.ApplySchemaRequest.before_schema:type_name -> tabletmanagerdata.SchemaDefinition 3, // 15: tabletmanagerdata.ApplySchemaRequest.after_schema:type_name -> tabletmanagerdata.SchemaDefinition 3, // 16: tabletmanagerdata.ApplySchemaResponse.before_schema:type_name -> tabletmanagerdata.SchemaDefinition 3, // 17: tabletmanagerdata.ApplySchemaResponse.after_schema:type_name -> tabletmanagerdata.SchemaDefinition - 170, // 18: tabletmanagerdata.ExecuteQueryRequest.caller_id:type_name -> vtrpc.CallerID - 171, // 19: tabletmanagerdata.ExecuteQueryResponse.result:type_name -> query.QueryResult - 171, // 20: tabletmanagerdata.ExecuteFetchAsDbaResponse.result:type_name -> query.QueryResult - 171, // 21: tabletmanagerdata.ExecuteMultiFetchAsDbaResponse.results:type_name -> query.QueryResult - 171, // 22: tabletmanagerdata.ExecuteFetchAsAllPrivsResponse.result:type_name -> query.QueryResult - 171, // 23: tabletmanagerdata.ExecuteFetchAsAppResponse.result:type_name -> query.QueryResult - 172, // 24: tabletmanagerdata.GetUnresolvedTransactionsResponse.transactions:type_name -> query.TransactionMetadata - 172, // 25: tabletmanagerdata.ReadTransactionResponse.transaction:type_name -> query.TransactionMetadata - 173, // 26: tabletmanagerdata.MysqlHostMetricsResponse.HostMetrics:type_name -> mysqlctl.HostMetricsResponse - 174, // 27: tabletmanagerdata.ReplicationStatusResponse.status:type_name -> replicationdata.Status - 175, // 28: tabletmanagerdata.PrimaryStatusResponse.status:type_name -> replicationdata.PrimaryStatus - 171, // 29: tabletmanagerdata.VReplicationExecResponse.result:type_name -> query.QueryResult - 176, // 30: tabletmanagerdata.PopulateReparentJournalRequest.primary_alias:type_name -> topodata.TabletAlias - 176, // 31: tabletmanagerdata.InitReplicaRequest.parent:type_name -> topodata.TabletAlias - 175, // 32: tabletmanagerdata.DemotePrimaryResponse.primary_status:type_name -> replicationdata.PrimaryStatus - 177, // 33: tabletmanagerdata.FullStatusResponse.status:type_name -> replicationdata.FullStatus - 176, // 34: tabletmanagerdata.SetReplicationSourceRequest.parent:type_name -> topodata.TabletAlias - 176, // 35: tabletmanagerdata.ReplicaWasRestartedRequest.parent:type_name -> topodata.TabletAlias - 178, // 36: tabletmanagerdata.StopReplicationAndGetStatusRequest.stop_replication_mode:type_name -> replicationdata.StopReplicationMode - 179, // 37: tabletmanagerdata.StopReplicationAndGetStatusResponse.status:type_name -> replicationdata.StopReplicationStatus - 180, // 38: tabletmanagerdata.BackupRequest.mysql_shutdown_timeout:type_name -> vttime.Duration - 181, // 39: tabletmanagerdata.BackupResponse.event:type_name -> logutil.Event - 182, // 40: tabletmanagerdata.RestoreFromBackupRequest.backup_time:type_name -> vttime.Time - 182, // 41: tabletmanagerdata.RestoreFromBackupRequest.restore_to_timestamp:type_name -> vttime.Time - 181, // 42: tabletmanagerdata.RestoreFromBackupResponse.event:type_name -> logutil.Event - 183, // 43: tabletmanagerdata.CreateVReplicationWorkflowRequest.binlog_source:type_name -> binlogdata.BinlogSource - 169, // 44: tabletmanagerdata.CreateVReplicationWorkflowRequest.tablet_types:type_name -> topodata.TabletType + 177, // 18: tabletmanagerdata.ExecuteQueryRequest.caller_id:type_name -> vtrpc.CallerID + 178, // 19: tabletmanagerdata.ExecuteQueryResponse.result:type_name -> query.QueryResult + 178, // 20: tabletmanagerdata.ExecuteFetchAsDbaResponse.result:type_name -> query.QueryResult + 178, // 21: tabletmanagerdata.ExecuteMultiFetchAsDbaResponse.results:type_name -> query.QueryResult + 178, // 22: tabletmanagerdata.ExecuteFetchAsAllPrivsResponse.result:type_name -> query.QueryResult + 178, // 23: tabletmanagerdata.ExecuteFetchAsAppResponse.result:type_name -> query.QueryResult + 179, // 24: tabletmanagerdata.GetUnresolvedTransactionsResponse.transactions:type_name -> query.TransactionMetadata + 179, // 25: tabletmanagerdata.ReadTransactionResponse.transaction:type_name -> query.TransactionMetadata + 180, // 26: tabletmanagerdata.MysqlHostMetricsResponse.HostMetrics:type_name -> mysqlctl.HostMetricsResponse + 181, // 27: tabletmanagerdata.ReplicationStatusResponse.status:type_name -> replicationdata.Status + 182, // 28: tabletmanagerdata.PrimaryStatusResponse.status:type_name -> replicationdata.PrimaryStatus + 178, // 29: tabletmanagerdata.VReplicationExecResponse.result:type_name -> query.QueryResult + 183, // 30: tabletmanagerdata.PopulateReparentJournalRequest.primary_alias:type_name -> topodata.TabletAlias + 183, // 31: tabletmanagerdata.InitReplicaRequest.parent:type_name -> topodata.TabletAlias + 182, // 32: tabletmanagerdata.DemotePrimaryResponse.primary_status:type_name -> replicationdata.PrimaryStatus + 184, // 33: tabletmanagerdata.FullStatusResponse.status:type_name -> replicationdata.FullStatus + 183, // 34: tabletmanagerdata.SetReplicationSourceRequest.parent:type_name -> topodata.TabletAlias + 183, // 35: tabletmanagerdata.ReplicaWasRestartedRequest.parent:type_name -> topodata.TabletAlias + 185, // 36: tabletmanagerdata.StopReplicationAndGetStatusRequest.stop_replication_mode:type_name -> replicationdata.StopReplicationMode + 186, // 37: tabletmanagerdata.StopReplicationAndGetStatusResponse.status:type_name -> replicationdata.StopReplicationStatus + 187, // 38: tabletmanagerdata.BackupRequest.mysql_shutdown_timeout:type_name -> vttime.Duration + 188, // 39: tabletmanagerdata.BackupResponse.event:type_name -> logutil.Event + 189, // 40: tabletmanagerdata.RestoreFromBackupRequest.backup_time:type_name -> vttime.Time + 189, // 41: tabletmanagerdata.RestoreFromBackupRequest.restore_to_timestamp:type_name -> vttime.Time + 188, // 42: tabletmanagerdata.RestoreFromBackupResponse.event:type_name -> logutil.Event + 190, // 43: tabletmanagerdata.CreateVReplicationWorkflowRequest.binlog_source:type_name -> binlogdata.BinlogSource + 176, // 44: tabletmanagerdata.CreateVReplicationWorkflowRequest.tablet_types:type_name -> topodata.TabletType 0, // 45: tabletmanagerdata.CreateVReplicationWorkflowRequest.tablet_selection_preference:type_name -> tabletmanagerdata.TabletSelectionPreference - 184, // 46: tabletmanagerdata.CreateVReplicationWorkflowRequest.workflow_type:type_name -> binlogdata.VReplicationWorkflowType - 185, // 47: tabletmanagerdata.CreateVReplicationWorkflowRequest.workflow_sub_type:type_name -> binlogdata.VReplicationWorkflowSubType - 171, // 48: tabletmanagerdata.CreateVReplicationWorkflowResponse.result:type_name -> query.QueryResult - 151, // 49: tabletmanagerdata.DeleteTableDataRequest.table_filters:type_name -> tabletmanagerdata.DeleteTableDataRequest.TableFiltersEntry - 171, // 50: tabletmanagerdata.DeleteVReplicationWorkflowResponse.result:type_name -> query.QueryResult - 186, // 51: tabletmanagerdata.ReadVReplicationWorkflowsRequest.include_states:type_name -> binlogdata.VReplicationWorkflowState - 186, // 52: tabletmanagerdata.ReadVReplicationWorkflowsRequest.exclude_states:type_name -> binlogdata.VReplicationWorkflowState + 191, // 46: tabletmanagerdata.CreateVReplicationWorkflowRequest.workflow_type:type_name -> binlogdata.VReplicationWorkflowType + 192, // 47: tabletmanagerdata.CreateVReplicationWorkflowRequest.workflow_sub_type:type_name -> binlogdata.VReplicationWorkflowSubType + 178, // 48: tabletmanagerdata.CreateVReplicationWorkflowResponse.result:type_name -> query.QueryResult + 155, // 49: tabletmanagerdata.DeleteTableDataRequest.table_filters:type_name -> tabletmanagerdata.DeleteTableDataRequest.TableFiltersEntry + 178, // 50: tabletmanagerdata.DeleteVReplicationWorkflowResponse.result:type_name -> query.QueryResult + 193, // 51: tabletmanagerdata.ReadVReplicationWorkflowsRequest.include_states:type_name -> binlogdata.VReplicationWorkflowState + 193, // 52: tabletmanagerdata.ReadVReplicationWorkflowsRequest.exclude_states:type_name -> binlogdata.VReplicationWorkflowState 125, // 53: tabletmanagerdata.ReadVReplicationWorkflowsResponse.workflows:type_name -> tabletmanagerdata.ReadVReplicationWorkflowResponse - 169, // 54: tabletmanagerdata.ReadVReplicationWorkflowResponse.tablet_types:type_name -> topodata.TabletType + 176, // 54: tabletmanagerdata.ReadVReplicationWorkflowResponse.tablet_types:type_name -> topodata.TabletType 0, // 55: tabletmanagerdata.ReadVReplicationWorkflowResponse.tablet_selection_preference:type_name -> tabletmanagerdata.TabletSelectionPreference - 184, // 56: tabletmanagerdata.ReadVReplicationWorkflowResponse.workflow_type:type_name -> binlogdata.VReplicationWorkflowType - 185, // 57: tabletmanagerdata.ReadVReplicationWorkflowResponse.workflow_sub_type:type_name -> binlogdata.VReplicationWorkflowSubType - 152, // 58: tabletmanagerdata.ReadVReplicationWorkflowResponse.streams:type_name -> tabletmanagerdata.ReadVReplicationWorkflowResponse.Stream - 153, // 59: tabletmanagerdata.ReadVReplicationWorkflowResponse.config_overrides:type_name -> tabletmanagerdata.ReadVReplicationWorkflowResponse.ConfigOverridesEntry + 191, // 56: tabletmanagerdata.ReadVReplicationWorkflowResponse.workflow_type:type_name -> binlogdata.VReplicationWorkflowType + 192, // 57: tabletmanagerdata.ReadVReplicationWorkflowResponse.workflow_sub_type:type_name -> binlogdata.VReplicationWorkflowSubType + 156, // 58: tabletmanagerdata.ReadVReplicationWorkflowResponse.streams:type_name -> tabletmanagerdata.ReadVReplicationWorkflowResponse.Stream + 157, // 59: tabletmanagerdata.ReadVReplicationWorkflowResponse.config_overrides:type_name -> tabletmanagerdata.ReadVReplicationWorkflowResponse.ConfigOverridesEntry 133, // 60: tabletmanagerdata.VDiffRequest.options:type_name -> tabletmanagerdata.VDiffOptions - 171, // 61: tabletmanagerdata.VDiffResponse.output:type_name -> query.QueryResult + 178, // 61: tabletmanagerdata.VDiffResponse.output:type_name -> query.QueryResult 130, // 62: tabletmanagerdata.VDiffOptions.picker_options:type_name -> tabletmanagerdata.VDiffPickerOptions 132, // 63: tabletmanagerdata.VDiffOptions.core_options:type_name -> tabletmanagerdata.VDiffCoreOptions 131, // 64: tabletmanagerdata.VDiffOptions.report_options:type_name -> tabletmanagerdata.VDiffReportOptions - 171, // 65: tabletmanagerdata.VDiffTableLastPK.target:type_name -> query.QueryResult - 171, // 66: tabletmanagerdata.VDiffTableLastPK.source:type_name -> query.QueryResult - 169, // 67: tabletmanagerdata.UpdateVReplicationWorkflowRequest.tablet_types:type_name -> topodata.TabletType + 178, // 65: tabletmanagerdata.VDiffTableLastPK.target:type_name -> query.QueryResult + 178, // 66: tabletmanagerdata.VDiffTableLastPK.source:type_name -> query.QueryResult + 176, // 67: tabletmanagerdata.UpdateVReplicationWorkflowRequest.tablet_types:type_name -> topodata.TabletType 0, // 68: tabletmanagerdata.UpdateVReplicationWorkflowRequest.tablet_selection_preference:type_name -> tabletmanagerdata.TabletSelectionPreference - 187, // 69: tabletmanagerdata.UpdateVReplicationWorkflowRequest.on_ddl:type_name -> binlogdata.OnDDLAction - 186, // 70: tabletmanagerdata.UpdateVReplicationWorkflowRequest.state:type_name -> binlogdata.VReplicationWorkflowState - 154, // 71: tabletmanagerdata.UpdateVReplicationWorkflowRequest.config_overrides:type_name -> tabletmanagerdata.UpdateVReplicationWorkflowRequest.ConfigOverridesEntry - 171, // 72: tabletmanagerdata.UpdateVReplicationWorkflowResponse.result:type_name -> query.QueryResult - 186, // 73: tabletmanagerdata.UpdateVReplicationWorkflowsRequest.state:type_name -> binlogdata.VReplicationWorkflowState - 171, // 74: tabletmanagerdata.UpdateVReplicationWorkflowsResponse.result:type_name -> query.QueryResult - 156, // 75: tabletmanagerdata.CheckThrottlerResponse.metrics:type_name -> tabletmanagerdata.CheckThrottlerResponse.MetricsEntry + 194, // 69: tabletmanagerdata.UpdateVReplicationWorkflowRequest.on_ddl:type_name -> binlogdata.OnDDLAction + 193, // 70: tabletmanagerdata.UpdateVReplicationWorkflowRequest.state:type_name -> binlogdata.VReplicationWorkflowState + 158, // 71: tabletmanagerdata.UpdateVReplicationWorkflowRequest.config_overrides:type_name -> tabletmanagerdata.UpdateVReplicationWorkflowRequest.ConfigOverridesEntry + 178, // 72: tabletmanagerdata.UpdateVReplicationWorkflowResponse.result:type_name -> query.QueryResult + 193, // 73: tabletmanagerdata.UpdateVReplicationWorkflowsRequest.state:type_name -> binlogdata.VReplicationWorkflowState + 178, // 74: tabletmanagerdata.UpdateVReplicationWorkflowsResponse.result:type_name -> query.QueryResult + 160, // 75: tabletmanagerdata.CheckThrottlerResponse.metrics:type_name -> tabletmanagerdata.CheckThrottlerResponse.MetricsEntry 1, // 76: tabletmanagerdata.CheckThrottlerResponse.response_code:type_name -> tabletmanagerdata.CheckThrottlerResponseCode - 158, // 77: tabletmanagerdata.GetThrottlerStatusResponse.aggregated_metrics:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.AggregatedMetricsEntry - 159, // 78: tabletmanagerdata.GetThrottlerStatusResponse.metric_thresholds:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.MetricThresholdsEntry - 161, // 79: tabletmanagerdata.GetThrottlerStatusResponse.metrics_health:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.MetricsHealthEntry - 162, // 80: tabletmanagerdata.GetThrottlerStatusResponse.throttled_apps:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.ThrottledAppsEntry - 163, // 81: tabletmanagerdata.GetThrottlerStatusResponse.app_checked_metrics:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.AppCheckedMetricsEntry - 165, // 82: tabletmanagerdata.GetThrottlerStatusResponse.recent_apps:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.RecentAppsEntry - 166, // 83: tabletmanagerdata.ChangeTagsRequest.tags:type_name -> tabletmanagerdata.ChangeTagsRequest.TagsEntry - 167, // 84: tabletmanagerdata.ChangeTagsResponse.tags:type_name -> tabletmanagerdata.ChangeTagsResponse.TagsEntry - 183, // 85: tabletmanagerdata.ReadVReplicationWorkflowResponse.Stream.bls:type_name -> binlogdata.BinlogSource - 182, // 86: tabletmanagerdata.ReadVReplicationWorkflowResponse.Stream.time_updated:type_name -> vttime.Time - 182, // 87: tabletmanagerdata.ReadVReplicationWorkflowResponse.Stream.transaction_timestamp:type_name -> vttime.Time - 186, // 88: tabletmanagerdata.ReadVReplicationWorkflowResponse.Stream.state:type_name -> binlogdata.VReplicationWorkflowState - 182, // 89: tabletmanagerdata.ReadVReplicationWorkflowResponse.Stream.time_heartbeat:type_name -> vttime.Time - 182, // 90: tabletmanagerdata.ReadVReplicationWorkflowResponse.Stream.time_throttled:type_name -> vttime.Time - 1, // 91: tabletmanagerdata.CheckThrottlerResponse.Metric.response_code:type_name -> tabletmanagerdata.CheckThrottlerResponseCode - 155, // 92: tabletmanagerdata.CheckThrottlerResponse.MetricsEntry.value:type_name -> tabletmanagerdata.CheckThrottlerResponse.Metric - 157, // 93: tabletmanagerdata.GetThrottlerStatusResponse.AggregatedMetricsEntry.value:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.MetricResult - 182, // 94: tabletmanagerdata.GetThrottlerStatusResponse.MetricHealth.last_healthy_at:type_name -> vttime.Time - 160, // 95: tabletmanagerdata.GetThrottlerStatusResponse.MetricsHealthEntry.value:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.MetricHealth - 188, // 96: tabletmanagerdata.GetThrottlerStatusResponse.ThrottledAppsEntry.value:type_name -> topodata.ThrottledAppRule - 182, // 97: tabletmanagerdata.GetThrottlerStatusResponse.RecentApp.checked_at:type_name -> vttime.Time - 1, // 98: tabletmanagerdata.GetThrottlerStatusResponse.RecentApp.response_code:type_name -> tabletmanagerdata.CheckThrottlerResponseCode - 164, // 99: tabletmanagerdata.GetThrottlerStatusResponse.RecentAppsEntry.value:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.RecentApp - 100, // [100:100] is the sub-list for method output_type - 100, // [100:100] is the sub-list for method input_type - 100, // [100:100] is the sub-list for extension type_name - 100, // [100:100] is the sub-list for extension extendee - 0, // [0:100] is the sub-list for field type_name + 162, // 77: tabletmanagerdata.GetThrottlerStatusResponse.aggregated_metrics:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.AggregatedMetricsEntry + 163, // 78: tabletmanagerdata.GetThrottlerStatusResponse.metric_thresholds:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.MetricThresholdsEntry + 165, // 79: tabletmanagerdata.GetThrottlerStatusResponse.metrics_health:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.MetricsHealthEntry + 166, // 80: tabletmanagerdata.GetThrottlerStatusResponse.throttled_apps:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.ThrottledAppsEntry + 167, // 81: tabletmanagerdata.GetThrottlerStatusResponse.app_checked_metrics:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.AppCheckedMetricsEntry + 169, // 82: tabletmanagerdata.GetThrottlerStatusResponse.recent_apps:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.RecentAppsEntry + 170, // 83: tabletmanagerdata.ChangeTagsRequest.tags:type_name -> tabletmanagerdata.ChangeTagsRequest.TagsEntry + 171, // 84: tabletmanagerdata.ChangeTagsResponse.tags:type_name -> tabletmanagerdata.ChangeTagsResponse.TagsEntry + 172, // 85: tabletmanagerdata.UpdateSequenceTablesRequest.sequences:type_name -> tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata + 173, // 86: tabletmanagerdata.GetMaxValueForSequencesRequest.sequences:type_name -> tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata + 174, // 87: tabletmanagerdata.GetMaxValueForSequencesResponse.max_values_by_sequence_table:type_name -> tabletmanagerdata.GetMaxValueForSequencesResponse.MaxValuesBySequenceTableEntry + 190, // 88: tabletmanagerdata.ReadVReplicationWorkflowResponse.Stream.bls:type_name -> binlogdata.BinlogSource + 189, // 89: tabletmanagerdata.ReadVReplicationWorkflowResponse.Stream.time_updated:type_name -> vttime.Time + 189, // 90: tabletmanagerdata.ReadVReplicationWorkflowResponse.Stream.transaction_timestamp:type_name -> vttime.Time + 193, // 91: tabletmanagerdata.ReadVReplicationWorkflowResponse.Stream.state:type_name -> binlogdata.VReplicationWorkflowState + 189, // 92: tabletmanagerdata.ReadVReplicationWorkflowResponse.Stream.time_heartbeat:type_name -> vttime.Time + 189, // 93: tabletmanagerdata.ReadVReplicationWorkflowResponse.Stream.time_throttled:type_name -> vttime.Time + 1, // 94: tabletmanagerdata.CheckThrottlerResponse.Metric.response_code:type_name -> tabletmanagerdata.CheckThrottlerResponseCode + 159, // 95: tabletmanagerdata.CheckThrottlerResponse.MetricsEntry.value:type_name -> tabletmanagerdata.CheckThrottlerResponse.Metric + 161, // 96: tabletmanagerdata.GetThrottlerStatusResponse.AggregatedMetricsEntry.value:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.MetricResult + 189, // 97: tabletmanagerdata.GetThrottlerStatusResponse.MetricHealth.last_healthy_at:type_name -> vttime.Time + 164, // 98: tabletmanagerdata.GetThrottlerStatusResponse.MetricsHealthEntry.value:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.MetricHealth + 195, // 99: tabletmanagerdata.GetThrottlerStatusResponse.ThrottledAppsEntry.value:type_name -> topodata.ThrottledAppRule + 189, // 100: tabletmanagerdata.GetThrottlerStatusResponse.RecentApp.checked_at:type_name -> vttime.Time + 1, // 101: tabletmanagerdata.GetThrottlerStatusResponse.RecentApp.response_code:type_name -> tabletmanagerdata.CheckThrottlerResponseCode + 168, // 102: tabletmanagerdata.GetThrottlerStatusResponse.RecentAppsEntry.value:type_name -> tabletmanagerdata.GetThrottlerStatusResponse.RecentApp + 103, // [103:103] is the sub-list for method output_type + 103, // [103:103] is the sub-list for method input_type + 103, // [103:103] is the sub-list for extension type_name + 103, // [103:103] is the sub-list for extension extendee + 0, // [0:103] is the sub-list for field type_name } func init() { file_tabletmanagerdata_proto_init() } @@ -9556,7 +9929,7 @@ func file_tabletmanagerdata_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: unsafe.Slice(unsafe.StringData(file_tabletmanagerdata_proto_rawDesc), len(file_tabletmanagerdata_proto_rawDesc)), NumEnums: 2, - NumMessages: 166, + NumMessages: 173, NumExtensions: 0, NumServices: 0, }, diff --git a/go/vt/proto/tabletmanagerdata/tabletmanagerdata_vtproto.pb.go b/go/vt/proto/tabletmanagerdata/tabletmanagerdata_vtproto.pb.go index 74e3cab9f1e..5b7cd8b4d5a 100644 --- a/go/vt/proto/tabletmanagerdata/tabletmanagerdata_vtproto.pb.go +++ b/go/vt/proto/tabletmanagerdata/tabletmanagerdata_vtproto.pb.go @@ -3024,6 +3024,130 @@ func (m *ChangeTagsResponse) CloneMessageVT() proto.Message { return m.CloneVT() } +func (m *UpdateSequenceTablesRequest_SequenceMetadata) CloneVT() *UpdateSequenceTablesRequest_SequenceMetadata { + if m == nil { + return (*UpdateSequenceTablesRequest_SequenceMetadata)(nil) + } + r := new(UpdateSequenceTablesRequest_SequenceMetadata) + r.BackingTableName = m.BackingTableName + r.BackingTableDbName = m.BackingTableDbName + r.MaxValue = m.MaxValue + if len(m.unknownFields) > 0 { + r.unknownFields = make([]byte, len(m.unknownFields)) + copy(r.unknownFields, m.unknownFields) + } + return r +} + +func (m *UpdateSequenceTablesRequest_SequenceMetadata) CloneMessageVT() proto.Message { + return m.CloneVT() +} + +func (m *UpdateSequenceTablesRequest) CloneVT() *UpdateSequenceTablesRequest { + if m == nil { + return (*UpdateSequenceTablesRequest)(nil) + } + r := new(UpdateSequenceTablesRequest) + if rhs := m.Sequences; rhs != nil { + tmpContainer := make([]*UpdateSequenceTablesRequest_SequenceMetadata, len(rhs)) + for k, v := range rhs { + tmpContainer[k] = v.CloneVT() + } + r.Sequences = tmpContainer + } + if len(m.unknownFields) > 0 { + r.unknownFields = make([]byte, len(m.unknownFields)) + copy(r.unknownFields, m.unknownFields) + } + return r +} + +func (m *UpdateSequenceTablesRequest) CloneMessageVT() proto.Message { + return m.CloneVT() +} + +func (m *UpdateSequenceTablesResponse) CloneVT() *UpdateSequenceTablesResponse { + if m == nil { + return (*UpdateSequenceTablesResponse)(nil) + } + r := new(UpdateSequenceTablesResponse) + if len(m.unknownFields) > 0 { + r.unknownFields = make([]byte, len(m.unknownFields)) + copy(r.unknownFields, m.unknownFields) + } + return r +} + +func (m *UpdateSequenceTablesResponse) CloneMessageVT() proto.Message { + return m.CloneVT() +} + +func (m *GetMaxValueForSequencesRequest_SequenceMetadata) CloneVT() *GetMaxValueForSequencesRequest_SequenceMetadata { + if m == nil { + return (*GetMaxValueForSequencesRequest_SequenceMetadata)(nil) + } + r := new(GetMaxValueForSequencesRequest_SequenceMetadata) + r.BackingTableName = m.BackingTableName + r.UsingColEscaped = m.UsingColEscaped + r.UsingTableNameEscaped = m.UsingTableNameEscaped + r.UsingTableDbNameEscaped = m.UsingTableDbNameEscaped + if len(m.unknownFields) > 0 { + r.unknownFields = make([]byte, len(m.unknownFields)) + copy(r.unknownFields, m.unknownFields) + } + return r +} + +func (m *GetMaxValueForSequencesRequest_SequenceMetadata) CloneMessageVT() proto.Message { + return m.CloneVT() +} + +func (m *GetMaxValueForSequencesRequest) CloneVT() *GetMaxValueForSequencesRequest { + if m == nil { + return (*GetMaxValueForSequencesRequest)(nil) + } + r := new(GetMaxValueForSequencesRequest) + if rhs := m.Sequences; rhs != nil { + tmpContainer := make([]*GetMaxValueForSequencesRequest_SequenceMetadata, len(rhs)) + for k, v := range rhs { + tmpContainer[k] = v.CloneVT() + } + r.Sequences = tmpContainer + } + if len(m.unknownFields) > 0 { + r.unknownFields = make([]byte, len(m.unknownFields)) + copy(r.unknownFields, m.unknownFields) + } + return r +} + +func (m *GetMaxValueForSequencesRequest) CloneMessageVT() proto.Message { + return m.CloneVT() +} + +func (m *GetMaxValueForSequencesResponse) CloneVT() *GetMaxValueForSequencesResponse { + if m == nil { + return (*GetMaxValueForSequencesResponse)(nil) + } + r := new(GetMaxValueForSequencesResponse) + if rhs := m.MaxValuesBySequenceTable; rhs != nil { + tmpContainer := make(map[string]int64, len(rhs)) + for k, v := range rhs { + tmpContainer[k] = v + } + r.MaxValuesBySequenceTable = tmpContainer + } + if len(m.unknownFields) > 0 { + r.unknownFields = make([]byte, len(m.unknownFields)) + copy(r.unknownFields, m.unknownFields) + } + return r +} + +func (m *GetMaxValueForSequencesResponse) CloneMessageVT() proto.Message { + return m.CloneVT() +} + func (m *TableDefinition) MarshalVT() (dAtA []byte, err error) { if m == nil { return nil, nil @@ -10604,122 +10728,408 @@ func (m *ChangeTagsResponse) MarshalToSizedBufferVT(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *TableDefinition) SizeVT() (n int) { +func (m *UpdateSequenceTablesRequest_SequenceMetadata) MarshalVT() (dAtA []byte, err error) { if m == nil { - return 0 + return nil, nil } - var l int - _ = l - l = len(m.Name) - if l > 0 { - n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + size := m.SizeVT() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBufferVT(dAtA[:size]) + if err != nil { + return nil, err } - l = len(m.Schema) - if l > 0 { - n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + return dAtA[:n], nil +} + +func (m *UpdateSequenceTablesRequest_SequenceMetadata) MarshalToVT(dAtA []byte) (int, error) { + size := m.SizeVT() + return m.MarshalToSizedBufferVT(dAtA[:size]) +} + +func (m *UpdateSequenceTablesRequest_SequenceMetadata) MarshalToSizedBufferVT(dAtA []byte) (int, error) { + if m == nil { + return 0, nil } - if len(m.Columns) > 0 { - for _, s := range m.Columns { - l = len(s) - n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) - } + i := len(dAtA) + _ = i + var l int + _ = l + if m.unknownFields != nil { + i -= len(m.unknownFields) + copy(dAtA[i:], m.unknownFields) } - if len(m.PrimaryKeyColumns) > 0 { - for _, s := range m.PrimaryKeyColumns { - l = len(s) - n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) - } + if m.MaxValue != 0 { + i = protohelpers.EncodeVarint(dAtA, i, uint64(m.MaxValue)) + i-- + dAtA[i] = 0x18 } - l = len(m.Type) - if l > 0 { - n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + if len(m.BackingTableDbName) > 0 { + i -= len(m.BackingTableDbName) + copy(dAtA[i:], m.BackingTableDbName) + i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.BackingTableDbName))) + i-- + dAtA[i] = 0x12 } - if m.DataLength != 0 { - n += 1 + protohelpers.SizeOfVarint(uint64(m.DataLength)) + if len(m.BackingTableName) > 0 { + i -= len(m.BackingTableName) + copy(dAtA[i:], m.BackingTableName) + i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.BackingTableName))) + i-- + dAtA[i] = 0xa } - if m.RowCount != 0 { - n += 1 + protohelpers.SizeOfVarint(uint64(m.RowCount)) + return len(dAtA) - i, nil +} + +func (m *UpdateSequenceTablesRequest) MarshalVT() (dAtA []byte, err error) { + if m == nil { + return nil, nil } - if len(m.Fields) > 0 { - for _, e := range m.Fields { - l = e.SizeVT() - n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) - } + size := m.SizeVT() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBufferVT(dAtA[:size]) + if err != nil { + return nil, err } - n += len(m.unknownFields) - return n + return dAtA[:n], nil } -func (m *SchemaDefinition) SizeVT() (n int) { +func (m *UpdateSequenceTablesRequest) MarshalToVT(dAtA []byte) (int, error) { + size := m.SizeVT() + return m.MarshalToSizedBufferVT(dAtA[:size]) +} + +func (m *UpdateSequenceTablesRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { if m == nil { - return 0 + return 0, nil } + i := len(dAtA) + _ = i var l int _ = l - l = len(m.DatabaseSchema) - if l > 0 { - n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + if m.unknownFields != nil { + i -= len(m.unknownFields) + copy(dAtA[i:], m.unknownFields) } - if len(m.TableDefinitions) > 0 { - for _, e := range m.TableDefinitions { - l = e.SizeVT() - n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + if len(m.Sequences) > 0 { + for iNdEx := len(m.Sequences) - 1; iNdEx >= 0; iNdEx-- { + size, err := m.Sequences[iNdEx].MarshalToSizedBufferVT(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = protohelpers.EncodeVarint(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0xa } } - n += len(m.unknownFields) - return n + return len(dAtA) - i, nil } -func (m *SchemaChangeResult) SizeVT() (n int) { +func (m *UpdateSequenceTablesResponse) MarshalVT() (dAtA []byte, err error) { if m == nil { - return 0 - } - var l int - _ = l - if m.BeforeSchema != nil { - l = m.BeforeSchema.SizeVT() - n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + return nil, nil } - if m.AfterSchema != nil { - l = m.AfterSchema.SizeVT() - n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + size := m.SizeVT() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBufferVT(dAtA[:size]) + if err != nil { + return nil, err } - n += len(m.unknownFields) - return n + return dAtA[:n], nil } -func (m *UserPermission) SizeVT() (n int) { +func (m *UpdateSequenceTablesResponse) MarshalToVT(dAtA []byte) (int, error) { + size := m.SizeVT() + return m.MarshalToSizedBufferVT(dAtA[:size]) +} + +func (m *UpdateSequenceTablesResponse) MarshalToSizedBufferVT(dAtA []byte) (int, error) { if m == nil { - return 0 + return 0, nil } + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Host) - if l > 0 { - n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) - } - l = len(m.User) - if l > 0 { - n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + if m.unknownFields != nil { + i -= len(m.unknownFields) + copy(dAtA[i:], m.unknownFields) } - if m.PasswordChecksum != 0 { - n += 1 + protohelpers.SizeOfVarint(uint64(m.PasswordChecksum)) + return len(dAtA) - i, nil +} + +func (m *GetMaxValueForSequencesRequest_SequenceMetadata) MarshalVT() (dAtA []byte, err error) { + if m == nil { + return nil, nil } - if len(m.Privileges) > 0 { - for k, v := range m.Privileges { - _ = k - _ = v - mapEntrySize := 1 + len(k) + protohelpers.SizeOfVarint(uint64(len(k))) + 1 + len(v) + protohelpers.SizeOfVarint(uint64(len(v))) - n += mapEntrySize + 1 + protohelpers.SizeOfVarint(uint64(mapEntrySize)) - } + size := m.SizeVT() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBufferVT(dAtA[:size]) + if err != nil { + return nil, err } - n += len(m.unknownFields) - return n + return dAtA[:n], nil } -func (m *DbPermission) SizeVT() (n int) { +func (m *GetMaxValueForSequencesRequest_SequenceMetadata) MarshalToVT(dAtA []byte) (int, error) { + size := m.SizeVT() + return m.MarshalToSizedBufferVT(dAtA[:size]) +} + +func (m *GetMaxValueForSequencesRequest_SequenceMetadata) MarshalToSizedBufferVT(dAtA []byte) (int, error) { if m == nil { - return 0 + return 0, nil + } + i := len(dAtA) + _ = i + var l int + _ = l + if m.unknownFields != nil { + i -= len(m.unknownFields) + copy(dAtA[i:], m.unknownFields) + } + if len(m.UsingTableDbNameEscaped) > 0 { + i -= len(m.UsingTableDbNameEscaped) + copy(dAtA[i:], m.UsingTableDbNameEscaped) + i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.UsingTableDbNameEscaped))) + i-- + dAtA[i] = 0x22 + } + if len(m.UsingTableNameEscaped) > 0 { + i -= len(m.UsingTableNameEscaped) + copy(dAtA[i:], m.UsingTableNameEscaped) + i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.UsingTableNameEscaped))) + i-- + dAtA[i] = 0x1a + } + if len(m.UsingColEscaped) > 0 { + i -= len(m.UsingColEscaped) + copy(dAtA[i:], m.UsingColEscaped) + i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.UsingColEscaped))) + i-- + dAtA[i] = 0x12 + } + if len(m.BackingTableName) > 0 { + i -= len(m.BackingTableName) + copy(dAtA[i:], m.BackingTableName) + i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.BackingTableName))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *GetMaxValueForSequencesRequest) MarshalVT() (dAtA []byte, err error) { + if m == nil { + return nil, nil + } + size := m.SizeVT() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBufferVT(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GetMaxValueForSequencesRequest) MarshalToVT(dAtA []byte) (int, error) { + size := m.SizeVT() + return m.MarshalToSizedBufferVT(dAtA[:size]) +} + +func (m *GetMaxValueForSequencesRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { + if m == nil { + return 0, nil + } + i := len(dAtA) + _ = i + var l int + _ = l + if m.unknownFields != nil { + i -= len(m.unknownFields) + copy(dAtA[i:], m.unknownFields) + } + if len(m.Sequences) > 0 { + for iNdEx := len(m.Sequences) - 1; iNdEx >= 0; iNdEx-- { + size, err := m.Sequences[iNdEx].MarshalToSizedBufferVT(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = protohelpers.EncodeVarint(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *GetMaxValueForSequencesResponse) MarshalVT() (dAtA []byte, err error) { + if m == nil { + return nil, nil + } + size := m.SizeVT() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBufferVT(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GetMaxValueForSequencesResponse) MarshalToVT(dAtA []byte) (int, error) { + size := m.SizeVT() + return m.MarshalToSizedBufferVT(dAtA[:size]) +} + +func (m *GetMaxValueForSequencesResponse) MarshalToSizedBufferVT(dAtA []byte) (int, error) { + if m == nil { + return 0, nil + } + i := len(dAtA) + _ = i + var l int + _ = l + if m.unknownFields != nil { + i -= len(m.unknownFields) + copy(dAtA[i:], m.unknownFields) + } + if len(m.MaxValuesBySequenceTable) > 0 { + for k := range m.MaxValuesBySequenceTable { + v := m.MaxValuesBySequenceTable[k] + baseI := i + i = protohelpers.EncodeVarint(dAtA, i, uint64(v)) + i-- + dAtA[i] = 0x10 + i -= len(k) + copy(dAtA[i:], k) + i = protohelpers.EncodeVarint(dAtA, i, uint64(len(k))) + i-- + dAtA[i] = 0xa + i = protohelpers.EncodeVarint(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *TableDefinition) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Name) + if l > 0 { + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + l = len(m.Schema) + if l > 0 { + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + if len(m.Columns) > 0 { + for _, s := range m.Columns { + l = len(s) + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + } + if len(m.PrimaryKeyColumns) > 0 { + for _, s := range m.PrimaryKeyColumns { + l = len(s) + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + } + l = len(m.Type) + if l > 0 { + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + if m.DataLength != 0 { + n += 1 + protohelpers.SizeOfVarint(uint64(m.DataLength)) + } + if m.RowCount != 0 { + n += 1 + protohelpers.SizeOfVarint(uint64(m.RowCount)) + } + if len(m.Fields) > 0 { + for _, e := range m.Fields { + l = e.SizeVT() + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + } + n += len(m.unknownFields) + return n +} + +func (m *SchemaDefinition) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.DatabaseSchema) + if l > 0 { + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + if len(m.TableDefinitions) > 0 { + for _, e := range m.TableDefinitions { + l = e.SizeVT() + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + } + n += len(m.unknownFields) + return n +} + +func (m *SchemaChangeResult) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.BeforeSchema != nil { + l = m.BeforeSchema.SizeVT() + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + if m.AfterSchema != nil { + l = m.AfterSchema.SizeVT() + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + n += len(m.unknownFields) + return n +} + +func (m *UserPermission) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Host) + if l > 0 { + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + l = len(m.User) + if l > 0 { + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + if m.PasswordChecksum != 0 { + n += 1 + protohelpers.SizeOfVarint(uint64(m.PasswordChecksum)) + } + if len(m.Privileges) > 0 { + for k, v := range m.Privileges { + _ = k + _ = v + mapEntrySize := 1 + len(k) + protohelpers.SizeOfVarint(uint64(len(k))) + 1 + len(v) + protohelpers.SizeOfVarint(uint64(len(v))) + n += mapEntrySize + 1 + protohelpers.SizeOfVarint(uint64(mapEntrySize)) + } + } + n += len(m.unknownFields) + return n +} + +func (m *DbPermission) SizeVT() (n int) { + if m == nil { + return 0 } var l int _ = l @@ -13346,43 +13756,150 @@ func (m *ChangeTagsResponse) SizeVT() (n int) { return n } -func (m *TableDefinition) UnmarshalVT(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return protohelpers.ErrIntOverflow - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: TableDefinition: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: TableDefinition: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return protohelpers.ErrIntOverflow +func (m *UpdateSequenceTablesRequest_SequenceMetadata) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.BackingTableName) + if l > 0 { + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + l = len(m.BackingTableDbName) + if l > 0 { + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + if m.MaxValue != 0 { + n += 1 + protohelpers.SizeOfVarint(uint64(m.MaxValue)) + } + n += len(m.unknownFields) + return n +} + +func (m *UpdateSequenceTablesRequest) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Sequences) > 0 { + for _, e := range m.Sequences { + l = e.SizeVT() + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + } + n += len(m.unknownFields) + return n +} + +func (m *UpdateSequenceTablesResponse) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + n += len(m.unknownFields) + return n +} + +func (m *GetMaxValueForSequencesRequest_SequenceMetadata) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.BackingTableName) + if l > 0 { + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + l = len(m.UsingColEscaped) + if l > 0 { + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + l = len(m.UsingTableNameEscaped) + if l > 0 { + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + l = len(m.UsingTableDbNameEscaped) + if l > 0 { + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + n += len(m.unknownFields) + return n +} + +func (m *GetMaxValueForSequencesRequest) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Sequences) > 0 { + for _, e := range m.Sequences { + l = e.SizeVT() + n += 1 + l + protohelpers.SizeOfVarint(uint64(l)) + } + } + n += len(m.unknownFields) + return n +} + +func (m *GetMaxValueForSequencesResponse) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.MaxValuesBySequenceTable) > 0 { + for k, v := range m.MaxValuesBySequenceTable { + _ = k + _ = v + mapEntrySize := 1 + len(k) + protohelpers.SizeOfVarint(uint64(len(k))) + 1 + protohelpers.SizeOfVarint(uint64(v)) + n += mapEntrySize + 1 + protohelpers.SizeOfVarint(uint64(mapEntrySize)) + } + } + n += len(m.unknownFields) + return n +} + +func (m *TableDefinition) UnmarshalVT(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: TableDefinition: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: TableDefinition: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow } if iNdEx >= l { return io.ErrUnexpectedEOF @@ -31063,3 +31580,701 @@ func (m *ChangeTagsResponse) UnmarshalVT(dAtA []byte) error { } return nil } +func (m *UpdateSequenceTablesRequest_SequenceMetadata) UnmarshalVT(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: UpdateSequenceTablesRequest_SequenceMetadata: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: UpdateSequenceTablesRequest_SequenceMetadata: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BackingTableName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protohelpers.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protohelpers.ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BackingTableName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BackingTableDbName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protohelpers.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protohelpers.ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BackingTableDbName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field MaxValue", wireType) + } + m.MaxValue = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.MaxValue |= int64(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := protohelpers.Skip(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protohelpers.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *UpdateSequenceTablesRequest) UnmarshalVT(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: UpdateSequenceTablesRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: UpdateSequenceTablesRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Sequences", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protohelpers.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protohelpers.ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Sequences = append(m.Sequences, &UpdateSequenceTablesRequest_SequenceMetadata{}) + if err := m.Sequences[len(m.Sequences)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := protohelpers.Skip(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protohelpers.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *UpdateSequenceTablesResponse) UnmarshalVT(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: UpdateSequenceTablesResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: UpdateSequenceTablesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := protohelpers.Skip(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protohelpers.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GetMaxValueForSequencesRequest_SequenceMetadata) UnmarshalVT(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetMaxValueForSequencesRequest_SequenceMetadata: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetMaxValueForSequencesRequest_SequenceMetadata: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field BackingTableName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protohelpers.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protohelpers.ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.BackingTableName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UsingColEscaped", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protohelpers.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protohelpers.ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.UsingColEscaped = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UsingTableNameEscaped", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protohelpers.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protohelpers.ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.UsingTableNameEscaped = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UsingTableDbNameEscaped", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protohelpers.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protohelpers.ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.UsingTableDbNameEscaped = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := protohelpers.Skip(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protohelpers.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GetMaxValueForSequencesRequest) UnmarshalVT(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetMaxValueForSequencesRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetMaxValueForSequencesRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Sequences", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protohelpers.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protohelpers.ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Sequences = append(m.Sequences, &GetMaxValueForSequencesRequest_SequenceMetadata{}) + if err := m.Sequences[len(m.Sequences)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := protohelpers.Skip(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protohelpers.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GetMaxValueForSequencesResponse) UnmarshalVT(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GetMaxValueForSequencesResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetMaxValueForSequencesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MaxValuesBySequenceTable", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protohelpers.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protohelpers.ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.MaxValuesBySequenceTable == nil { + m.MaxValuesBySequenceTable = make(map[string]int64) + } + var mapkey string + var mapvalue int64 + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return protohelpers.ErrInvalidLength + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return protohelpers.ErrInvalidLength + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protohelpers.ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + mapvalue |= int64(b&0x7F) << shift + if b < 0x80 { + break + } + } + } else { + iNdEx = entryPreIndex + skippy, err := protohelpers.Skip(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protohelpers.ErrInvalidLength + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.MaxValuesBySequenceTable[mapkey] = mapvalue + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := protohelpers.Skip(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protohelpers.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} diff --git a/go/vt/proto/tabletmanagerservice/tabletmanagerservice.pb.go b/go/vt/proto/tabletmanagerservice/tabletmanagerservice.pb.go index 4aacf643374..786c43b3256 100644 --- a/go/vt/proto/tabletmanagerservice/tabletmanagerservice.pb.go +++ b/go/vt/proto/tabletmanagerservice/tabletmanagerservice.pb.go @@ -46,7 +46,7 @@ var file_tabletmanagerservice_proto_rawDesc = string([]byte{ 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x14, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x1a, 0x17, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, - 0x72, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x9a, 0x3b, 0x0a, 0x0d, + 0x72, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x9a, 0x3d, 0x0a, 0x0d, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x12, 0x49, 0x0a, 0x04, 0x50, 0x69, 0x6e, 0x67, 0x12, 0x1e, 0x2e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x50, 0x69, 0x6e, 0x67, 0x52, 0x65, @@ -387,6 +387,22 @@ var file_tabletmanagerservice_proto_rawDesc = string([]byte{ 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x56, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x61, 0x69, 0x74, 0x46, 0x6f, 0x72, 0x50, 0x6f, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x79, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x12, + 0x2e, 0x2e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x64, + 0x61, 0x74, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x2f, 0x2e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x64, + 0x61, 0x74, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x82, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x31, + 0x2e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x64, 0x61, + 0x74, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x46, 0x6f, + 0x72, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x32, 0x2e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, + 0x72, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4c, 0x0a, 0x05, 0x56, 0x44, 0x69, 0x66, 0x66, 0x12, 0x1f, 0x2e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x56, 0x44, 0x69, 0x66, 0x66, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, @@ -576,92 +592,96 @@ var file_tabletmanagerservice_proto_goTypes = []any{ (*tabletmanagerdata.ValidateVReplicationPermissionsRequest)(nil), // 45: tabletmanagerdata.ValidateVReplicationPermissionsRequest (*tabletmanagerdata.VReplicationExecRequest)(nil), // 46: tabletmanagerdata.VReplicationExecRequest (*tabletmanagerdata.VReplicationWaitForPosRequest)(nil), // 47: tabletmanagerdata.VReplicationWaitForPosRequest - (*tabletmanagerdata.VDiffRequest)(nil), // 48: tabletmanagerdata.VDiffRequest - (*tabletmanagerdata.ResetReplicationRequest)(nil), // 49: tabletmanagerdata.ResetReplicationRequest - (*tabletmanagerdata.InitPrimaryRequest)(nil), // 50: tabletmanagerdata.InitPrimaryRequest - (*tabletmanagerdata.PopulateReparentJournalRequest)(nil), // 51: tabletmanagerdata.PopulateReparentJournalRequest - (*tabletmanagerdata.ReadReparentJournalInfoRequest)(nil), // 52: tabletmanagerdata.ReadReparentJournalInfoRequest - (*tabletmanagerdata.InitReplicaRequest)(nil), // 53: tabletmanagerdata.InitReplicaRequest - (*tabletmanagerdata.DemotePrimaryRequest)(nil), // 54: tabletmanagerdata.DemotePrimaryRequest - (*tabletmanagerdata.UndoDemotePrimaryRequest)(nil), // 55: tabletmanagerdata.UndoDemotePrimaryRequest - (*tabletmanagerdata.ReplicaWasPromotedRequest)(nil), // 56: tabletmanagerdata.ReplicaWasPromotedRequest - (*tabletmanagerdata.ResetReplicationParametersRequest)(nil), // 57: tabletmanagerdata.ResetReplicationParametersRequest - (*tabletmanagerdata.FullStatusRequest)(nil), // 58: tabletmanagerdata.FullStatusRequest - (*tabletmanagerdata.SetReplicationSourceRequest)(nil), // 59: tabletmanagerdata.SetReplicationSourceRequest - (*tabletmanagerdata.ReplicaWasRestartedRequest)(nil), // 60: tabletmanagerdata.ReplicaWasRestartedRequest - (*tabletmanagerdata.StopReplicationAndGetStatusRequest)(nil), // 61: tabletmanagerdata.StopReplicationAndGetStatusRequest - (*tabletmanagerdata.PromoteReplicaRequest)(nil), // 62: tabletmanagerdata.PromoteReplicaRequest - (*tabletmanagerdata.BackupRequest)(nil), // 63: tabletmanagerdata.BackupRequest - (*tabletmanagerdata.RestoreFromBackupRequest)(nil), // 64: tabletmanagerdata.RestoreFromBackupRequest - (*tabletmanagerdata.CheckThrottlerRequest)(nil), // 65: tabletmanagerdata.CheckThrottlerRequest - (*tabletmanagerdata.GetThrottlerStatusRequest)(nil), // 66: tabletmanagerdata.GetThrottlerStatusRequest - (*tabletmanagerdata.PingResponse)(nil), // 67: tabletmanagerdata.PingResponse - (*tabletmanagerdata.SleepResponse)(nil), // 68: tabletmanagerdata.SleepResponse - (*tabletmanagerdata.ExecuteHookResponse)(nil), // 69: tabletmanagerdata.ExecuteHookResponse - (*tabletmanagerdata.GetSchemaResponse)(nil), // 70: tabletmanagerdata.GetSchemaResponse - (*tabletmanagerdata.GetPermissionsResponse)(nil), // 71: tabletmanagerdata.GetPermissionsResponse - (*tabletmanagerdata.GetGlobalStatusVarsResponse)(nil), // 72: tabletmanagerdata.GetGlobalStatusVarsResponse - (*tabletmanagerdata.SetReadOnlyResponse)(nil), // 73: tabletmanagerdata.SetReadOnlyResponse - (*tabletmanagerdata.SetReadWriteResponse)(nil), // 74: tabletmanagerdata.SetReadWriteResponse - (*tabletmanagerdata.ChangeTagsResponse)(nil), // 75: tabletmanagerdata.ChangeTagsResponse - (*tabletmanagerdata.ChangeTypeResponse)(nil), // 76: tabletmanagerdata.ChangeTypeResponse - (*tabletmanagerdata.RefreshStateResponse)(nil), // 77: tabletmanagerdata.RefreshStateResponse - (*tabletmanagerdata.RunHealthCheckResponse)(nil), // 78: tabletmanagerdata.RunHealthCheckResponse - (*tabletmanagerdata.ReloadSchemaResponse)(nil), // 79: tabletmanagerdata.ReloadSchemaResponse - (*tabletmanagerdata.PreflightSchemaResponse)(nil), // 80: tabletmanagerdata.PreflightSchemaResponse - (*tabletmanagerdata.ApplySchemaResponse)(nil), // 81: tabletmanagerdata.ApplySchemaResponse - (*tabletmanagerdata.ResetSequencesResponse)(nil), // 82: tabletmanagerdata.ResetSequencesResponse - (*tabletmanagerdata.LockTablesResponse)(nil), // 83: tabletmanagerdata.LockTablesResponse - (*tabletmanagerdata.UnlockTablesResponse)(nil), // 84: tabletmanagerdata.UnlockTablesResponse - (*tabletmanagerdata.ExecuteQueryResponse)(nil), // 85: tabletmanagerdata.ExecuteQueryResponse - (*tabletmanagerdata.ExecuteFetchAsDbaResponse)(nil), // 86: tabletmanagerdata.ExecuteFetchAsDbaResponse - (*tabletmanagerdata.ExecuteMultiFetchAsDbaResponse)(nil), // 87: tabletmanagerdata.ExecuteMultiFetchAsDbaResponse - (*tabletmanagerdata.ExecuteFetchAsAllPrivsResponse)(nil), // 88: tabletmanagerdata.ExecuteFetchAsAllPrivsResponse - (*tabletmanagerdata.ExecuteFetchAsAppResponse)(nil), // 89: tabletmanagerdata.ExecuteFetchAsAppResponse - (*tabletmanagerdata.GetUnresolvedTransactionsResponse)(nil), // 90: tabletmanagerdata.GetUnresolvedTransactionsResponse - (*tabletmanagerdata.ReadTransactionResponse)(nil), // 91: tabletmanagerdata.ReadTransactionResponse - (*tabletmanagerdata.GetTransactionInfoResponse)(nil), // 92: tabletmanagerdata.GetTransactionInfoResponse - (*tabletmanagerdata.ConcludeTransactionResponse)(nil), // 93: tabletmanagerdata.ConcludeTransactionResponse - (*tabletmanagerdata.MysqlHostMetricsResponse)(nil), // 94: tabletmanagerdata.MysqlHostMetricsResponse - (*tabletmanagerdata.ReplicationStatusResponse)(nil), // 95: tabletmanagerdata.ReplicationStatusResponse - (*tabletmanagerdata.PrimaryStatusResponse)(nil), // 96: tabletmanagerdata.PrimaryStatusResponse - (*tabletmanagerdata.PrimaryPositionResponse)(nil), // 97: tabletmanagerdata.PrimaryPositionResponse - (*tabletmanagerdata.WaitForPositionResponse)(nil), // 98: tabletmanagerdata.WaitForPositionResponse - (*tabletmanagerdata.StopReplicationResponse)(nil), // 99: tabletmanagerdata.StopReplicationResponse - (*tabletmanagerdata.StopReplicationMinimumResponse)(nil), // 100: tabletmanagerdata.StopReplicationMinimumResponse - (*tabletmanagerdata.StartReplicationResponse)(nil), // 101: tabletmanagerdata.StartReplicationResponse - (*tabletmanagerdata.StartReplicationUntilAfterResponse)(nil), // 102: tabletmanagerdata.StartReplicationUntilAfterResponse - (*tabletmanagerdata.GetReplicasResponse)(nil), // 103: tabletmanagerdata.GetReplicasResponse - (*tabletmanagerdata.CreateVReplicationWorkflowResponse)(nil), // 104: tabletmanagerdata.CreateVReplicationWorkflowResponse - (*tabletmanagerdata.DeleteTableDataResponse)(nil), // 105: tabletmanagerdata.DeleteTableDataResponse - (*tabletmanagerdata.DeleteVReplicationWorkflowResponse)(nil), // 106: tabletmanagerdata.DeleteVReplicationWorkflowResponse - (*tabletmanagerdata.HasVReplicationWorkflowsResponse)(nil), // 107: tabletmanagerdata.HasVReplicationWorkflowsResponse - (*tabletmanagerdata.ReadVReplicationWorkflowResponse)(nil), // 108: tabletmanagerdata.ReadVReplicationWorkflowResponse - (*tabletmanagerdata.ReadVReplicationWorkflowsResponse)(nil), // 109: tabletmanagerdata.ReadVReplicationWorkflowsResponse - (*tabletmanagerdata.UpdateVReplicationWorkflowResponse)(nil), // 110: tabletmanagerdata.UpdateVReplicationWorkflowResponse - (*tabletmanagerdata.UpdateVReplicationWorkflowsResponse)(nil), // 111: tabletmanagerdata.UpdateVReplicationWorkflowsResponse - (*tabletmanagerdata.ValidateVReplicationPermissionsResponse)(nil), // 112: tabletmanagerdata.ValidateVReplicationPermissionsResponse - (*tabletmanagerdata.VReplicationExecResponse)(nil), // 113: tabletmanagerdata.VReplicationExecResponse - (*tabletmanagerdata.VReplicationWaitForPosResponse)(nil), // 114: tabletmanagerdata.VReplicationWaitForPosResponse - (*tabletmanagerdata.VDiffResponse)(nil), // 115: tabletmanagerdata.VDiffResponse - (*tabletmanagerdata.ResetReplicationResponse)(nil), // 116: tabletmanagerdata.ResetReplicationResponse - (*tabletmanagerdata.InitPrimaryResponse)(nil), // 117: tabletmanagerdata.InitPrimaryResponse - (*tabletmanagerdata.PopulateReparentJournalResponse)(nil), // 118: tabletmanagerdata.PopulateReparentJournalResponse - (*tabletmanagerdata.ReadReparentJournalInfoResponse)(nil), // 119: tabletmanagerdata.ReadReparentJournalInfoResponse - (*tabletmanagerdata.InitReplicaResponse)(nil), // 120: tabletmanagerdata.InitReplicaResponse - (*tabletmanagerdata.DemotePrimaryResponse)(nil), // 121: tabletmanagerdata.DemotePrimaryResponse - (*tabletmanagerdata.UndoDemotePrimaryResponse)(nil), // 122: tabletmanagerdata.UndoDemotePrimaryResponse - (*tabletmanagerdata.ReplicaWasPromotedResponse)(nil), // 123: tabletmanagerdata.ReplicaWasPromotedResponse - (*tabletmanagerdata.ResetReplicationParametersResponse)(nil), // 124: tabletmanagerdata.ResetReplicationParametersResponse - (*tabletmanagerdata.FullStatusResponse)(nil), // 125: tabletmanagerdata.FullStatusResponse - (*tabletmanagerdata.SetReplicationSourceResponse)(nil), // 126: tabletmanagerdata.SetReplicationSourceResponse - (*tabletmanagerdata.ReplicaWasRestartedResponse)(nil), // 127: tabletmanagerdata.ReplicaWasRestartedResponse - (*tabletmanagerdata.StopReplicationAndGetStatusResponse)(nil), // 128: tabletmanagerdata.StopReplicationAndGetStatusResponse - (*tabletmanagerdata.PromoteReplicaResponse)(nil), // 129: tabletmanagerdata.PromoteReplicaResponse - (*tabletmanagerdata.BackupResponse)(nil), // 130: tabletmanagerdata.BackupResponse - (*tabletmanagerdata.RestoreFromBackupResponse)(nil), // 131: tabletmanagerdata.RestoreFromBackupResponse - (*tabletmanagerdata.CheckThrottlerResponse)(nil), // 132: tabletmanagerdata.CheckThrottlerResponse - (*tabletmanagerdata.GetThrottlerStatusResponse)(nil), // 133: tabletmanagerdata.GetThrottlerStatusResponse + (*tabletmanagerdata.UpdateSequenceTablesRequest)(nil), // 48: tabletmanagerdata.UpdateSequenceTablesRequest + (*tabletmanagerdata.GetMaxValueForSequencesRequest)(nil), // 49: tabletmanagerdata.GetMaxValueForSequencesRequest + (*tabletmanagerdata.VDiffRequest)(nil), // 50: tabletmanagerdata.VDiffRequest + (*tabletmanagerdata.ResetReplicationRequest)(nil), // 51: tabletmanagerdata.ResetReplicationRequest + (*tabletmanagerdata.InitPrimaryRequest)(nil), // 52: tabletmanagerdata.InitPrimaryRequest + (*tabletmanagerdata.PopulateReparentJournalRequest)(nil), // 53: tabletmanagerdata.PopulateReparentJournalRequest + (*tabletmanagerdata.ReadReparentJournalInfoRequest)(nil), // 54: tabletmanagerdata.ReadReparentJournalInfoRequest + (*tabletmanagerdata.InitReplicaRequest)(nil), // 55: tabletmanagerdata.InitReplicaRequest + (*tabletmanagerdata.DemotePrimaryRequest)(nil), // 56: tabletmanagerdata.DemotePrimaryRequest + (*tabletmanagerdata.UndoDemotePrimaryRequest)(nil), // 57: tabletmanagerdata.UndoDemotePrimaryRequest + (*tabletmanagerdata.ReplicaWasPromotedRequest)(nil), // 58: tabletmanagerdata.ReplicaWasPromotedRequest + (*tabletmanagerdata.ResetReplicationParametersRequest)(nil), // 59: tabletmanagerdata.ResetReplicationParametersRequest + (*tabletmanagerdata.FullStatusRequest)(nil), // 60: tabletmanagerdata.FullStatusRequest + (*tabletmanagerdata.SetReplicationSourceRequest)(nil), // 61: tabletmanagerdata.SetReplicationSourceRequest + (*tabletmanagerdata.ReplicaWasRestartedRequest)(nil), // 62: tabletmanagerdata.ReplicaWasRestartedRequest + (*tabletmanagerdata.StopReplicationAndGetStatusRequest)(nil), // 63: tabletmanagerdata.StopReplicationAndGetStatusRequest + (*tabletmanagerdata.PromoteReplicaRequest)(nil), // 64: tabletmanagerdata.PromoteReplicaRequest + (*tabletmanagerdata.BackupRequest)(nil), // 65: tabletmanagerdata.BackupRequest + (*tabletmanagerdata.RestoreFromBackupRequest)(nil), // 66: tabletmanagerdata.RestoreFromBackupRequest + (*tabletmanagerdata.CheckThrottlerRequest)(nil), // 67: tabletmanagerdata.CheckThrottlerRequest + (*tabletmanagerdata.GetThrottlerStatusRequest)(nil), // 68: tabletmanagerdata.GetThrottlerStatusRequest + (*tabletmanagerdata.PingResponse)(nil), // 69: tabletmanagerdata.PingResponse + (*tabletmanagerdata.SleepResponse)(nil), // 70: tabletmanagerdata.SleepResponse + (*tabletmanagerdata.ExecuteHookResponse)(nil), // 71: tabletmanagerdata.ExecuteHookResponse + (*tabletmanagerdata.GetSchemaResponse)(nil), // 72: tabletmanagerdata.GetSchemaResponse + (*tabletmanagerdata.GetPermissionsResponse)(nil), // 73: tabletmanagerdata.GetPermissionsResponse + (*tabletmanagerdata.GetGlobalStatusVarsResponse)(nil), // 74: tabletmanagerdata.GetGlobalStatusVarsResponse + (*tabletmanagerdata.SetReadOnlyResponse)(nil), // 75: tabletmanagerdata.SetReadOnlyResponse + (*tabletmanagerdata.SetReadWriteResponse)(nil), // 76: tabletmanagerdata.SetReadWriteResponse + (*tabletmanagerdata.ChangeTagsResponse)(nil), // 77: tabletmanagerdata.ChangeTagsResponse + (*tabletmanagerdata.ChangeTypeResponse)(nil), // 78: tabletmanagerdata.ChangeTypeResponse + (*tabletmanagerdata.RefreshStateResponse)(nil), // 79: tabletmanagerdata.RefreshStateResponse + (*tabletmanagerdata.RunHealthCheckResponse)(nil), // 80: tabletmanagerdata.RunHealthCheckResponse + (*tabletmanagerdata.ReloadSchemaResponse)(nil), // 81: tabletmanagerdata.ReloadSchemaResponse + (*tabletmanagerdata.PreflightSchemaResponse)(nil), // 82: tabletmanagerdata.PreflightSchemaResponse + (*tabletmanagerdata.ApplySchemaResponse)(nil), // 83: tabletmanagerdata.ApplySchemaResponse + (*tabletmanagerdata.ResetSequencesResponse)(nil), // 84: tabletmanagerdata.ResetSequencesResponse + (*tabletmanagerdata.LockTablesResponse)(nil), // 85: tabletmanagerdata.LockTablesResponse + (*tabletmanagerdata.UnlockTablesResponse)(nil), // 86: tabletmanagerdata.UnlockTablesResponse + (*tabletmanagerdata.ExecuteQueryResponse)(nil), // 87: tabletmanagerdata.ExecuteQueryResponse + (*tabletmanagerdata.ExecuteFetchAsDbaResponse)(nil), // 88: tabletmanagerdata.ExecuteFetchAsDbaResponse + (*tabletmanagerdata.ExecuteMultiFetchAsDbaResponse)(nil), // 89: tabletmanagerdata.ExecuteMultiFetchAsDbaResponse + (*tabletmanagerdata.ExecuteFetchAsAllPrivsResponse)(nil), // 90: tabletmanagerdata.ExecuteFetchAsAllPrivsResponse + (*tabletmanagerdata.ExecuteFetchAsAppResponse)(nil), // 91: tabletmanagerdata.ExecuteFetchAsAppResponse + (*tabletmanagerdata.GetUnresolvedTransactionsResponse)(nil), // 92: tabletmanagerdata.GetUnresolvedTransactionsResponse + (*tabletmanagerdata.ReadTransactionResponse)(nil), // 93: tabletmanagerdata.ReadTransactionResponse + (*tabletmanagerdata.GetTransactionInfoResponse)(nil), // 94: tabletmanagerdata.GetTransactionInfoResponse + (*tabletmanagerdata.ConcludeTransactionResponse)(nil), // 95: tabletmanagerdata.ConcludeTransactionResponse + (*tabletmanagerdata.MysqlHostMetricsResponse)(nil), // 96: tabletmanagerdata.MysqlHostMetricsResponse + (*tabletmanagerdata.ReplicationStatusResponse)(nil), // 97: tabletmanagerdata.ReplicationStatusResponse + (*tabletmanagerdata.PrimaryStatusResponse)(nil), // 98: tabletmanagerdata.PrimaryStatusResponse + (*tabletmanagerdata.PrimaryPositionResponse)(nil), // 99: tabletmanagerdata.PrimaryPositionResponse + (*tabletmanagerdata.WaitForPositionResponse)(nil), // 100: tabletmanagerdata.WaitForPositionResponse + (*tabletmanagerdata.StopReplicationResponse)(nil), // 101: tabletmanagerdata.StopReplicationResponse + (*tabletmanagerdata.StopReplicationMinimumResponse)(nil), // 102: tabletmanagerdata.StopReplicationMinimumResponse + (*tabletmanagerdata.StartReplicationResponse)(nil), // 103: tabletmanagerdata.StartReplicationResponse + (*tabletmanagerdata.StartReplicationUntilAfterResponse)(nil), // 104: tabletmanagerdata.StartReplicationUntilAfterResponse + (*tabletmanagerdata.GetReplicasResponse)(nil), // 105: tabletmanagerdata.GetReplicasResponse + (*tabletmanagerdata.CreateVReplicationWorkflowResponse)(nil), // 106: tabletmanagerdata.CreateVReplicationWorkflowResponse + (*tabletmanagerdata.DeleteTableDataResponse)(nil), // 107: tabletmanagerdata.DeleteTableDataResponse + (*tabletmanagerdata.DeleteVReplicationWorkflowResponse)(nil), // 108: tabletmanagerdata.DeleteVReplicationWorkflowResponse + (*tabletmanagerdata.HasVReplicationWorkflowsResponse)(nil), // 109: tabletmanagerdata.HasVReplicationWorkflowsResponse + (*tabletmanagerdata.ReadVReplicationWorkflowResponse)(nil), // 110: tabletmanagerdata.ReadVReplicationWorkflowResponse + (*tabletmanagerdata.ReadVReplicationWorkflowsResponse)(nil), // 111: tabletmanagerdata.ReadVReplicationWorkflowsResponse + (*tabletmanagerdata.UpdateVReplicationWorkflowResponse)(nil), // 112: tabletmanagerdata.UpdateVReplicationWorkflowResponse + (*tabletmanagerdata.UpdateVReplicationWorkflowsResponse)(nil), // 113: tabletmanagerdata.UpdateVReplicationWorkflowsResponse + (*tabletmanagerdata.ValidateVReplicationPermissionsResponse)(nil), // 114: tabletmanagerdata.ValidateVReplicationPermissionsResponse + (*tabletmanagerdata.VReplicationExecResponse)(nil), // 115: tabletmanagerdata.VReplicationExecResponse + (*tabletmanagerdata.VReplicationWaitForPosResponse)(nil), // 116: tabletmanagerdata.VReplicationWaitForPosResponse + (*tabletmanagerdata.UpdateSequenceTablesResponse)(nil), // 117: tabletmanagerdata.UpdateSequenceTablesResponse + (*tabletmanagerdata.GetMaxValueForSequencesResponse)(nil), // 118: tabletmanagerdata.GetMaxValueForSequencesResponse + (*tabletmanagerdata.VDiffResponse)(nil), // 119: tabletmanagerdata.VDiffResponse + (*tabletmanagerdata.ResetReplicationResponse)(nil), // 120: tabletmanagerdata.ResetReplicationResponse + (*tabletmanagerdata.InitPrimaryResponse)(nil), // 121: tabletmanagerdata.InitPrimaryResponse + (*tabletmanagerdata.PopulateReparentJournalResponse)(nil), // 122: tabletmanagerdata.PopulateReparentJournalResponse + (*tabletmanagerdata.ReadReparentJournalInfoResponse)(nil), // 123: tabletmanagerdata.ReadReparentJournalInfoResponse + (*tabletmanagerdata.InitReplicaResponse)(nil), // 124: tabletmanagerdata.InitReplicaResponse + (*tabletmanagerdata.DemotePrimaryResponse)(nil), // 125: tabletmanagerdata.DemotePrimaryResponse + (*tabletmanagerdata.UndoDemotePrimaryResponse)(nil), // 126: tabletmanagerdata.UndoDemotePrimaryResponse + (*tabletmanagerdata.ReplicaWasPromotedResponse)(nil), // 127: tabletmanagerdata.ReplicaWasPromotedResponse + (*tabletmanagerdata.ResetReplicationParametersResponse)(nil), // 128: tabletmanagerdata.ResetReplicationParametersResponse + (*tabletmanagerdata.FullStatusResponse)(nil), // 129: tabletmanagerdata.FullStatusResponse + (*tabletmanagerdata.SetReplicationSourceResponse)(nil), // 130: tabletmanagerdata.SetReplicationSourceResponse + (*tabletmanagerdata.ReplicaWasRestartedResponse)(nil), // 131: tabletmanagerdata.ReplicaWasRestartedResponse + (*tabletmanagerdata.StopReplicationAndGetStatusResponse)(nil), // 132: tabletmanagerdata.StopReplicationAndGetStatusResponse + (*tabletmanagerdata.PromoteReplicaResponse)(nil), // 133: tabletmanagerdata.PromoteReplicaResponse + (*tabletmanagerdata.BackupResponse)(nil), // 134: tabletmanagerdata.BackupResponse + (*tabletmanagerdata.RestoreFromBackupResponse)(nil), // 135: tabletmanagerdata.RestoreFromBackupResponse + (*tabletmanagerdata.CheckThrottlerResponse)(nil), // 136: tabletmanagerdata.CheckThrottlerResponse + (*tabletmanagerdata.GetThrottlerStatusResponse)(nil), // 137: tabletmanagerdata.GetThrottlerStatusResponse } var file_tabletmanagerservice_proto_depIdxs = []int32{ 0, // 0: tabletmanagerservice.TabletManager.Ping:input_type -> tabletmanagerdata.PingRequest @@ -712,94 +732,98 @@ var file_tabletmanagerservice_proto_depIdxs = []int32{ 45, // 45: tabletmanagerservice.TabletManager.ValidateVReplicationPermissions:input_type -> tabletmanagerdata.ValidateVReplicationPermissionsRequest 46, // 46: tabletmanagerservice.TabletManager.VReplicationExec:input_type -> tabletmanagerdata.VReplicationExecRequest 47, // 47: tabletmanagerservice.TabletManager.VReplicationWaitForPos:input_type -> tabletmanagerdata.VReplicationWaitForPosRequest - 48, // 48: tabletmanagerservice.TabletManager.VDiff:input_type -> tabletmanagerdata.VDiffRequest - 49, // 49: tabletmanagerservice.TabletManager.ResetReplication:input_type -> tabletmanagerdata.ResetReplicationRequest - 50, // 50: tabletmanagerservice.TabletManager.InitPrimary:input_type -> tabletmanagerdata.InitPrimaryRequest - 51, // 51: tabletmanagerservice.TabletManager.PopulateReparentJournal:input_type -> tabletmanagerdata.PopulateReparentJournalRequest - 52, // 52: tabletmanagerservice.TabletManager.ReadReparentJournalInfo:input_type -> tabletmanagerdata.ReadReparentJournalInfoRequest - 53, // 53: tabletmanagerservice.TabletManager.InitReplica:input_type -> tabletmanagerdata.InitReplicaRequest - 54, // 54: tabletmanagerservice.TabletManager.DemotePrimary:input_type -> tabletmanagerdata.DemotePrimaryRequest - 55, // 55: tabletmanagerservice.TabletManager.UndoDemotePrimary:input_type -> tabletmanagerdata.UndoDemotePrimaryRequest - 56, // 56: tabletmanagerservice.TabletManager.ReplicaWasPromoted:input_type -> tabletmanagerdata.ReplicaWasPromotedRequest - 57, // 57: tabletmanagerservice.TabletManager.ResetReplicationParameters:input_type -> tabletmanagerdata.ResetReplicationParametersRequest - 58, // 58: tabletmanagerservice.TabletManager.FullStatus:input_type -> tabletmanagerdata.FullStatusRequest - 59, // 59: tabletmanagerservice.TabletManager.SetReplicationSource:input_type -> tabletmanagerdata.SetReplicationSourceRequest - 60, // 60: tabletmanagerservice.TabletManager.ReplicaWasRestarted:input_type -> tabletmanagerdata.ReplicaWasRestartedRequest - 61, // 61: tabletmanagerservice.TabletManager.StopReplicationAndGetStatus:input_type -> tabletmanagerdata.StopReplicationAndGetStatusRequest - 62, // 62: tabletmanagerservice.TabletManager.PromoteReplica:input_type -> tabletmanagerdata.PromoteReplicaRequest - 63, // 63: tabletmanagerservice.TabletManager.Backup:input_type -> tabletmanagerdata.BackupRequest - 64, // 64: tabletmanagerservice.TabletManager.RestoreFromBackup:input_type -> tabletmanagerdata.RestoreFromBackupRequest - 65, // 65: tabletmanagerservice.TabletManager.CheckThrottler:input_type -> tabletmanagerdata.CheckThrottlerRequest - 66, // 66: tabletmanagerservice.TabletManager.GetThrottlerStatus:input_type -> tabletmanagerdata.GetThrottlerStatusRequest - 67, // 67: tabletmanagerservice.TabletManager.Ping:output_type -> tabletmanagerdata.PingResponse - 68, // 68: tabletmanagerservice.TabletManager.Sleep:output_type -> tabletmanagerdata.SleepResponse - 69, // 69: tabletmanagerservice.TabletManager.ExecuteHook:output_type -> tabletmanagerdata.ExecuteHookResponse - 70, // 70: tabletmanagerservice.TabletManager.GetSchema:output_type -> tabletmanagerdata.GetSchemaResponse - 71, // 71: tabletmanagerservice.TabletManager.GetPermissions:output_type -> tabletmanagerdata.GetPermissionsResponse - 72, // 72: tabletmanagerservice.TabletManager.GetGlobalStatusVars:output_type -> tabletmanagerdata.GetGlobalStatusVarsResponse - 73, // 73: tabletmanagerservice.TabletManager.SetReadOnly:output_type -> tabletmanagerdata.SetReadOnlyResponse - 74, // 74: tabletmanagerservice.TabletManager.SetReadWrite:output_type -> tabletmanagerdata.SetReadWriteResponse - 75, // 75: tabletmanagerservice.TabletManager.ChangeTags:output_type -> tabletmanagerdata.ChangeTagsResponse - 76, // 76: tabletmanagerservice.TabletManager.ChangeType:output_type -> tabletmanagerdata.ChangeTypeResponse - 77, // 77: tabletmanagerservice.TabletManager.RefreshState:output_type -> tabletmanagerdata.RefreshStateResponse - 78, // 78: tabletmanagerservice.TabletManager.RunHealthCheck:output_type -> tabletmanagerdata.RunHealthCheckResponse - 79, // 79: tabletmanagerservice.TabletManager.ReloadSchema:output_type -> tabletmanagerdata.ReloadSchemaResponse - 80, // 80: tabletmanagerservice.TabletManager.PreflightSchema:output_type -> tabletmanagerdata.PreflightSchemaResponse - 81, // 81: tabletmanagerservice.TabletManager.ApplySchema:output_type -> tabletmanagerdata.ApplySchemaResponse - 82, // 82: tabletmanagerservice.TabletManager.ResetSequences:output_type -> tabletmanagerdata.ResetSequencesResponse - 83, // 83: tabletmanagerservice.TabletManager.LockTables:output_type -> tabletmanagerdata.LockTablesResponse - 84, // 84: tabletmanagerservice.TabletManager.UnlockTables:output_type -> tabletmanagerdata.UnlockTablesResponse - 85, // 85: tabletmanagerservice.TabletManager.ExecuteQuery:output_type -> tabletmanagerdata.ExecuteQueryResponse - 86, // 86: tabletmanagerservice.TabletManager.ExecuteFetchAsDba:output_type -> tabletmanagerdata.ExecuteFetchAsDbaResponse - 87, // 87: tabletmanagerservice.TabletManager.ExecuteMultiFetchAsDba:output_type -> tabletmanagerdata.ExecuteMultiFetchAsDbaResponse - 88, // 88: tabletmanagerservice.TabletManager.ExecuteFetchAsAllPrivs:output_type -> tabletmanagerdata.ExecuteFetchAsAllPrivsResponse - 89, // 89: tabletmanagerservice.TabletManager.ExecuteFetchAsApp:output_type -> tabletmanagerdata.ExecuteFetchAsAppResponse - 90, // 90: tabletmanagerservice.TabletManager.GetUnresolvedTransactions:output_type -> tabletmanagerdata.GetUnresolvedTransactionsResponse - 91, // 91: tabletmanagerservice.TabletManager.ReadTransaction:output_type -> tabletmanagerdata.ReadTransactionResponse - 92, // 92: tabletmanagerservice.TabletManager.GetTransactionInfo:output_type -> tabletmanagerdata.GetTransactionInfoResponse - 93, // 93: tabletmanagerservice.TabletManager.ConcludeTransaction:output_type -> tabletmanagerdata.ConcludeTransactionResponse - 94, // 94: tabletmanagerservice.TabletManager.MysqlHostMetrics:output_type -> tabletmanagerdata.MysqlHostMetricsResponse - 95, // 95: tabletmanagerservice.TabletManager.ReplicationStatus:output_type -> tabletmanagerdata.ReplicationStatusResponse - 96, // 96: tabletmanagerservice.TabletManager.PrimaryStatus:output_type -> tabletmanagerdata.PrimaryStatusResponse - 97, // 97: tabletmanagerservice.TabletManager.PrimaryPosition:output_type -> tabletmanagerdata.PrimaryPositionResponse - 98, // 98: tabletmanagerservice.TabletManager.WaitForPosition:output_type -> tabletmanagerdata.WaitForPositionResponse - 99, // 99: tabletmanagerservice.TabletManager.StopReplication:output_type -> tabletmanagerdata.StopReplicationResponse - 100, // 100: tabletmanagerservice.TabletManager.StopReplicationMinimum:output_type -> tabletmanagerdata.StopReplicationMinimumResponse - 101, // 101: tabletmanagerservice.TabletManager.StartReplication:output_type -> tabletmanagerdata.StartReplicationResponse - 102, // 102: tabletmanagerservice.TabletManager.StartReplicationUntilAfter:output_type -> tabletmanagerdata.StartReplicationUntilAfterResponse - 103, // 103: tabletmanagerservice.TabletManager.GetReplicas:output_type -> tabletmanagerdata.GetReplicasResponse - 104, // 104: tabletmanagerservice.TabletManager.CreateVReplicationWorkflow:output_type -> tabletmanagerdata.CreateVReplicationWorkflowResponse - 105, // 105: tabletmanagerservice.TabletManager.DeleteTableData:output_type -> tabletmanagerdata.DeleteTableDataResponse - 106, // 106: tabletmanagerservice.TabletManager.DeleteVReplicationWorkflow:output_type -> tabletmanagerdata.DeleteVReplicationWorkflowResponse - 107, // 107: tabletmanagerservice.TabletManager.HasVReplicationWorkflows:output_type -> tabletmanagerdata.HasVReplicationWorkflowsResponse - 108, // 108: tabletmanagerservice.TabletManager.ReadVReplicationWorkflow:output_type -> tabletmanagerdata.ReadVReplicationWorkflowResponse - 109, // 109: tabletmanagerservice.TabletManager.ReadVReplicationWorkflows:output_type -> tabletmanagerdata.ReadVReplicationWorkflowsResponse - 110, // 110: tabletmanagerservice.TabletManager.UpdateVReplicationWorkflow:output_type -> tabletmanagerdata.UpdateVReplicationWorkflowResponse - 111, // 111: tabletmanagerservice.TabletManager.UpdateVReplicationWorkflows:output_type -> tabletmanagerdata.UpdateVReplicationWorkflowsResponse - 112, // 112: tabletmanagerservice.TabletManager.ValidateVReplicationPermissions:output_type -> tabletmanagerdata.ValidateVReplicationPermissionsResponse - 113, // 113: tabletmanagerservice.TabletManager.VReplicationExec:output_type -> tabletmanagerdata.VReplicationExecResponse - 114, // 114: tabletmanagerservice.TabletManager.VReplicationWaitForPos:output_type -> tabletmanagerdata.VReplicationWaitForPosResponse - 115, // 115: tabletmanagerservice.TabletManager.VDiff:output_type -> tabletmanagerdata.VDiffResponse - 116, // 116: tabletmanagerservice.TabletManager.ResetReplication:output_type -> tabletmanagerdata.ResetReplicationResponse - 117, // 117: tabletmanagerservice.TabletManager.InitPrimary:output_type -> tabletmanagerdata.InitPrimaryResponse - 118, // 118: tabletmanagerservice.TabletManager.PopulateReparentJournal:output_type -> tabletmanagerdata.PopulateReparentJournalResponse - 119, // 119: tabletmanagerservice.TabletManager.ReadReparentJournalInfo:output_type -> tabletmanagerdata.ReadReparentJournalInfoResponse - 120, // 120: tabletmanagerservice.TabletManager.InitReplica:output_type -> tabletmanagerdata.InitReplicaResponse - 121, // 121: tabletmanagerservice.TabletManager.DemotePrimary:output_type -> tabletmanagerdata.DemotePrimaryResponse - 122, // 122: tabletmanagerservice.TabletManager.UndoDemotePrimary:output_type -> tabletmanagerdata.UndoDemotePrimaryResponse - 123, // 123: tabletmanagerservice.TabletManager.ReplicaWasPromoted:output_type -> tabletmanagerdata.ReplicaWasPromotedResponse - 124, // 124: tabletmanagerservice.TabletManager.ResetReplicationParameters:output_type -> tabletmanagerdata.ResetReplicationParametersResponse - 125, // 125: tabletmanagerservice.TabletManager.FullStatus:output_type -> tabletmanagerdata.FullStatusResponse - 126, // 126: tabletmanagerservice.TabletManager.SetReplicationSource:output_type -> tabletmanagerdata.SetReplicationSourceResponse - 127, // 127: tabletmanagerservice.TabletManager.ReplicaWasRestarted:output_type -> tabletmanagerdata.ReplicaWasRestartedResponse - 128, // 128: tabletmanagerservice.TabletManager.StopReplicationAndGetStatus:output_type -> tabletmanagerdata.StopReplicationAndGetStatusResponse - 129, // 129: tabletmanagerservice.TabletManager.PromoteReplica:output_type -> tabletmanagerdata.PromoteReplicaResponse - 130, // 130: tabletmanagerservice.TabletManager.Backup:output_type -> tabletmanagerdata.BackupResponse - 131, // 131: tabletmanagerservice.TabletManager.RestoreFromBackup:output_type -> tabletmanagerdata.RestoreFromBackupResponse - 132, // 132: tabletmanagerservice.TabletManager.CheckThrottler:output_type -> tabletmanagerdata.CheckThrottlerResponse - 133, // 133: tabletmanagerservice.TabletManager.GetThrottlerStatus:output_type -> tabletmanagerdata.GetThrottlerStatusResponse - 67, // [67:134] is the sub-list for method output_type - 0, // [0:67] is the sub-list for method input_type + 48, // 48: tabletmanagerservice.TabletManager.UpdateSequenceTables:input_type -> tabletmanagerdata.UpdateSequenceTablesRequest + 49, // 49: tabletmanagerservice.TabletManager.GetMaxValueForSequences:input_type -> tabletmanagerdata.GetMaxValueForSequencesRequest + 50, // 50: tabletmanagerservice.TabletManager.VDiff:input_type -> tabletmanagerdata.VDiffRequest + 51, // 51: tabletmanagerservice.TabletManager.ResetReplication:input_type -> tabletmanagerdata.ResetReplicationRequest + 52, // 52: tabletmanagerservice.TabletManager.InitPrimary:input_type -> tabletmanagerdata.InitPrimaryRequest + 53, // 53: tabletmanagerservice.TabletManager.PopulateReparentJournal:input_type -> tabletmanagerdata.PopulateReparentJournalRequest + 54, // 54: tabletmanagerservice.TabletManager.ReadReparentJournalInfo:input_type -> tabletmanagerdata.ReadReparentJournalInfoRequest + 55, // 55: tabletmanagerservice.TabletManager.InitReplica:input_type -> tabletmanagerdata.InitReplicaRequest + 56, // 56: tabletmanagerservice.TabletManager.DemotePrimary:input_type -> tabletmanagerdata.DemotePrimaryRequest + 57, // 57: tabletmanagerservice.TabletManager.UndoDemotePrimary:input_type -> tabletmanagerdata.UndoDemotePrimaryRequest + 58, // 58: tabletmanagerservice.TabletManager.ReplicaWasPromoted:input_type -> tabletmanagerdata.ReplicaWasPromotedRequest + 59, // 59: tabletmanagerservice.TabletManager.ResetReplicationParameters:input_type -> tabletmanagerdata.ResetReplicationParametersRequest + 60, // 60: tabletmanagerservice.TabletManager.FullStatus:input_type -> tabletmanagerdata.FullStatusRequest + 61, // 61: tabletmanagerservice.TabletManager.SetReplicationSource:input_type -> tabletmanagerdata.SetReplicationSourceRequest + 62, // 62: tabletmanagerservice.TabletManager.ReplicaWasRestarted:input_type -> tabletmanagerdata.ReplicaWasRestartedRequest + 63, // 63: tabletmanagerservice.TabletManager.StopReplicationAndGetStatus:input_type -> tabletmanagerdata.StopReplicationAndGetStatusRequest + 64, // 64: tabletmanagerservice.TabletManager.PromoteReplica:input_type -> tabletmanagerdata.PromoteReplicaRequest + 65, // 65: tabletmanagerservice.TabletManager.Backup:input_type -> tabletmanagerdata.BackupRequest + 66, // 66: tabletmanagerservice.TabletManager.RestoreFromBackup:input_type -> tabletmanagerdata.RestoreFromBackupRequest + 67, // 67: tabletmanagerservice.TabletManager.CheckThrottler:input_type -> tabletmanagerdata.CheckThrottlerRequest + 68, // 68: tabletmanagerservice.TabletManager.GetThrottlerStatus:input_type -> tabletmanagerdata.GetThrottlerStatusRequest + 69, // 69: tabletmanagerservice.TabletManager.Ping:output_type -> tabletmanagerdata.PingResponse + 70, // 70: tabletmanagerservice.TabletManager.Sleep:output_type -> tabletmanagerdata.SleepResponse + 71, // 71: tabletmanagerservice.TabletManager.ExecuteHook:output_type -> tabletmanagerdata.ExecuteHookResponse + 72, // 72: tabletmanagerservice.TabletManager.GetSchema:output_type -> tabletmanagerdata.GetSchemaResponse + 73, // 73: tabletmanagerservice.TabletManager.GetPermissions:output_type -> tabletmanagerdata.GetPermissionsResponse + 74, // 74: tabletmanagerservice.TabletManager.GetGlobalStatusVars:output_type -> tabletmanagerdata.GetGlobalStatusVarsResponse + 75, // 75: tabletmanagerservice.TabletManager.SetReadOnly:output_type -> tabletmanagerdata.SetReadOnlyResponse + 76, // 76: tabletmanagerservice.TabletManager.SetReadWrite:output_type -> tabletmanagerdata.SetReadWriteResponse + 77, // 77: tabletmanagerservice.TabletManager.ChangeTags:output_type -> tabletmanagerdata.ChangeTagsResponse + 78, // 78: tabletmanagerservice.TabletManager.ChangeType:output_type -> tabletmanagerdata.ChangeTypeResponse + 79, // 79: tabletmanagerservice.TabletManager.RefreshState:output_type -> tabletmanagerdata.RefreshStateResponse + 80, // 80: tabletmanagerservice.TabletManager.RunHealthCheck:output_type -> tabletmanagerdata.RunHealthCheckResponse + 81, // 81: tabletmanagerservice.TabletManager.ReloadSchema:output_type -> tabletmanagerdata.ReloadSchemaResponse + 82, // 82: tabletmanagerservice.TabletManager.PreflightSchema:output_type -> tabletmanagerdata.PreflightSchemaResponse + 83, // 83: tabletmanagerservice.TabletManager.ApplySchema:output_type -> tabletmanagerdata.ApplySchemaResponse + 84, // 84: tabletmanagerservice.TabletManager.ResetSequences:output_type -> tabletmanagerdata.ResetSequencesResponse + 85, // 85: tabletmanagerservice.TabletManager.LockTables:output_type -> tabletmanagerdata.LockTablesResponse + 86, // 86: tabletmanagerservice.TabletManager.UnlockTables:output_type -> tabletmanagerdata.UnlockTablesResponse + 87, // 87: tabletmanagerservice.TabletManager.ExecuteQuery:output_type -> tabletmanagerdata.ExecuteQueryResponse + 88, // 88: tabletmanagerservice.TabletManager.ExecuteFetchAsDba:output_type -> tabletmanagerdata.ExecuteFetchAsDbaResponse + 89, // 89: tabletmanagerservice.TabletManager.ExecuteMultiFetchAsDba:output_type -> tabletmanagerdata.ExecuteMultiFetchAsDbaResponse + 90, // 90: tabletmanagerservice.TabletManager.ExecuteFetchAsAllPrivs:output_type -> tabletmanagerdata.ExecuteFetchAsAllPrivsResponse + 91, // 91: tabletmanagerservice.TabletManager.ExecuteFetchAsApp:output_type -> tabletmanagerdata.ExecuteFetchAsAppResponse + 92, // 92: tabletmanagerservice.TabletManager.GetUnresolvedTransactions:output_type -> tabletmanagerdata.GetUnresolvedTransactionsResponse + 93, // 93: tabletmanagerservice.TabletManager.ReadTransaction:output_type -> tabletmanagerdata.ReadTransactionResponse + 94, // 94: tabletmanagerservice.TabletManager.GetTransactionInfo:output_type -> tabletmanagerdata.GetTransactionInfoResponse + 95, // 95: tabletmanagerservice.TabletManager.ConcludeTransaction:output_type -> tabletmanagerdata.ConcludeTransactionResponse + 96, // 96: tabletmanagerservice.TabletManager.MysqlHostMetrics:output_type -> tabletmanagerdata.MysqlHostMetricsResponse + 97, // 97: tabletmanagerservice.TabletManager.ReplicationStatus:output_type -> tabletmanagerdata.ReplicationStatusResponse + 98, // 98: tabletmanagerservice.TabletManager.PrimaryStatus:output_type -> tabletmanagerdata.PrimaryStatusResponse + 99, // 99: tabletmanagerservice.TabletManager.PrimaryPosition:output_type -> tabletmanagerdata.PrimaryPositionResponse + 100, // 100: tabletmanagerservice.TabletManager.WaitForPosition:output_type -> tabletmanagerdata.WaitForPositionResponse + 101, // 101: tabletmanagerservice.TabletManager.StopReplication:output_type -> tabletmanagerdata.StopReplicationResponse + 102, // 102: tabletmanagerservice.TabletManager.StopReplicationMinimum:output_type -> tabletmanagerdata.StopReplicationMinimumResponse + 103, // 103: tabletmanagerservice.TabletManager.StartReplication:output_type -> tabletmanagerdata.StartReplicationResponse + 104, // 104: tabletmanagerservice.TabletManager.StartReplicationUntilAfter:output_type -> tabletmanagerdata.StartReplicationUntilAfterResponse + 105, // 105: tabletmanagerservice.TabletManager.GetReplicas:output_type -> tabletmanagerdata.GetReplicasResponse + 106, // 106: tabletmanagerservice.TabletManager.CreateVReplicationWorkflow:output_type -> tabletmanagerdata.CreateVReplicationWorkflowResponse + 107, // 107: tabletmanagerservice.TabletManager.DeleteTableData:output_type -> tabletmanagerdata.DeleteTableDataResponse + 108, // 108: tabletmanagerservice.TabletManager.DeleteVReplicationWorkflow:output_type -> tabletmanagerdata.DeleteVReplicationWorkflowResponse + 109, // 109: tabletmanagerservice.TabletManager.HasVReplicationWorkflows:output_type -> tabletmanagerdata.HasVReplicationWorkflowsResponse + 110, // 110: tabletmanagerservice.TabletManager.ReadVReplicationWorkflow:output_type -> tabletmanagerdata.ReadVReplicationWorkflowResponse + 111, // 111: tabletmanagerservice.TabletManager.ReadVReplicationWorkflows:output_type -> tabletmanagerdata.ReadVReplicationWorkflowsResponse + 112, // 112: tabletmanagerservice.TabletManager.UpdateVReplicationWorkflow:output_type -> tabletmanagerdata.UpdateVReplicationWorkflowResponse + 113, // 113: tabletmanagerservice.TabletManager.UpdateVReplicationWorkflows:output_type -> tabletmanagerdata.UpdateVReplicationWorkflowsResponse + 114, // 114: tabletmanagerservice.TabletManager.ValidateVReplicationPermissions:output_type -> tabletmanagerdata.ValidateVReplicationPermissionsResponse + 115, // 115: tabletmanagerservice.TabletManager.VReplicationExec:output_type -> tabletmanagerdata.VReplicationExecResponse + 116, // 116: tabletmanagerservice.TabletManager.VReplicationWaitForPos:output_type -> tabletmanagerdata.VReplicationWaitForPosResponse + 117, // 117: tabletmanagerservice.TabletManager.UpdateSequenceTables:output_type -> tabletmanagerdata.UpdateSequenceTablesResponse + 118, // 118: tabletmanagerservice.TabletManager.GetMaxValueForSequences:output_type -> tabletmanagerdata.GetMaxValueForSequencesResponse + 119, // 119: tabletmanagerservice.TabletManager.VDiff:output_type -> tabletmanagerdata.VDiffResponse + 120, // 120: tabletmanagerservice.TabletManager.ResetReplication:output_type -> tabletmanagerdata.ResetReplicationResponse + 121, // 121: tabletmanagerservice.TabletManager.InitPrimary:output_type -> tabletmanagerdata.InitPrimaryResponse + 122, // 122: tabletmanagerservice.TabletManager.PopulateReparentJournal:output_type -> tabletmanagerdata.PopulateReparentJournalResponse + 123, // 123: tabletmanagerservice.TabletManager.ReadReparentJournalInfo:output_type -> tabletmanagerdata.ReadReparentJournalInfoResponse + 124, // 124: tabletmanagerservice.TabletManager.InitReplica:output_type -> tabletmanagerdata.InitReplicaResponse + 125, // 125: tabletmanagerservice.TabletManager.DemotePrimary:output_type -> tabletmanagerdata.DemotePrimaryResponse + 126, // 126: tabletmanagerservice.TabletManager.UndoDemotePrimary:output_type -> tabletmanagerdata.UndoDemotePrimaryResponse + 127, // 127: tabletmanagerservice.TabletManager.ReplicaWasPromoted:output_type -> tabletmanagerdata.ReplicaWasPromotedResponse + 128, // 128: tabletmanagerservice.TabletManager.ResetReplicationParameters:output_type -> tabletmanagerdata.ResetReplicationParametersResponse + 129, // 129: tabletmanagerservice.TabletManager.FullStatus:output_type -> tabletmanagerdata.FullStatusResponse + 130, // 130: tabletmanagerservice.TabletManager.SetReplicationSource:output_type -> tabletmanagerdata.SetReplicationSourceResponse + 131, // 131: tabletmanagerservice.TabletManager.ReplicaWasRestarted:output_type -> tabletmanagerdata.ReplicaWasRestartedResponse + 132, // 132: tabletmanagerservice.TabletManager.StopReplicationAndGetStatus:output_type -> tabletmanagerdata.StopReplicationAndGetStatusResponse + 133, // 133: tabletmanagerservice.TabletManager.PromoteReplica:output_type -> tabletmanagerdata.PromoteReplicaResponse + 134, // 134: tabletmanagerservice.TabletManager.Backup:output_type -> tabletmanagerdata.BackupResponse + 135, // 135: tabletmanagerservice.TabletManager.RestoreFromBackup:output_type -> tabletmanagerdata.RestoreFromBackupResponse + 136, // 136: tabletmanagerservice.TabletManager.CheckThrottler:output_type -> tabletmanagerdata.CheckThrottlerResponse + 137, // 137: tabletmanagerservice.TabletManager.GetThrottlerStatus:output_type -> tabletmanagerdata.GetThrottlerStatusResponse + 69, // [69:138] is the sub-list for method output_type + 0, // [0:69] 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 diff --git a/go/vt/proto/tabletmanagerservice/tabletmanagerservice_grpc.pb.go b/go/vt/proto/tabletmanagerservice/tabletmanagerservice_grpc.pb.go index 53acff14ea5..74556cd7824 100644 --- a/go/vt/proto/tabletmanagerservice/tabletmanagerservice_grpc.pb.go +++ b/go/vt/proto/tabletmanagerservice/tabletmanagerservice_grpc.pb.go @@ -92,6 +92,8 @@ type TabletManagerClient interface { ValidateVReplicationPermissions(ctx context.Context, in *tabletmanagerdata.ValidateVReplicationPermissionsRequest, opts ...grpc.CallOption) (*tabletmanagerdata.ValidateVReplicationPermissionsResponse, error) VReplicationExec(ctx context.Context, in *tabletmanagerdata.VReplicationExecRequest, opts ...grpc.CallOption) (*tabletmanagerdata.VReplicationExecResponse, error) VReplicationWaitForPos(ctx context.Context, in *tabletmanagerdata.VReplicationWaitForPosRequest, opts ...grpc.CallOption) (*tabletmanagerdata.VReplicationWaitForPosResponse, error) + UpdateSequenceTables(ctx context.Context, in *tabletmanagerdata.UpdateSequenceTablesRequest, opts ...grpc.CallOption) (*tabletmanagerdata.UpdateSequenceTablesResponse, error) + GetMaxValueForSequences(ctx context.Context, in *tabletmanagerdata.GetMaxValueForSequencesRequest, opts ...grpc.CallOption) (*tabletmanagerdata.GetMaxValueForSequencesResponse, error) // VDiff API VDiff(ctx context.Context, in *tabletmanagerdata.VDiffRequest, opts ...grpc.CallOption) (*tabletmanagerdata.VDiffResponse, error) // ResetReplication makes the target not replicating @@ -573,6 +575,24 @@ func (c *tabletManagerClient) VReplicationWaitForPos(ctx context.Context, in *ta return out, nil } +func (c *tabletManagerClient) UpdateSequenceTables(ctx context.Context, in *tabletmanagerdata.UpdateSequenceTablesRequest, opts ...grpc.CallOption) (*tabletmanagerdata.UpdateSequenceTablesResponse, error) { + out := new(tabletmanagerdata.UpdateSequenceTablesResponse) + err := c.cc.Invoke(ctx, "/tabletmanagerservice.TabletManager/UpdateSequenceTables", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *tabletManagerClient) GetMaxValueForSequences(ctx context.Context, in *tabletmanagerdata.GetMaxValueForSequencesRequest, opts ...grpc.CallOption) (*tabletmanagerdata.GetMaxValueForSequencesResponse, error) { + out := new(tabletmanagerdata.GetMaxValueForSequencesResponse) + err := c.cc.Invoke(ctx, "/tabletmanagerservice.TabletManager/GetMaxValueForSequences", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *tabletManagerClient) VDiff(ctx context.Context, in *tabletmanagerdata.VDiffRequest, opts ...grpc.CallOption) (*tabletmanagerdata.VDiffResponse, error) { out := new(tabletmanagerdata.VDiffResponse) err := c.cc.Invoke(ctx, "/tabletmanagerservice.TabletManager/VDiff", in, out, opts...) @@ -863,6 +883,8 @@ type TabletManagerServer interface { ValidateVReplicationPermissions(context.Context, *tabletmanagerdata.ValidateVReplicationPermissionsRequest) (*tabletmanagerdata.ValidateVReplicationPermissionsResponse, error) VReplicationExec(context.Context, *tabletmanagerdata.VReplicationExecRequest) (*tabletmanagerdata.VReplicationExecResponse, error) VReplicationWaitForPos(context.Context, *tabletmanagerdata.VReplicationWaitForPosRequest) (*tabletmanagerdata.VReplicationWaitForPosResponse, error) + UpdateSequenceTables(context.Context, *tabletmanagerdata.UpdateSequenceTablesRequest) (*tabletmanagerdata.UpdateSequenceTablesResponse, error) + GetMaxValueForSequences(context.Context, *tabletmanagerdata.GetMaxValueForSequencesRequest) (*tabletmanagerdata.GetMaxValueForSequencesResponse, error) // VDiff API VDiff(context.Context, *tabletmanagerdata.VDiffRequest) (*tabletmanagerdata.VDiffResponse, error) // ResetReplication makes the target not replicating @@ -1053,6 +1075,12 @@ func (UnimplementedTabletManagerServer) VReplicationExec(context.Context, *table func (UnimplementedTabletManagerServer) VReplicationWaitForPos(context.Context, *tabletmanagerdata.VReplicationWaitForPosRequest) (*tabletmanagerdata.VReplicationWaitForPosResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method VReplicationWaitForPos not implemented") } +func (UnimplementedTabletManagerServer) UpdateSequenceTables(context.Context, *tabletmanagerdata.UpdateSequenceTablesRequest) (*tabletmanagerdata.UpdateSequenceTablesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateSequenceTables not implemented") +} +func (UnimplementedTabletManagerServer) GetMaxValueForSequences(context.Context, *tabletmanagerdata.GetMaxValueForSequencesRequest) (*tabletmanagerdata.GetMaxValueForSequencesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetMaxValueForSequences not implemented") +} func (UnimplementedTabletManagerServer) VDiff(context.Context, *tabletmanagerdata.VDiffRequest) (*tabletmanagerdata.VDiffResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method VDiff not implemented") } @@ -1987,6 +2015,42 @@ func _TabletManager_VReplicationWaitForPos_Handler(srv interface{}, ctx context. return interceptor(ctx, in, info, handler) } +func _TabletManager_UpdateSequenceTables_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(tabletmanagerdata.UpdateSequenceTablesRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(TabletManagerServer).UpdateSequenceTables(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/tabletmanagerservice.TabletManager/UpdateSequenceTables", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(TabletManagerServer).UpdateSequenceTables(ctx, req.(*tabletmanagerdata.UpdateSequenceTablesRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _TabletManager_GetMaxValueForSequences_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(tabletmanagerdata.GetMaxValueForSequencesRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(TabletManagerServer).GetMaxValueForSequences(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/tabletmanagerservice.TabletManager/GetMaxValueForSequences", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(TabletManagerServer).GetMaxValueForSequences(ctx, req.(*tabletmanagerdata.GetMaxValueForSequencesRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _TabletManager_VDiff_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(tabletmanagerdata.VDiffRequest) if err := dec(in); err != nil { @@ -2534,6 +2598,14 @@ var TabletManager_ServiceDesc = grpc.ServiceDesc{ MethodName: "VReplicationWaitForPos", Handler: _TabletManager_VReplicationWaitForPos_Handler, }, + { + MethodName: "UpdateSequenceTables", + Handler: _TabletManager_UpdateSequenceTables_Handler, + }, + { + MethodName: "GetMaxValueForSequences", + Handler: _TabletManager_GetMaxValueForSequences_Handler, + }, { MethodName: "VDiff", Handler: _TabletManager_VDiff_Handler, diff --git a/go/vt/vtcombo/tablet_map.go b/go/vt/vtcombo/tablet_map.go index e8c8935f989..773de8da3e1 100644 --- a/go/vt/vtcombo/tablet_map.go +++ b/go/vt/vtcombo/tablet_map.go @@ -992,6 +992,14 @@ func (itmc *internalTabletManagerClient) UpdateVReplicationWorkflows(context.Con return nil, fmt.Errorf("not implemented in vtcombo") } +func (itmc *internalTabletManagerClient) UpdateSequenceTables(ctx context.Context, tablet *topodatapb.Tablet, request *tabletmanagerdatapb.UpdateSequenceTablesRequest) (*tabletmanagerdatapb.UpdateSequenceTablesResponse, error) { + return nil, fmt.Errorf("not implemented in vtcombo") +} + +func (itmc *internalTabletManagerClient) GetMaxValueForSequences(ctx context.Context, tablet *topodatapb.Tablet, request *tabletmanagerdatapb.GetMaxValueForSequencesRequest) (*tabletmanagerdatapb.GetMaxValueForSequencesResponse, error) { + return nil, fmt.Errorf("not implemented in vtcombo") +} + func (itmc *internalTabletManagerClient) ResetReplication(context.Context, *topodatapb.Tablet) error { return fmt.Errorf("not implemented in vtcombo") } diff --git a/go/vt/vtctl/workflow/framework_test.go b/go/vt/vtctl/workflow/framework_test.go index 0575965c433..825dd4c05c1 100644 --- a/go/vt/vtctl/workflow/framework_test.go +++ b/go/vt/vtctl/workflow/framework_test.go @@ -17,6 +17,7 @@ limitations under the License. package workflow import ( + "cmp" "context" "fmt" "os" @@ -270,6 +271,8 @@ type testTMClient struct { mu sync.Mutex vrQueries map[int][]*queryResult createVReplicationWorkflowRequests map[uint32]*createVReplicationWorkflowRequestResponse + getMaxValueForSequencesRequests map[uint32]*getMaxValueForSequencesRequestResponse + updateSequenceTablesRequests map[uint32]*tabletmanagerdatapb.UpdateSequenceTablesRequest readVReplicationWorkflowRequests map[uint32]*readVReplicationWorkflowRequestResponse updateVReplicationWorklowsRequests map[uint32]*tabletmanagerdatapb.UpdateVReplicationWorkflowsRequest updateVReplicationWorklowRequests map[uint32]*updateVReplicationWorkflowRequestResponse @@ -296,6 +299,8 @@ func newTestTMClient(env *testEnv) *testTMClient { schema: make(map[string]*tabletmanagerdatapb.SchemaDefinition), vrQueries: make(map[int][]*queryResult), createVReplicationWorkflowRequests: make(map[uint32]*createVReplicationWorkflowRequestResponse), + getMaxValueForSequencesRequests: make(map[uint32]*getMaxValueForSequencesRequestResponse), + updateSequenceTablesRequests: make(map[uint32]*tabletmanagerdatapb.UpdateSequenceTablesRequest), readVReplicationWorkflowRequests: make(map[uint32]*readVReplicationWorkflowRequestResponse), updateVReplicationWorklowsRequests: make(map[uint32]*tabletmanagerdatapb.UpdateVReplicationWorkflowsRequest), updateVReplicationWorklowRequests: make(map[uint32]*updateVReplicationWorkflowRequestResponse), @@ -425,6 +430,20 @@ func (tmc *testTMClient) GetSchema(ctx context.Context, tablet *topodatapb.Table return schemaDefn, nil } +func (tmc *testTMClient) expectUpdateSequenceTablesRequest(tabletID uint32, req *tabletmanagerdatapb.UpdateSequenceTablesRequest) { + tmc.mu.Lock() + defer tmc.mu.Unlock() + + tmc.updateSequenceTablesRequests[tabletID] = req +} + +func (tmc *testTMClient) expectGetMaxValueForSequencesRequest(tabletID uint32, reqres *getMaxValueForSequencesRequestResponse) { + tmc.mu.Lock() + defer tmc.mu.Unlock() + + tmc.getMaxValueForSequencesRequests[tabletID] = reqres +} + func (tmc *testTMClient) expectVRQuery(tabletID int, query string, result *sqltypes.Result) { tmc.mu.Lock() defer tmc.mu.Unlock() @@ -598,6 +617,12 @@ type updateVReplicationWorkflowRequestResponse struct { err error } +type getMaxValueForSequencesRequestResponse struct { + req *tabletmanagerdatapb.GetMaxValueForSequencesRequest + res *tabletmanagerdatapb.GetMaxValueForSequencesResponse + err error +} + type validateVReplicationPermissionsResponse struct { res *tabletmanagerdatapb.ValidateVReplicationPermissionsResponse err error @@ -839,6 +864,46 @@ func (tmc *testTMClient) ReloadSchema(ctx context.Context, tablet *topodatapb.Ta return nil } +func (tmc *testTMClient) UpdateSequenceTables(ctx context.Context, tablet *topodatapb.Tablet, req *tabletmanagerdatapb.UpdateSequenceTablesRequest) (*tabletmanagerdatapb.UpdateSequenceTablesResponse, error) { + expect := tmc.updateSequenceTablesRequests[tablet.Alias.Uid] + if expect == nil { + return nil, nil + } + slices.SortFunc(expect.Sequences, func(x, y *tabletmanagerdatapb.UpdateSequenceTablesRequest_SequenceMetadata) int { + return cmp.Compare(x.BackingTableName, y.BackingTableName) + }) + slices.SortFunc(req.Sequences, func(x, y *tabletmanagerdatapb.UpdateSequenceTablesRequest_SequenceMetadata) int { + return cmp.Compare(x.BackingTableName, y.BackingTableName) + }) + if !proto.Equal(expect, req) { + return nil, vterrors.Errorf(vtrpcpb.Code_INVALID_ARGUMENT, "unexpected UpdateSequenceTables request on tablet %s: got %+v, want %+v", + topoproto.TabletAliasString(tablet.Alias), req, expect) + } + delete(tmc.updateSequenceTablesRequests, tablet.Alias.Uid) + return &tabletmanagerdatapb.UpdateSequenceTablesResponse{}, nil +} + +func (tmc *testTMClient) GetMaxValueForSequences(ctx context.Context, tablet *topodatapb.Tablet, req *tabletmanagerdatapb.GetMaxValueForSequencesRequest) (*tabletmanagerdatapb.GetMaxValueForSequencesResponse, error) { + expect := tmc.getMaxValueForSequencesRequests[tablet.Alias.Uid] + if expect == nil { + return &tabletmanagerdatapb.GetMaxValueForSequencesResponse{ + MaxValuesBySequenceTable: map[string]int64{}, + }, nil + } + slices.SortFunc(expect.req.Sequences, func(x, y *tabletmanagerdatapb.GetMaxValueForSequencesRequest_SequenceMetadata) int { + return cmp.Compare(x.BackingTableName, y.BackingTableName) + }) + slices.SortFunc(req.Sequences, func(x, y *tabletmanagerdatapb.GetMaxValueForSequencesRequest_SequenceMetadata) int { + return cmp.Compare(x.BackingTableName, y.BackingTableName) + }) + if !proto.Equal(expect.req, req) { + return nil, vterrors.Errorf(vtrpcpb.Code_INVALID_ARGUMENT, "unexpected GetMaxValueForSequences request on tablet %s: got %+v, want %+v", + topoproto.TabletAliasString(tablet.Alias), req, expect.req) + } + delete(tmc.getMaxValueForSequencesRequests, tablet.Alias.Uid) + return expect.res, expect.err +} + // // Utility / helper functions. // diff --git a/go/vt/vtctl/workflow/sequences.go b/go/vt/vtctl/workflow/sequences.go index 2ef83013e94..dd4e7d7a6bf 100644 --- a/go/vt/vtctl/workflow/sequences.go +++ b/go/vt/vtctl/workflow/sequences.go @@ -25,10 +25,8 @@ import ( "golang.org/x/exp/maps" "golang.org/x/sync/errgroup" - "vitess.io/vitess/go/mysql/sqlerror" "vitess.io/vitess/go/sqlescape" "vitess.io/vitess/go/sqltypes" - "vitess.io/vitess/go/vt/log" "vitess.io/vitess/go/vt/mysqlctl/tmutils" "vitess.io/vitess/go/vt/sqlparser" "vitess.io/vitess/go/vt/topo" @@ -44,10 +42,8 @@ import ( ) const ( - sqlInitSequenceTable = "insert into %a.%a (id, next_id, cache) values (0, %d, 1000) on duplicate key update next_id = if(next_id < %d, %d, next_id)" sqlCreateSequenceTable = "create table if not exists %a (id int, next_id bigint, cache bigint, primary key(id)) comment 'vitess_sequence'" sqlGetCurrentSequenceVal = "select next_id from %a.%a where id = 0" - sqlGetMaxSequenceVal = "select max(%a) as maxval from %a.%a" ) // sequenceMetadata contains all of the relevant metadata for a sequence that @@ -115,75 +111,48 @@ func (sm *sequenceMetadata) escapeValues() error { } func (ts *trafficSwitcher) getMaxSequenceValues(ctx context.Context, sequences map[string]*sequenceMetadata) (map[string]int64, error) { - maxValues := make(map[string]int64, len(sequences)) - mu := sync.Mutex{} - initGroup, gctx := errgroup.WithContext(ctx) - for _, sm := range sequences { - initGroup.Go(func() error { - maxId, err := ts.getMaxSequenceValue(gctx, sm) - if err != nil { - return err - } - mu.Lock() - defer mu.Unlock() - maxValues[sm.backingTableName] = maxId - return nil + var sequencesMetadata []*tabletmanagerdatapb.GetMaxValueForSequencesRequest_SequenceMetadata + for _, seq := range sequences { + if err := seq.escapeValues(); err != nil { + return nil, err + } + sequencesMetadata = append(sequencesMetadata, &tabletmanagerdatapb.GetMaxValueForSequencesRequest_SequenceMetadata{ + BackingTableName: seq.backingTableName, + UsingColEscaped: seq.usingCol, + UsingTableNameEscaped: seq.usingTable, + UsingTableDbNameEscaped: seq.usingDB, }) } - errs := initGroup.Wait() - if errs != nil { - return nil, errs - } - return maxValues, nil -} -func (ts *trafficSwitcher) getMaxSequenceValue(ctx context.Context, seq *sequenceMetadata) (int64, error) { - var maxSequenceValue int64 var mu sync.Mutex - setMaxSequenceValue := func(id int64) { + maxValuesByBackingTable := make(map[string]int64, len(sequences)) + setMaxSequenceValue := func(maxValues map[string]int64) { mu.Lock() defer mu.Unlock() - if id > maxSequenceValue { - maxSequenceValue = id + for _, sm := range sequences { + if maxValuesByBackingTable[sm.backingTableName] < maxValues[sm.backingTableName] { + maxValuesByBackingTable[sm.backingTableName] = maxValues[sm.backingTableName] + } } } - if err := seq.escapeValues(); err != nil { - return 0, err - } errs := ts.ForAllTargets(func(target *MigrationTarget) error { primary := target.GetPrimary() if primary == nil || primary.GetAlias() == nil { return vterrors.Errorf(vtrpcpb.Code_FAILED_PRECONDITION, "no primary tablet found for target shard %s/%s", ts.targetKeyspace, target.GetShard().ShardName()) } - - query := sqlparser.BuildParsedQuery(sqlGetMaxSequenceVal, - seq.usingCol, - seq.usingDB, - seq.usingTable, - ) - qr, terr := ts.ws.tmc.ExecuteFetchAsApp(ctx, primary.Tablet, true, &tabletmanagerdatapb.ExecuteFetchAsAppRequest{ - Query: []byte(query.Query), - MaxRows: 1, + resp, terr := ts.ws.tmc.GetMaxValueForSequences(ctx, primary.Tablet, &tabletmanagerdatapb.GetMaxValueForSequencesRequest{ + Sequences: sequencesMetadata, }) - if terr != nil || len(qr.Rows) != 1 { + if terr != nil { return vterrors.Errorf(vtrpcpb.Code_INTERNAL, - "failed to get the max used sequence value for target table %s.%s on tablet %s in order to initialize the backing sequence table: %v", - ts.targetKeyspace, seq.usingTableName, topoproto.TabletAliasString(primary.Alias), terr) - } - rawVal := sqltypes.Proto3ToResult(qr).Rows[0][0] - maxID := int64(0) - if !rawVal.IsNull() { // If it's NULL then there are no rows and 0 remains the max - maxID, terr = rawVal.ToInt64() - if terr != nil { - return vterrors.Errorf(vtrpcpb.Code_INTERNAL, "failed to get the max used sequence value for target table %s.%s on tablet %s in order to initialize the backing sequence table: %v", - ts.targetKeyspace, seq.usingTableName, topoproto.TabletAliasString(primary.Alias), terr) - } + "failed to get the max used sequence values on tablet %s in order to initialize the backing sequence table: %v", + topoproto.TabletAliasString(primary.Alias), terr) } - setMaxSequenceValue(maxID) + setMaxSequenceValue(resp.MaxValuesBySequenceTable) return nil }) - return maxSequenceValue, errs + return maxValuesByBackingTable, errs } func (ts *trafficSwitcher) getCurrentSequenceValues(ctx context.Context, sequences map[string]*sequenceMetadata) (map[string]int64, error) { @@ -250,70 +219,44 @@ func (ts *trafficSwitcher) getCurrentSequenceValue(ctx context.Context, seq *seq return currentVal, nil } -func (ts *trafficSwitcher) updateSequenceValue(ctx context.Context, seq *sequenceMetadata, currentMaxValue int64) error { - if err := seq.escapeValues(); err != nil { - return err - } - nextVal := currentMaxValue + 1 - log.Infof("Updating sequence %s.%s to %d", seq.backingTableDBName, seq.backingTableName, nextVal) - - // Now we need to update the sequence table, if needed, in order to - // ensure that the next value it provides is > the current max. - sequenceShard, ierr := ts.TopoServer().GetOnlyShard(ctx, seq.backingTableKeyspace) - if ierr != nil || sequenceShard == nil || sequenceShard.PrimaryAlias == nil { - return vterrors.Errorf(vtrpcpb.Code_INTERNAL, "failed to get the primary tablet for keyspace %s: %v", - seq.backingTableKeyspace, ierr) - } - sequenceTablet, ierr := ts.TopoServer().GetTablet(ctx, sequenceShard.PrimaryAlias) - if ierr != nil || sequenceTablet == nil { - return vterrors.Errorf(vtrpcpb.Code_INTERNAL, "failed to get the primary tablet for keyspace %s: %v", - seq.backingTableKeyspace, ierr) - } - if sequenceTablet.DbNameOverride != "" { - seq.backingTableDBName = sequenceTablet.DbNameOverride - } - initQuery := sqlparser.BuildParsedQuery(sqlInitSequenceTable, - seq.backingTableDBName, - seq.backingTableName, - nextVal, - nextVal, - nextVal, - ) - - const maxTries = 2 - var err error - - for i := 0; i < maxTries; i++ { - // Attempt to initialize the sequence. - _, err = ts.ws.tmc.ExecuteFetchAsApp(ctx, sequenceTablet.Tablet, true, &tabletmanagerdatapb.ExecuteFetchAsAppRequest{ - Query: []byte(initQuery.Query), - MaxRows: 1, +func (ts *trafficSwitcher) updateSequenceValues(ctx context.Context, sequences []*sequenceMetadata, maxValues map[string]int64) error { + sequencesByShard := map[string][]*tabletmanagerdatapb.UpdateSequenceTablesRequest_SequenceMetadata{} + for _, seq := range sequences { + maxValue := maxValues[seq.backingTableName] + if maxValue == 0 { + continue + } + sequenceShard, ierr := ts.TopoServer().GetOnlyShard(ctx, seq.backingTableKeyspace) + if ierr != nil || sequenceShard == nil || sequenceShard.PrimaryAlias == nil { + return vterrors.Errorf(vtrpcpb.Code_INTERNAL, "failed to get the primary tablet for keyspace %s: %v", + seq.backingTableKeyspace, ierr) + } + tabletAliasStr := topoproto.TabletAliasString(sequenceShard.PrimaryAlias) + sequencesByShard[tabletAliasStr] = append(sequencesByShard[tabletAliasStr], &tabletmanagerdatapb.UpdateSequenceTablesRequest_SequenceMetadata{ + BackingTableName: seq.backingTableName, + BackingTableDbName: seq.backingTableDBName, + MaxValue: maxValue, }) - if err == nil { - return nil + } + for tabletAliasStr, sequencesMetadata := range sequencesByShard { + tabletAlias, err := topoproto.ParseTabletAlias(tabletAliasStr) + if err != nil { + // This should be impossible. + return vterrors.Errorf(vtrpcpb.Code_INTERNAL, "failed to get the parse tablet alias %s: %v", tabletAlias, err) } - - // If the table doesn't exist, try creating it. - sqlErr, ok := sqlerror.NewSQLErrorFromError(err).(*sqlerror.SQLError) - if !ok || (sqlErr.Num != sqlerror.ERNoSuchTable && sqlErr.Num != sqlerror.ERBadTable) { - return vterrors.Errorf( - vtrpcpb.Code_INTERNAL, - "failed to initialize the backing sequence table %s.%s: %v", - seq.backingTableDBName, seq.backingTableName, err, - ) + sequenceTablet, ierr := ts.TopoServer().GetTablet(ctx, tabletAlias) + if ierr != nil || sequenceTablet == nil { + return vterrors.Errorf(vtrpcpb.Code_INTERNAL, "failed to get the primary tablet for keyspace %s: %v", + sequenceTablet.Keyspace, ierr) } - - if err := ts.createSequenceTable(ctx, seq.backingTable, sequenceTablet); err != nil { - return vterrors.Errorf(vtrpcpb.Code_INTERNAL, - "failed to create the backing sequence table %s in the global-keyspace %s: %v", - seq.backingTable, sequenceShard.Keyspace(), err) + _, err = ts.TabletManagerClient().UpdateSequenceTables(ctx, sequenceTablet.Tablet, &tabletmanagerdatapb.UpdateSequenceTablesRequest{ + Sequences: sequencesMetadata, + }) + if err != nil { + return vterrors.Errorf(vtrpcpb.Code_INTERNAL, "failed to initialize the backing sequence tables on tablet %s: %v", topoproto.TabletAliasString(tabletAlias), err) } - // Table has been created, so we fall through and try again on the next loop iteration. } - - return vterrors.Errorf( - vtrpcpb.Code_INTERNAL, "failed to initialize the backing sequence table %s.%s after retries. Last error: %v", - seq.backingTableDBName, seq.backingTableName, err) + return nil } // initializeTargetSequences initializes the backing sequence tables @@ -334,14 +277,9 @@ func (ts *trafficSwitcher) initializeTargetSequences(ctx context.Context, sequen if err != nil { return err } - for _, sm := range sequencesByBackingTable { - maxValue := maxValues[sm.backingTableName] - if maxValue == 0 { - continue - } - if err := ts.updateSequenceValue(ctx, sm, maxValue); err != nil { - return err - } + sequences := maps.Values(sequencesByBackingTable) + if err := ts.updateSequenceValues(ctx, sequences, maxValues); err != nil { + return err } return nil } diff --git a/go/vt/vtctl/workflow/sequences_test.go b/go/vt/vtctl/workflow/sequences_test.go index 61b020c1e2a..1717a3b38b3 100644 --- a/go/vt/vtctl/workflow/sequences_test.go +++ b/go/vt/vtctl/workflow/sequences_test.go @@ -42,6 +42,7 @@ func TestInitializeTargetSequences(t *testing.T) { workflowName := "wf1" tableName := "t1" + tableName2 := "t2" sourceKeyspaceName := "sourceks" targetKeyspaceName := "targetks" @@ -54,6 +55,14 @@ func TestInitializeTargetSequences(t *testing.T) { }, }, }, + tableName2: { + TableDefinitions: []*tabletmanagerdatapb.TableDefinition{ + { + Name: tableName2, + Schema: fmt.Sprintf("CREATE TABLE %s (id BIGINT, name VARCHAR(64), PRIMARY KEY (id))", tableName2), + }, + }, + }, } sourceKeyspace := &testKeyspace{ @@ -87,18 +96,66 @@ func TestInitializeTargetSequences(t *testing.T) { }, }, }, + "my-seq2": { + backingTableName: "my-seq2", + backingTableKeyspace: sourceKeyspaceName, + backingTableDBName: fmt.Sprintf("vt_%s", sourceKeyspaceName), + usingTableName: tableName2, + usingTableDBName: "vt_targetks", + usingTableDefinition: &vschema.Table{ + AutoIncrement: &vschema.AutoIncrement{ + Column: "my-col-2", + Sequence: fmt.Sprintf("%s.my-seq2", sourceKeyspace.KeyspaceName), + }, + }, + }, } - env.tmc.expectVRQuery(200, "/select max.*", sqltypes.MakeTestResult(sqltypes.MakeTestFields("maxval", "int64"), "34")) - // Expect the insert query to be executed with 35 as a params, since we provide a maxID of 34 in the last query - env.tmc.expectVRQuery(100, "/insert into.*35.*", &sqltypes.Result{RowsAffected: 1}) + env.tmc.expectGetMaxValueForSequencesRequest(200, &getMaxValueForSequencesRequestResponse{ + req: &tabletmanagerdatapb.GetMaxValueForSequencesRequest{ + Sequences: []*tabletmanagerdatapb.GetMaxValueForSequencesRequest_SequenceMetadata{ + { + BackingTableName: "my-seq1", + UsingColEscaped: "`my-col`", + UsingTableNameEscaped: fmt.Sprintf("`%s`", tableName), + UsingTableDbNameEscaped: "`vt_targetks`", + }, + { + BackingTableName: "my-seq2", + UsingColEscaped: "`my-col-2`", + UsingTableNameEscaped: fmt.Sprintf("`%s`", tableName2), + UsingTableDbNameEscaped: "`vt_targetks`", + }, + }, + }, + res: &tabletmanagerdatapb.GetMaxValueForSequencesResponse{ + MaxValuesBySequenceTable: map[string]int64{ + "my-seq1": 34, + "my-seq2": 10, + }, + }, + }) + env.tmc.expectUpdateSequenceTablesRequest(100, &tabletmanagerdatapb.UpdateSequenceTablesRequest{ + Sequences: []*tabletmanagerdatapb.UpdateSequenceTablesRequest_SequenceMetadata{ + { + BackingTableName: "my-seq1", + BackingTableDbName: fmt.Sprintf("vt_%s", sourceKeyspaceName), + MaxValue: 34, + }, + { + BackingTableName: "my-seq2", + BackingTableDbName: fmt.Sprintf("vt_%s", sourceKeyspaceName), + MaxValue: 10, + }, + }, + }) err = sw.initializeTargetSequences(ctx, sequencesByBackingTable) assert.NoError(t, err) - // Expect the queries to be cleared - assert.Emptyf(t, env.tmc.vrQueries[100], "expected no queries to be executed, found: %q", env.tmc.vrQueries[100]) - assert.Empty(t, env.tmc.vrQueries[200], "expected no queries to be executed, found: %q", env.tmc.vrQueries[200]) + // Expect the requests to be cleared + assert.Emptyf(t, env.tmc.updateSequenceTablesRequests, "expected no remaining UpdateSequenceTables requests") + assert.Emptyf(t, env.tmc.getMaxValueForSequencesRequests, "expected no remaining GetMaxValueForSequences requests") } func TestGetTargetSequenceMetadata(t *testing.T) { diff --git a/go/vt/vttablet/faketmclient/fake_client.go b/go/vt/vttablet/faketmclient/fake_client.go index 5a5cd33535f..a391ff179c3 100644 --- a/go/vt/vttablet/faketmclient/fake_client.go +++ b/go/vt/vttablet/faketmclient/fake_client.go @@ -338,6 +338,16 @@ func (client *FakeTabletManagerClient) VReplicationWaitForPos(ctx context.Contex return nil } +// UpdateSequenceTables is part of the tmclient.TabletManagerClient interface. +func (itmc *FakeTabletManagerClient) UpdateSequenceTables(ctx context.Context, tablet *topodatapb.Tablet, request *tabletmanagerdatapb.UpdateSequenceTablesRequest) (*tabletmanagerdatapb.UpdateSequenceTablesResponse, error) { + return nil, nil +} + +// GetMaxValueForSequences is part of the tmclient.TabletManagerClient interface. +func (itmc *FakeTabletManagerClient) GetMaxValueForSequences(ctx context.Context, tablet *topodatapb.Tablet, request *tabletmanagerdatapb.GetMaxValueForSequencesRequest) (*tabletmanagerdatapb.GetMaxValueForSequencesResponse, error) { + return nil, nil +} + // // Reparenting related functions // diff --git a/go/vt/vttablet/grpctmclient/client.go b/go/vt/vttablet/grpctmclient/client.go index f6d154570eb..d8b08c1da1d 100644 --- a/go/vt/vttablet/grpctmclient/client.go +++ b/go/vt/vttablet/grpctmclient/client.go @@ -1060,6 +1060,24 @@ func (client *Client) UpdateVReplicationWorkflows(ctx context.Context, tablet *t return response, nil } +func (client *Client) GetMaxValueForSequences(ctx context.Context, tablet *topodatapb.Tablet, request *tabletmanagerdatapb.GetMaxValueForSequencesRequest) (*tabletmanagerdatapb.GetMaxValueForSequencesResponse, error) { + c, closer, err := client.dialer.dial(ctx, tablet) + if err != nil { + return nil, err + } + defer closer.Close() + return c.GetMaxValueForSequences(ctx, request) +} + +func (client *Client) UpdateSequenceTables(ctx context.Context, tablet *topodatapb.Tablet, request *tabletmanagerdatapb.UpdateSequenceTablesRequest) (*tabletmanagerdatapb.UpdateSequenceTablesResponse, error) { + c, closer, err := client.dialer.dial(ctx, tablet) + if err != nil { + return nil, err + } + defer closer.Close() + return c.UpdateSequenceTables(ctx, request) +} + // VDiff is part of the tmclient.TabletManagerClient interface. func (client *Client) VDiff(ctx context.Context, tablet *topodatapb.Tablet, req *tabletmanagerdatapb.VDiffRequest) (*tabletmanagerdatapb.VDiffResponse, error) { log.Infof("VDiff for tablet %s, request %+v", tablet.Alias.String(), req) diff --git a/go/vt/vttablet/grpctmserver/server.go b/go/vt/vttablet/grpctmserver/server.go index be1b8ae9372..483b7937934 100644 --- a/go/vt/vttablet/grpctmserver/server.go +++ b/go/vt/vttablet/grpctmserver/server.go @@ -535,6 +535,20 @@ func (s *server) VDiff(ctx context.Context, request *tabletmanagerdatapb.VDiffRe return response, err } +func (s *server) UpdateSequenceTables(ctx context.Context, request *tabletmanagerdatapb.UpdateSequenceTablesRequest) (response *tabletmanagerdatapb.UpdateSequenceTablesResponse, err error) { + defer s.tm.HandleRPCPanic(ctx, "UpdateSequenceTables", request, response, true /*verbose*/, &err) + ctx = callinfo.GRPCCallInfo(ctx) + response, err = s.tm.UpdateSequenceTables(ctx, request) + return response, err +} + +func (s *server) GetMaxValueForSequences(ctx context.Context, request *tabletmanagerdatapb.GetMaxValueForSequencesRequest) (response *tabletmanagerdatapb.GetMaxValueForSequencesResponse, err error) { + defer s.tm.HandleRPCPanic(ctx, "GetMaxValueForSequences", request, response, true /*verbose*/, &err) + ctx = callinfo.GRPCCallInfo(ctx) + response, err = s.tm.GetMaxValueForSequences(ctx, request) + return response, err +} + // // Reparenting related functions // diff --git a/go/vt/vttablet/tabletmanager/rpc_agent.go b/go/vt/vttablet/tabletmanager/rpc_agent.go index e779cfa8ff5..7971c8bd2d7 100644 --- a/go/vt/vttablet/tabletmanager/rpc_agent.go +++ b/go/vt/vttablet/tabletmanager/rpc_agent.go @@ -128,6 +128,8 @@ type RPCTM interface { VReplicationWaitForPos(ctx context.Context, id int32, pos string) error UpdateVReplicationWorkflow(ctx context.Context, req *tabletmanagerdatapb.UpdateVReplicationWorkflowRequest) (*tabletmanagerdatapb.UpdateVReplicationWorkflowResponse, error) UpdateVReplicationWorkflows(ctx context.Context, req *tabletmanagerdatapb.UpdateVReplicationWorkflowsRequest) (*tabletmanagerdatapb.UpdateVReplicationWorkflowsResponse, error) + UpdateSequenceTables(ctx context.Context, request *tabletmanagerdatapb.UpdateSequenceTablesRequest) (*tabletmanagerdatapb.UpdateSequenceTablesResponse, error) + GetMaxValueForSequences(ctx context.Context, request *tabletmanagerdatapb.GetMaxValueForSequencesRequest) (*tabletmanagerdatapb.GetMaxValueForSequencesResponse, error) // VDiff API VDiff(ctx context.Context, req *tabletmanagerdatapb.VDiffRequest) (*tabletmanagerdatapb.VDiffResponse, error) diff --git a/go/vt/vttablet/tabletmanager/rpc_vreplication.go b/go/vt/vttablet/tabletmanager/rpc_vreplication.go index 522128cbf60..829805ebee6 100644 --- a/go/vt/vttablet/tabletmanager/rpc_vreplication.go +++ b/go/vt/vttablet/tabletmanager/rpc_vreplication.go @@ -21,24 +21,30 @@ import ( "fmt" "sort" "strings" + "sync" "time" "golang.org/x/exp/maps" + "golang.org/x/sync/errgroup" "google.golang.org/protobuf/encoding/prototext" "vitess.io/vitess/go/cmd/vtctldclient/command/vreplication/movetables" "vitess.io/vitess/go/constants/sidecar" + "vitess.io/vitess/go/mysql/sqlerror" "vitess.io/vitess/go/protoutil" + "vitess.io/vitess/go/sqlescape" "vitess.io/vitess/go/sqltypes" "vitess.io/vitess/go/textutil" "vitess.io/vitess/go/vt/discovery" "vitess.io/vitess/go/vt/log" "vitess.io/vitess/go/vt/logutil" + "vitess.io/vitess/go/vt/mysqlctl/tmutils" "vitess.io/vitess/go/vt/proto/vttime" "vitess.io/vitess/go/vt/sqlparser" "vitess.io/vitess/go/vt/topo/topoproto" "vitess.io/vitess/go/vt/vtctl/workflow" "vitess.io/vitess/go/vt/vterrors" + "vitess.io/vitess/go/vt/vttablet/tabletmanager/vreplication" "vitess.io/vitess/go/vt/vttablet/tabletserver/throttle/throttlerapp" binlogdatapb "vitess.io/vitess/go/vt/proto/binlogdata" @@ -87,6 +93,9 @@ where u.user = %a ) limit 1 ` + sqlGetMaxSequenceVal = "select max(%a) as maxval from %a.%a" + sqlInitSequenceTable = "insert into %a.%a (id, next_id, cache) values (0, %d, 1000) on duplicate key update next_id = if(next_id < %d, %d, next_id)" + sqlCreateSequenceTable = "create table if not exists %a (id int, next_id bigint, cache bigint, primary key(id)) comment 'vitess_sequence'" ) var ( @@ -702,6 +711,130 @@ func (tm *TabletManager) UpdateVReplicationWorkflows(ctx context.Context, req *t }, nil } +func (tm *TabletManager) GetMaxValueForSequences(ctx context.Context, req *tabletmanagerdatapb.GetMaxValueForSequencesRequest) (*tabletmanagerdatapb.GetMaxValueForSequencesResponse, error) { + maxValues := make(map[string]int64, len(req.Sequences)) + mu := sync.Mutex{} + initGroup, gctx := errgroup.WithContext(ctx) + for _, sm := range req.Sequences { + initGroup.Go(func() error { + maxId, err := tm.getMaxSequenceValue(gctx, sm) + if err != nil { + return err + } + mu.Lock() + defer mu.Unlock() + maxValues[sm.BackingTableName] = maxId + return nil + }) + } + errs := initGroup.Wait() + if errs != nil { + return nil, errs + } + return &tabletmanagerdatapb.GetMaxValueForSequencesResponse{ + MaxValuesBySequenceTable: maxValues, + }, nil +} + +func (tm *TabletManager) getMaxSequenceValue(ctx context.Context, sm *tabletmanagerdatapb.GetMaxValueForSequencesRequest_SequenceMetadata) (int64, error) { + query := sqlparser.BuildParsedQuery(sqlGetMaxSequenceVal, + sm.UsingColEscaped, + sm.UsingTableDbNameEscaped, + sm.UsingTableNameEscaped, + ) + qr, err := tm.ExecuteFetchAsApp(ctx, &tabletmanagerdatapb.ExecuteFetchAsAppRequest{ + Query: []byte(query.Query), + MaxRows: 1, + }) + if err != nil || len(qr.Rows) != 1 { + return 0, vterrors.Errorf(vtrpcpb.Code_INTERNAL, + "failed to get the max used sequence value for target table %s in order to initialize the backing sequence table: %v", sm.UsingTableNameEscaped, err) + } + rawVal := sqltypes.Proto3ToResult(qr).Rows[0][0] + maxID := int64(0) + if !rawVal.IsNull() { // If it's NULL then there are no rows and 0 remains the max + maxID, err = rawVal.ToInt64() + if err != nil { + return 0, vterrors.Errorf(vtrpcpb.Code_INTERNAL, "failed to get the max used sequence value for target table %s in order to initialize the backing sequence table: %v", sm.UsingTableNameEscaped, err) + } + } + return maxID, nil +} + +func (tm *TabletManager) UpdateSequenceTables(ctx context.Context, req *tabletmanagerdatapb.UpdateSequenceTablesRequest) (*tabletmanagerdatapb.UpdateSequenceTablesResponse, error) { + for _, sm := range req.Sequences { + if err := tm.updateSequenceValue(ctx, sm); err != nil { + return nil, err + } + } + return &tabletmanagerdatapb.UpdateSequenceTablesResponse{}, nil +} + +func (tm *TabletManager) updateSequenceValue(ctx context.Context, seq *tabletmanagerdatapb.UpdateSequenceTablesRequest_SequenceMetadata) error { + nextVal := seq.MaxValue + 1 + if tm.Tablet().DbNameOverride != "" { + seq.BackingTableDbName = tm.Tablet().DbNameOverride + } + backingTableNameEscaped, err := sqlescape.EnsureEscaped(seq.BackingTableName) + if err != nil { + return vterrors.Errorf(vtrpcpb.Code_INVALID_ARGUMENT, "invalid table name %s specified for sequence backing table: %v", + seq.BackingTableName, err) + } + log.Infof("Updating sequence %s.%s to %d", seq.BackingTableDbName, seq.BackingTableName, nextVal) + initQuery := sqlparser.BuildParsedQuery(sqlInitSequenceTable, + seq.BackingTableDbName, + seq.BackingTableName, + nextVal, + nextVal, + nextVal, + ) + const maxTries = 2 + + for i := 0; i < maxTries; i++ { + // Attempt to initialize the sequence. + _, err = tm.ExecuteFetchAsApp(ctx, &tabletmanagerdatapb.ExecuteFetchAsAppRequest{ + Query: []byte(initQuery.Query), + MaxRows: 1, + }) + if err == nil { + return nil + } + + // If the table doesn't exist, try creating it. + sqlErr, ok := sqlerror.NewSQLErrorFromError(err).(*sqlerror.SQLError) + if !ok || (sqlErr.Num != sqlerror.ERNoSuchTable && sqlErr.Num != sqlerror.ERBadTable) { + return vterrors.Errorf( + vtrpcpb.Code_INTERNAL, + "failed to initialize the backing sequence table %s.%s: %v", + seq.BackingTableDbName, seq.BackingTableName, err, + ) + } + + if err := tm.createSequenceTable(ctx, backingTableNameEscaped); err != nil { + return vterrors.Errorf(vtrpcpb.Code_INTERNAL, + "failed to create the backing sequence table %s in the global-keyspace %s: %v", + backingTableNameEscaped, tm.Tablet().Keyspace, err) + } + // Table has been created, so we fall through and try again on the next loop iteration. + } + + return vterrors.Errorf( + vtrpcpb.Code_INTERNAL, "failed to initialize the backing sequence table %s.%s after retries. Last error: %v", + seq.BackingTableDbName, backingTableNameEscaped, err) +} + +func (tm *TabletManager) createSequenceTable(ctx context.Context, escapedTableName string) error { + stmt := sqlparser.BuildParsedQuery(sqlCreateSequenceTable, escapedTableName) + _, err := tm.ApplySchema(ctx, &tmutils.SchemaChange{ + SQL: stmt.Query, + Force: false, + AllowReplication: true, + SQLMode: vreplication.SQLMode, + DisableForeignKeyChecks: true, + }) + return err +} + // ValidateVReplicationPermissions validates that the --db_filtered_user has // the minimum permissions required on the sidecardb vreplication table // needed in order to manage vreplication metadata. diff --git a/go/vt/vttablet/tmclient/rpc_client_api.go b/go/vt/vttablet/tmclient/rpc_client_api.go index 7ce4c7f0bf4..e48fbda4189 100644 --- a/go/vt/vttablet/tmclient/rpc_client_api.go +++ b/go/vt/vttablet/tmclient/rpc_client_api.go @@ -219,6 +219,8 @@ type TabletManagerClient interface { VReplicationExec(ctx context.Context, tablet *topodatapb.Tablet, query string) (*querypb.QueryResult, error) VReplicationWaitForPos(ctx context.Context, tablet *topodatapb.Tablet, id int32, pos string) error VDiff(ctx context.Context, tablet *topodatapb.Tablet, req *tabletmanagerdatapb.VDiffRequest) (*tabletmanagerdatapb.VDiffResponse, error) + UpdateSequenceTables(ctx context.Context, tablet *topodatapb.Tablet, request *tabletmanagerdatapb.UpdateSequenceTablesRequest) (*tabletmanagerdatapb.UpdateSequenceTablesResponse, error) + GetMaxValueForSequences(ctx context.Context, tablet *topodatapb.Tablet, request *tabletmanagerdatapb.GetMaxValueForSequencesRequest) (*tabletmanagerdatapb.GetMaxValueForSequencesResponse, error) // // Reparenting related functions diff --git a/go/vt/vttablet/tmrpctest/test_tm_rpc.go b/go/vt/vttablet/tmrpctest/test_tm_rpc.go index 0ec380882cc..3ff401d33c7 100644 --- a/go/vt/vttablet/tmrpctest/test_tm_rpc.go +++ b/go/vt/vttablet/tmrpctest/test_tm_rpc.go @@ -96,6 +96,16 @@ func (fra *fakeRPCTM) UpdateVReplicationWorkflows(ctx context.Context, req *tabl panic("implement me") } +func (fra *fakeRPCTM) UpdateSequenceTables(ctx context.Context, req *tabletmanagerdatapb.UpdateSequenceTablesRequest) (*tabletmanagerdatapb.UpdateSequenceTablesResponse, error) { + // TODO implement me + panic("implement me") +} + +func (fra *fakeRPCTM) GetMaxValueForSequences(ctx context.Context, req *tabletmanagerdatapb.GetMaxValueForSequencesRequest) (*tabletmanagerdatapb.GetMaxValueForSequencesResponse, error) { + // TODO implement me + panic("implement me") +} + func (fra *fakeRPCTM) ResetSequences(ctx context.Context, tables []string) error { // TODO implement me panic("implement me") diff --git a/proto/tabletmanagerdata.proto b/proto/tabletmanagerdata.proto index 9b300a2a939..f706b868247 100644 --- a/proto/tabletmanagerdata.proto +++ b/proto/tabletmanagerdata.proto @@ -957,3 +957,38 @@ message ChangeTagsRequest { message ChangeTagsResponse { map tags = 1; } + +message UpdateSequenceTablesRequest { + message SequenceMetadata { + // The name of the sequence table. + string backing_table_name = 1; + // The dbName in use by the keyspace where the backing table lives. + string backing_table_db_name = 2; + // The maximum used sequence value. + int64 max_value = 3; + } + repeated SequenceMetadata sequences = 1; +} + +message UpdateSequenceTablesResponse { +} + +message GetMaxValueForSequencesRequest { + message SequenceMetadata { + // The name of the sequence table. This will be used for mapping max value + // with table in the response. + string backing_table_name = 1; + // Escaped column name specified for sequence in table. + string using_col_escaped = 2; + // Escaped name of the table using the sequence. + string using_table_name_escaped = 3; + // Escaped db name in use by the keyspace where the using table lives. + string using_table_db_name_escaped = 4; + } + repeated SequenceMetadata sequences = 1; +} + +message GetMaxValueForSequencesResponse { + // Max used sequence value mapped with the backing sequence table. + map max_values_by_sequence_table = 1; +} \ No newline at end of file diff --git a/proto/tabletmanagerservice.proto b/proto/tabletmanagerservice.proto index 3dac1aa1ee8..4e039449ccc 100644 --- a/proto/tabletmanagerservice.proto +++ b/proto/tabletmanagerservice.proto @@ -148,6 +148,8 @@ service TabletManager { rpc ValidateVReplicationPermissions(tabletmanagerdata.ValidateVReplicationPermissionsRequest) returns(tabletmanagerdata.ValidateVReplicationPermissionsResponse) {}; rpc VReplicationExec(tabletmanagerdata.VReplicationExecRequest) returns(tabletmanagerdata.VReplicationExecResponse) {}; rpc VReplicationWaitForPos(tabletmanagerdata.VReplicationWaitForPosRequest) returns(tabletmanagerdata.VReplicationWaitForPosResponse) {}; + rpc UpdateSequenceTables(tabletmanagerdata.UpdateSequenceTablesRequest) returns(tabletmanagerdata.UpdateSequenceTablesResponse) {}; + rpc GetMaxValueForSequences(tabletmanagerdata.GetMaxValueForSequencesRequest) returns(tabletmanagerdata.GetMaxValueForSequencesResponse) {}; // VDiff API rpc VDiff(tabletmanagerdata.VDiffRequest) returns(tabletmanagerdata.VDiffResponse) {}; diff --git a/web/vtadmin/src/proto/vtadmin.d.ts b/web/vtadmin/src/proto/vtadmin.d.ts index 49da5095c26..5a3882c9d06 100644 --- a/web/vtadmin/src/proto/vtadmin.d.ts +++ b/web/vtadmin/src/proto/vtadmin.d.ts @@ -36329,6 +36329,618 @@ export namespace tabletmanagerdata { */ public static getTypeUrl(typeUrlPrefix?: string): string; } + + /** Properties of an UpdateSequenceTablesRequest. */ + interface IUpdateSequenceTablesRequest { + + /** UpdateSequenceTablesRequest sequences */ + sequences?: (tabletmanagerdata.UpdateSequenceTablesRequest.ISequenceMetadata[]|null); + } + + /** Represents an UpdateSequenceTablesRequest. */ + class UpdateSequenceTablesRequest implements IUpdateSequenceTablesRequest { + + /** + * Constructs a new UpdateSequenceTablesRequest. + * @param [properties] Properties to set + */ + constructor(properties?: tabletmanagerdata.IUpdateSequenceTablesRequest); + + /** UpdateSequenceTablesRequest sequences. */ + public sequences: tabletmanagerdata.UpdateSequenceTablesRequest.ISequenceMetadata[]; + + /** + * Creates a new UpdateSequenceTablesRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns UpdateSequenceTablesRequest instance + */ + public static create(properties?: tabletmanagerdata.IUpdateSequenceTablesRequest): tabletmanagerdata.UpdateSequenceTablesRequest; + + /** + * Encodes the specified UpdateSequenceTablesRequest message. Does not implicitly {@link tabletmanagerdata.UpdateSequenceTablesRequest.verify|verify} messages. + * @param message UpdateSequenceTablesRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: tabletmanagerdata.IUpdateSequenceTablesRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified UpdateSequenceTablesRequest message, length delimited. Does not implicitly {@link tabletmanagerdata.UpdateSequenceTablesRequest.verify|verify} messages. + * @param message UpdateSequenceTablesRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: tabletmanagerdata.IUpdateSequenceTablesRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an UpdateSequenceTablesRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns UpdateSequenceTablesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): tabletmanagerdata.UpdateSequenceTablesRequest; + + /** + * Decodes an UpdateSequenceTablesRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns UpdateSequenceTablesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): tabletmanagerdata.UpdateSequenceTablesRequest; + + /** + * Verifies an UpdateSequenceTablesRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an UpdateSequenceTablesRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns UpdateSequenceTablesRequest + */ + public static fromObject(object: { [k: string]: any }): tabletmanagerdata.UpdateSequenceTablesRequest; + + /** + * Creates a plain object from an UpdateSequenceTablesRequest message. Also converts values to other types if specified. + * @param message UpdateSequenceTablesRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: tabletmanagerdata.UpdateSequenceTablesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this UpdateSequenceTablesRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for UpdateSequenceTablesRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + namespace UpdateSequenceTablesRequest { + + /** Properties of a SequenceMetadata. */ + interface ISequenceMetadata { + + /** SequenceMetadata backing_table_name */ + backing_table_name?: (string|null); + + /** SequenceMetadata backing_table_db_name */ + backing_table_db_name?: (string|null); + + /** SequenceMetadata max_value */ + max_value?: (number|Long|null); + } + + /** Represents a SequenceMetadata. */ + class SequenceMetadata implements ISequenceMetadata { + + /** + * Constructs a new SequenceMetadata. + * @param [properties] Properties to set + */ + constructor(properties?: tabletmanagerdata.UpdateSequenceTablesRequest.ISequenceMetadata); + + /** SequenceMetadata backing_table_name. */ + public backing_table_name: string; + + /** SequenceMetadata backing_table_db_name. */ + public backing_table_db_name: string; + + /** SequenceMetadata max_value. */ + public max_value: (number|Long); + + /** + * Creates a new SequenceMetadata instance using the specified properties. + * @param [properties] Properties to set + * @returns SequenceMetadata instance + */ + public static create(properties?: tabletmanagerdata.UpdateSequenceTablesRequest.ISequenceMetadata): tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata; + + /** + * Encodes the specified SequenceMetadata message. Does not implicitly {@link tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata.verify|verify} messages. + * @param message SequenceMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: tabletmanagerdata.UpdateSequenceTablesRequest.ISequenceMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified SequenceMetadata message, length delimited. Does not implicitly {@link tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata.verify|verify} messages. + * @param message SequenceMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: tabletmanagerdata.UpdateSequenceTablesRequest.ISequenceMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a SequenceMetadata message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns SequenceMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata; + + /** + * Decodes a SequenceMetadata message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns SequenceMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata; + + /** + * Verifies a SequenceMetadata message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a SequenceMetadata message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns SequenceMetadata + */ + public static fromObject(object: { [k: string]: any }): tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata; + + /** + * Creates a plain object from a SequenceMetadata message. Also converts values to other types if specified. + * @param message SequenceMetadata + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this SequenceMetadata to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for SequenceMetadata + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + } + + /** Properties of an UpdateSequenceTablesResponse. */ + interface IUpdateSequenceTablesResponse { + } + + /** Represents an UpdateSequenceTablesResponse. */ + class UpdateSequenceTablesResponse implements IUpdateSequenceTablesResponse { + + /** + * Constructs a new UpdateSequenceTablesResponse. + * @param [properties] Properties to set + */ + constructor(properties?: tabletmanagerdata.IUpdateSequenceTablesResponse); + + /** + * Creates a new UpdateSequenceTablesResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns UpdateSequenceTablesResponse instance + */ + public static create(properties?: tabletmanagerdata.IUpdateSequenceTablesResponse): tabletmanagerdata.UpdateSequenceTablesResponse; + + /** + * Encodes the specified UpdateSequenceTablesResponse message. Does not implicitly {@link tabletmanagerdata.UpdateSequenceTablesResponse.verify|verify} messages. + * @param message UpdateSequenceTablesResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: tabletmanagerdata.IUpdateSequenceTablesResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified UpdateSequenceTablesResponse message, length delimited. Does not implicitly {@link tabletmanagerdata.UpdateSequenceTablesResponse.verify|verify} messages. + * @param message UpdateSequenceTablesResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: tabletmanagerdata.IUpdateSequenceTablesResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an UpdateSequenceTablesResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns UpdateSequenceTablesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): tabletmanagerdata.UpdateSequenceTablesResponse; + + /** + * Decodes an UpdateSequenceTablesResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns UpdateSequenceTablesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): tabletmanagerdata.UpdateSequenceTablesResponse; + + /** + * Verifies an UpdateSequenceTablesResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an UpdateSequenceTablesResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns UpdateSequenceTablesResponse + */ + public static fromObject(object: { [k: string]: any }): tabletmanagerdata.UpdateSequenceTablesResponse; + + /** + * Creates a plain object from an UpdateSequenceTablesResponse message. Also converts values to other types if specified. + * @param message UpdateSequenceTablesResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: tabletmanagerdata.UpdateSequenceTablesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this UpdateSequenceTablesResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for UpdateSequenceTablesResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + /** Properties of a GetMaxValueForSequencesRequest. */ + interface IGetMaxValueForSequencesRequest { + + /** GetMaxValueForSequencesRequest sequences */ + sequences?: (tabletmanagerdata.GetMaxValueForSequencesRequest.ISequenceMetadata[]|null); + } + + /** Represents a GetMaxValueForSequencesRequest. */ + class GetMaxValueForSequencesRequest implements IGetMaxValueForSequencesRequest { + + /** + * Constructs a new GetMaxValueForSequencesRequest. + * @param [properties] Properties to set + */ + constructor(properties?: tabletmanagerdata.IGetMaxValueForSequencesRequest); + + /** GetMaxValueForSequencesRequest sequences. */ + public sequences: tabletmanagerdata.GetMaxValueForSequencesRequest.ISequenceMetadata[]; + + /** + * Creates a new GetMaxValueForSequencesRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GetMaxValueForSequencesRequest instance + */ + public static create(properties?: tabletmanagerdata.IGetMaxValueForSequencesRequest): tabletmanagerdata.GetMaxValueForSequencesRequest; + + /** + * Encodes the specified GetMaxValueForSequencesRequest message. Does not implicitly {@link tabletmanagerdata.GetMaxValueForSequencesRequest.verify|verify} messages. + * @param message GetMaxValueForSequencesRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: tabletmanagerdata.IGetMaxValueForSequencesRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GetMaxValueForSequencesRequest message, length delimited. Does not implicitly {@link tabletmanagerdata.GetMaxValueForSequencesRequest.verify|verify} messages. + * @param message GetMaxValueForSequencesRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: tabletmanagerdata.IGetMaxValueForSequencesRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GetMaxValueForSequencesRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GetMaxValueForSequencesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): tabletmanagerdata.GetMaxValueForSequencesRequest; + + /** + * Decodes a GetMaxValueForSequencesRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GetMaxValueForSequencesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): tabletmanagerdata.GetMaxValueForSequencesRequest; + + /** + * Verifies a GetMaxValueForSequencesRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GetMaxValueForSequencesRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GetMaxValueForSequencesRequest + */ + public static fromObject(object: { [k: string]: any }): tabletmanagerdata.GetMaxValueForSequencesRequest; + + /** + * Creates a plain object from a GetMaxValueForSequencesRequest message. Also converts values to other types if specified. + * @param message GetMaxValueForSequencesRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: tabletmanagerdata.GetMaxValueForSequencesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GetMaxValueForSequencesRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GetMaxValueForSequencesRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + namespace GetMaxValueForSequencesRequest { + + /** Properties of a SequenceMetadata. */ + interface ISequenceMetadata { + + /** SequenceMetadata backing_table_name */ + backing_table_name?: (string|null); + + /** SequenceMetadata using_col_escaped */ + using_col_escaped?: (string|null); + + /** SequenceMetadata using_table_name_escaped */ + using_table_name_escaped?: (string|null); + + /** SequenceMetadata using_table_db_name_escaped */ + using_table_db_name_escaped?: (string|null); + } + + /** Represents a SequenceMetadata. */ + class SequenceMetadata implements ISequenceMetadata { + + /** + * Constructs a new SequenceMetadata. + * @param [properties] Properties to set + */ + constructor(properties?: tabletmanagerdata.GetMaxValueForSequencesRequest.ISequenceMetadata); + + /** SequenceMetadata backing_table_name. */ + public backing_table_name: string; + + /** SequenceMetadata using_col_escaped. */ + public using_col_escaped: string; + + /** SequenceMetadata using_table_name_escaped. */ + public using_table_name_escaped: string; + + /** SequenceMetadata using_table_db_name_escaped. */ + public using_table_db_name_escaped: string; + + /** + * Creates a new SequenceMetadata instance using the specified properties. + * @param [properties] Properties to set + * @returns SequenceMetadata instance + */ + public static create(properties?: tabletmanagerdata.GetMaxValueForSequencesRequest.ISequenceMetadata): tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata; + + /** + * Encodes the specified SequenceMetadata message. Does not implicitly {@link tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata.verify|verify} messages. + * @param message SequenceMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: tabletmanagerdata.GetMaxValueForSequencesRequest.ISequenceMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified SequenceMetadata message, length delimited. Does not implicitly {@link tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata.verify|verify} messages. + * @param message SequenceMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: tabletmanagerdata.GetMaxValueForSequencesRequest.ISequenceMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a SequenceMetadata message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns SequenceMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata; + + /** + * Decodes a SequenceMetadata message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns SequenceMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata; + + /** + * Verifies a SequenceMetadata message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a SequenceMetadata message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns SequenceMetadata + */ + public static fromObject(object: { [k: string]: any }): tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata; + + /** + * Creates a plain object from a SequenceMetadata message. Also converts values to other types if specified. + * @param message SequenceMetadata + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this SequenceMetadata to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for SequenceMetadata + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + } + + /** Properties of a GetMaxValueForSequencesResponse. */ + interface IGetMaxValueForSequencesResponse { + + /** GetMaxValueForSequencesResponse max_values_by_sequence_table */ + max_values_by_sequence_table?: ({ [k: string]: (number|Long) }|null); + } + + /** Represents a GetMaxValueForSequencesResponse. */ + class GetMaxValueForSequencesResponse implements IGetMaxValueForSequencesResponse { + + /** + * Constructs a new GetMaxValueForSequencesResponse. + * @param [properties] Properties to set + */ + constructor(properties?: tabletmanagerdata.IGetMaxValueForSequencesResponse); + + /** GetMaxValueForSequencesResponse max_values_by_sequence_table. */ + public max_values_by_sequence_table: { [k: string]: (number|Long) }; + + /** + * Creates a new GetMaxValueForSequencesResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns GetMaxValueForSequencesResponse instance + */ + public static create(properties?: tabletmanagerdata.IGetMaxValueForSequencesResponse): tabletmanagerdata.GetMaxValueForSequencesResponse; + + /** + * Encodes the specified GetMaxValueForSequencesResponse message. Does not implicitly {@link tabletmanagerdata.GetMaxValueForSequencesResponse.verify|verify} messages. + * @param message GetMaxValueForSequencesResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: tabletmanagerdata.IGetMaxValueForSequencesResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GetMaxValueForSequencesResponse message, length delimited. Does not implicitly {@link tabletmanagerdata.GetMaxValueForSequencesResponse.verify|verify} messages. + * @param message GetMaxValueForSequencesResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: tabletmanagerdata.IGetMaxValueForSequencesResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GetMaxValueForSequencesResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GetMaxValueForSequencesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): tabletmanagerdata.GetMaxValueForSequencesResponse; + + /** + * Decodes a GetMaxValueForSequencesResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GetMaxValueForSequencesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): tabletmanagerdata.GetMaxValueForSequencesResponse; + + /** + * Verifies a GetMaxValueForSequencesResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GetMaxValueForSequencesResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GetMaxValueForSequencesResponse + */ + public static fromObject(object: { [k: string]: any }): tabletmanagerdata.GetMaxValueForSequencesResponse; + + /** + * Creates a plain object from a GetMaxValueForSequencesResponse message. Also converts values to other types if specified. + * @param message GetMaxValueForSequencesResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: tabletmanagerdata.GetMaxValueForSequencesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GetMaxValueForSequencesResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GetMaxValueForSequencesResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } } /** Namespace binlogdata. */ diff --git a/web/vtadmin/src/proto/vtadmin.js b/web/vtadmin/src/proto/vtadmin.js index 1c6897eb2f5..fafa05e5623 100644 --- a/web/vtadmin/src/proto/vtadmin.js +++ b/web/vtadmin/src/proto/vtadmin.js @@ -84975,6 +84975,1414 @@ export const tabletmanagerdata = $root.tabletmanagerdata = (() => { return ChangeTagsResponse; })(); + tabletmanagerdata.UpdateSequenceTablesRequest = (function() { + + /** + * Properties of an UpdateSequenceTablesRequest. + * @memberof tabletmanagerdata + * @interface IUpdateSequenceTablesRequest + * @property {Array.|null} [sequences] UpdateSequenceTablesRequest sequences + */ + + /** + * Constructs a new UpdateSequenceTablesRequest. + * @memberof tabletmanagerdata + * @classdesc Represents an UpdateSequenceTablesRequest. + * @implements IUpdateSequenceTablesRequest + * @constructor + * @param {tabletmanagerdata.IUpdateSequenceTablesRequest=} [properties] Properties to set + */ + function UpdateSequenceTablesRequest(properties) { + this.sequences = []; + if (properties) + for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * UpdateSequenceTablesRequest sequences. + * @member {Array.} sequences + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest + * @instance + */ + UpdateSequenceTablesRequest.prototype.sequences = $util.emptyArray; + + /** + * Creates a new UpdateSequenceTablesRequest instance using the specified properties. + * @function create + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest + * @static + * @param {tabletmanagerdata.IUpdateSequenceTablesRequest=} [properties] Properties to set + * @returns {tabletmanagerdata.UpdateSequenceTablesRequest} UpdateSequenceTablesRequest instance + */ + UpdateSequenceTablesRequest.create = function create(properties) { + return new UpdateSequenceTablesRequest(properties); + }; + + /** + * Encodes the specified UpdateSequenceTablesRequest message. Does not implicitly {@link tabletmanagerdata.UpdateSequenceTablesRequest.verify|verify} messages. + * @function encode + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest + * @static + * @param {tabletmanagerdata.IUpdateSequenceTablesRequest} message UpdateSequenceTablesRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateSequenceTablesRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.sequences != null && message.sequences.length) + for (let i = 0; i < message.sequences.length; ++i) + $root.tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata.encode(message.sequences[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified UpdateSequenceTablesRequest message, length delimited. Does not implicitly {@link tabletmanagerdata.UpdateSequenceTablesRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest + * @static + * @param {tabletmanagerdata.IUpdateSequenceTablesRequest} message UpdateSequenceTablesRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateSequenceTablesRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an UpdateSequenceTablesRequest message from the specified reader or buffer. + * @function decode + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {tabletmanagerdata.UpdateSequenceTablesRequest} UpdateSequenceTablesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateSequenceTablesRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.tabletmanagerdata.UpdateSequenceTablesRequest(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.sequences && message.sequences.length)) + message.sequences = []; + message.sequences.push($root.tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an UpdateSequenceTablesRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {tabletmanagerdata.UpdateSequenceTablesRequest} UpdateSequenceTablesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateSequenceTablesRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an UpdateSequenceTablesRequest message. + * @function verify + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UpdateSequenceTablesRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.sequences != null && message.hasOwnProperty("sequences")) { + if (!Array.isArray(message.sequences)) + return "sequences: array expected"; + for (let i = 0; i < message.sequences.length; ++i) { + let error = $root.tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata.verify(message.sequences[i]); + if (error) + return "sequences." + error; + } + } + return null; + }; + + /** + * Creates an UpdateSequenceTablesRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest + * @static + * @param {Object.} object Plain object + * @returns {tabletmanagerdata.UpdateSequenceTablesRequest} UpdateSequenceTablesRequest + */ + UpdateSequenceTablesRequest.fromObject = function fromObject(object) { + if (object instanceof $root.tabletmanagerdata.UpdateSequenceTablesRequest) + return object; + let message = new $root.tabletmanagerdata.UpdateSequenceTablesRequest(); + if (object.sequences) { + if (!Array.isArray(object.sequences)) + throw TypeError(".tabletmanagerdata.UpdateSequenceTablesRequest.sequences: array expected"); + message.sequences = []; + for (let i = 0; i < object.sequences.length; ++i) { + if (typeof object.sequences[i] !== "object") + throw TypeError(".tabletmanagerdata.UpdateSequenceTablesRequest.sequences: object expected"); + message.sequences[i] = $root.tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata.fromObject(object.sequences[i]); + } + } + return message; + }; + + /** + * Creates a plain object from an UpdateSequenceTablesRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest + * @static + * @param {tabletmanagerdata.UpdateSequenceTablesRequest} message UpdateSequenceTablesRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UpdateSequenceTablesRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + let object = {}; + if (options.arrays || options.defaults) + object.sequences = []; + if (message.sequences && message.sequences.length) { + object.sequences = []; + for (let j = 0; j < message.sequences.length; ++j) + object.sequences[j] = $root.tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata.toObject(message.sequences[j], options); + } + return object; + }; + + /** + * Converts this UpdateSequenceTablesRequest to JSON. + * @function toJSON + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest + * @instance + * @returns {Object.} JSON object + */ + UpdateSequenceTablesRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for UpdateSequenceTablesRequest + * @function getTypeUrl + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + UpdateSequenceTablesRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/tabletmanagerdata.UpdateSequenceTablesRequest"; + }; + + UpdateSequenceTablesRequest.SequenceMetadata = (function() { + + /** + * Properties of a SequenceMetadata. + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest + * @interface ISequenceMetadata + * @property {string|null} [backing_table_name] SequenceMetadata backing_table_name + * @property {string|null} [backing_table_db_name] SequenceMetadata backing_table_db_name + * @property {number|Long|null} [max_value] SequenceMetadata max_value + */ + + /** + * Constructs a new SequenceMetadata. + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest + * @classdesc Represents a SequenceMetadata. + * @implements ISequenceMetadata + * @constructor + * @param {tabletmanagerdata.UpdateSequenceTablesRequest.ISequenceMetadata=} [properties] Properties to set + */ + function SequenceMetadata(properties) { + if (properties) + for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * SequenceMetadata backing_table_name. + * @member {string} backing_table_name + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata + * @instance + */ + SequenceMetadata.prototype.backing_table_name = ""; + + /** + * SequenceMetadata backing_table_db_name. + * @member {string} backing_table_db_name + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata + * @instance + */ + SequenceMetadata.prototype.backing_table_db_name = ""; + + /** + * SequenceMetadata max_value. + * @member {number|Long} max_value + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata + * @instance + */ + SequenceMetadata.prototype.max_value = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + + /** + * Creates a new SequenceMetadata instance using the specified properties. + * @function create + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata + * @static + * @param {tabletmanagerdata.UpdateSequenceTablesRequest.ISequenceMetadata=} [properties] Properties to set + * @returns {tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata} SequenceMetadata instance + */ + SequenceMetadata.create = function create(properties) { + return new SequenceMetadata(properties); + }; + + /** + * Encodes the specified SequenceMetadata message. Does not implicitly {@link tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata.verify|verify} messages. + * @function encode + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata + * @static + * @param {tabletmanagerdata.UpdateSequenceTablesRequest.ISequenceMetadata} message SequenceMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SequenceMetadata.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.backing_table_name != null && Object.hasOwnProperty.call(message, "backing_table_name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.backing_table_name); + if (message.backing_table_db_name != null && Object.hasOwnProperty.call(message, "backing_table_db_name")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.backing_table_db_name); + if (message.max_value != null && Object.hasOwnProperty.call(message, "max_value")) + writer.uint32(/* id 3, wireType 0 =*/24).int64(message.max_value); + return writer; + }; + + /** + * Encodes the specified SequenceMetadata message, length delimited. Does not implicitly {@link tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata.verify|verify} messages. + * @function encodeDelimited + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata + * @static + * @param {tabletmanagerdata.UpdateSequenceTablesRequest.ISequenceMetadata} message SequenceMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SequenceMetadata.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a SequenceMetadata message from the specified reader or buffer. + * @function decode + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata} SequenceMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SequenceMetadata.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.backing_table_name = reader.string(); + break; + } + case 2: { + message.backing_table_db_name = reader.string(); + break; + } + case 3: { + message.max_value = reader.int64(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a SequenceMetadata message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata} SequenceMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SequenceMetadata.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a SequenceMetadata message. + * @function verify + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + SequenceMetadata.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.backing_table_name != null && message.hasOwnProperty("backing_table_name")) + if (!$util.isString(message.backing_table_name)) + return "backing_table_name: string expected"; + if (message.backing_table_db_name != null && message.hasOwnProperty("backing_table_db_name")) + if (!$util.isString(message.backing_table_db_name)) + return "backing_table_db_name: string expected"; + if (message.max_value != null && message.hasOwnProperty("max_value")) + if (!$util.isInteger(message.max_value) && !(message.max_value && $util.isInteger(message.max_value.low) && $util.isInteger(message.max_value.high))) + return "max_value: integer|Long expected"; + return null; + }; + + /** + * Creates a SequenceMetadata message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata + * @static + * @param {Object.} object Plain object + * @returns {tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata} SequenceMetadata + */ + SequenceMetadata.fromObject = function fromObject(object) { + if (object instanceof $root.tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata) + return object; + let message = new $root.tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata(); + if (object.backing_table_name != null) + message.backing_table_name = String(object.backing_table_name); + if (object.backing_table_db_name != null) + message.backing_table_db_name = String(object.backing_table_db_name); + if (object.max_value != null) + if ($util.Long) + (message.max_value = $util.Long.fromValue(object.max_value)).unsigned = false; + else if (typeof object.max_value === "string") + message.max_value = parseInt(object.max_value, 10); + else if (typeof object.max_value === "number") + message.max_value = object.max_value; + else if (typeof object.max_value === "object") + message.max_value = new $util.LongBits(object.max_value.low >>> 0, object.max_value.high >>> 0).toNumber(); + return message; + }; + + /** + * Creates a plain object from a SequenceMetadata message. Also converts values to other types if specified. + * @function toObject + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata + * @static + * @param {tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata} message SequenceMetadata + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + SequenceMetadata.toObject = function toObject(message, options) { + if (!options) + options = {}; + let object = {}; + if (options.defaults) { + object.backing_table_name = ""; + object.backing_table_db_name = ""; + if ($util.Long) { + let long = new $util.Long(0, 0, false); + object.max_value = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.max_value = options.longs === String ? "0" : 0; + } + if (message.backing_table_name != null && message.hasOwnProperty("backing_table_name")) + object.backing_table_name = message.backing_table_name; + if (message.backing_table_db_name != null && message.hasOwnProperty("backing_table_db_name")) + object.backing_table_db_name = message.backing_table_db_name; + if (message.max_value != null && message.hasOwnProperty("max_value")) + if (typeof message.max_value === "number") + object.max_value = options.longs === String ? String(message.max_value) : message.max_value; + else + object.max_value = options.longs === String ? $util.Long.prototype.toString.call(message.max_value) : options.longs === Number ? new $util.LongBits(message.max_value.low >>> 0, message.max_value.high >>> 0).toNumber() : message.max_value; + return object; + }; + + /** + * Converts this SequenceMetadata to JSON. + * @function toJSON + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata + * @instance + * @returns {Object.} JSON object + */ + SequenceMetadata.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for SequenceMetadata + * @function getTypeUrl + * @memberof tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + SequenceMetadata.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/tabletmanagerdata.UpdateSequenceTablesRequest.SequenceMetadata"; + }; + + return SequenceMetadata; + })(); + + return UpdateSequenceTablesRequest; + })(); + + tabletmanagerdata.UpdateSequenceTablesResponse = (function() { + + /** + * Properties of an UpdateSequenceTablesResponse. + * @memberof tabletmanagerdata + * @interface IUpdateSequenceTablesResponse + */ + + /** + * Constructs a new UpdateSequenceTablesResponse. + * @memberof tabletmanagerdata + * @classdesc Represents an UpdateSequenceTablesResponse. + * @implements IUpdateSequenceTablesResponse + * @constructor + * @param {tabletmanagerdata.IUpdateSequenceTablesResponse=} [properties] Properties to set + */ + function UpdateSequenceTablesResponse(properties) { + if (properties) + for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * Creates a new UpdateSequenceTablesResponse instance using the specified properties. + * @function create + * @memberof tabletmanagerdata.UpdateSequenceTablesResponse + * @static + * @param {tabletmanagerdata.IUpdateSequenceTablesResponse=} [properties] Properties to set + * @returns {tabletmanagerdata.UpdateSequenceTablesResponse} UpdateSequenceTablesResponse instance + */ + UpdateSequenceTablesResponse.create = function create(properties) { + return new UpdateSequenceTablesResponse(properties); + }; + + /** + * Encodes the specified UpdateSequenceTablesResponse message. Does not implicitly {@link tabletmanagerdata.UpdateSequenceTablesResponse.verify|verify} messages. + * @function encode + * @memberof tabletmanagerdata.UpdateSequenceTablesResponse + * @static + * @param {tabletmanagerdata.IUpdateSequenceTablesResponse} message UpdateSequenceTablesResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateSequenceTablesResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + return writer; + }; + + /** + * Encodes the specified UpdateSequenceTablesResponse message, length delimited. Does not implicitly {@link tabletmanagerdata.UpdateSequenceTablesResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof tabletmanagerdata.UpdateSequenceTablesResponse + * @static + * @param {tabletmanagerdata.IUpdateSequenceTablesResponse} message UpdateSequenceTablesResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateSequenceTablesResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an UpdateSequenceTablesResponse message from the specified reader or buffer. + * @function decode + * @memberof tabletmanagerdata.UpdateSequenceTablesResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {tabletmanagerdata.UpdateSequenceTablesResponse} UpdateSequenceTablesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateSequenceTablesResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.tabletmanagerdata.UpdateSequenceTablesResponse(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an UpdateSequenceTablesResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof tabletmanagerdata.UpdateSequenceTablesResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {tabletmanagerdata.UpdateSequenceTablesResponse} UpdateSequenceTablesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateSequenceTablesResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an UpdateSequenceTablesResponse message. + * @function verify + * @memberof tabletmanagerdata.UpdateSequenceTablesResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UpdateSequenceTablesResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + return null; + }; + + /** + * Creates an UpdateSequenceTablesResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof tabletmanagerdata.UpdateSequenceTablesResponse + * @static + * @param {Object.} object Plain object + * @returns {tabletmanagerdata.UpdateSequenceTablesResponse} UpdateSequenceTablesResponse + */ + UpdateSequenceTablesResponse.fromObject = function fromObject(object) { + if (object instanceof $root.tabletmanagerdata.UpdateSequenceTablesResponse) + return object; + return new $root.tabletmanagerdata.UpdateSequenceTablesResponse(); + }; + + /** + * Creates a plain object from an UpdateSequenceTablesResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof tabletmanagerdata.UpdateSequenceTablesResponse + * @static + * @param {tabletmanagerdata.UpdateSequenceTablesResponse} message UpdateSequenceTablesResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UpdateSequenceTablesResponse.toObject = function toObject() { + return {}; + }; + + /** + * Converts this UpdateSequenceTablesResponse to JSON. + * @function toJSON + * @memberof tabletmanagerdata.UpdateSequenceTablesResponse + * @instance + * @returns {Object.} JSON object + */ + UpdateSequenceTablesResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for UpdateSequenceTablesResponse + * @function getTypeUrl + * @memberof tabletmanagerdata.UpdateSequenceTablesResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + UpdateSequenceTablesResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/tabletmanagerdata.UpdateSequenceTablesResponse"; + }; + + return UpdateSequenceTablesResponse; + })(); + + tabletmanagerdata.GetMaxValueForSequencesRequest = (function() { + + /** + * Properties of a GetMaxValueForSequencesRequest. + * @memberof tabletmanagerdata + * @interface IGetMaxValueForSequencesRequest + * @property {Array.|null} [sequences] GetMaxValueForSequencesRequest sequences + */ + + /** + * Constructs a new GetMaxValueForSequencesRequest. + * @memberof tabletmanagerdata + * @classdesc Represents a GetMaxValueForSequencesRequest. + * @implements IGetMaxValueForSequencesRequest + * @constructor + * @param {tabletmanagerdata.IGetMaxValueForSequencesRequest=} [properties] Properties to set + */ + function GetMaxValueForSequencesRequest(properties) { + this.sequences = []; + if (properties) + for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * GetMaxValueForSequencesRequest sequences. + * @member {Array.} sequences + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest + * @instance + */ + GetMaxValueForSequencesRequest.prototype.sequences = $util.emptyArray; + + /** + * Creates a new GetMaxValueForSequencesRequest instance using the specified properties. + * @function create + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest + * @static + * @param {tabletmanagerdata.IGetMaxValueForSequencesRequest=} [properties] Properties to set + * @returns {tabletmanagerdata.GetMaxValueForSequencesRequest} GetMaxValueForSequencesRequest instance + */ + GetMaxValueForSequencesRequest.create = function create(properties) { + return new GetMaxValueForSequencesRequest(properties); + }; + + /** + * Encodes the specified GetMaxValueForSequencesRequest message. Does not implicitly {@link tabletmanagerdata.GetMaxValueForSequencesRequest.verify|verify} messages. + * @function encode + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest + * @static + * @param {tabletmanagerdata.IGetMaxValueForSequencesRequest} message GetMaxValueForSequencesRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetMaxValueForSequencesRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.sequences != null && message.sequences.length) + for (let i = 0; i < message.sequences.length; ++i) + $root.tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata.encode(message.sequences[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified GetMaxValueForSequencesRequest message, length delimited. Does not implicitly {@link tabletmanagerdata.GetMaxValueForSequencesRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest + * @static + * @param {tabletmanagerdata.IGetMaxValueForSequencesRequest} message GetMaxValueForSequencesRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetMaxValueForSequencesRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GetMaxValueForSequencesRequest message from the specified reader or buffer. + * @function decode + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {tabletmanagerdata.GetMaxValueForSequencesRequest} GetMaxValueForSequencesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetMaxValueForSequencesRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.tabletmanagerdata.GetMaxValueForSequencesRequest(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.sequences && message.sequences.length)) + message.sequences = []; + message.sequences.push($root.tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GetMaxValueForSequencesRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {tabletmanagerdata.GetMaxValueForSequencesRequest} GetMaxValueForSequencesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetMaxValueForSequencesRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GetMaxValueForSequencesRequest message. + * @function verify + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetMaxValueForSequencesRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.sequences != null && message.hasOwnProperty("sequences")) { + if (!Array.isArray(message.sequences)) + return "sequences: array expected"; + for (let i = 0; i < message.sequences.length; ++i) { + let error = $root.tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata.verify(message.sequences[i]); + if (error) + return "sequences." + error; + } + } + return null; + }; + + /** + * Creates a GetMaxValueForSequencesRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest + * @static + * @param {Object.} object Plain object + * @returns {tabletmanagerdata.GetMaxValueForSequencesRequest} GetMaxValueForSequencesRequest + */ + GetMaxValueForSequencesRequest.fromObject = function fromObject(object) { + if (object instanceof $root.tabletmanagerdata.GetMaxValueForSequencesRequest) + return object; + let message = new $root.tabletmanagerdata.GetMaxValueForSequencesRequest(); + if (object.sequences) { + if (!Array.isArray(object.sequences)) + throw TypeError(".tabletmanagerdata.GetMaxValueForSequencesRequest.sequences: array expected"); + message.sequences = []; + for (let i = 0; i < object.sequences.length; ++i) { + if (typeof object.sequences[i] !== "object") + throw TypeError(".tabletmanagerdata.GetMaxValueForSequencesRequest.sequences: object expected"); + message.sequences[i] = $root.tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata.fromObject(object.sequences[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a GetMaxValueForSequencesRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest + * @static + * @param {tabletmanagerdata.GetMaxValueForSequencesRequest} message GetMaxValueForSequencesRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetMaxValueForSequencesRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + let object = {}; + if (options.arrays || options.defaults) + object.sequences = []; + if (message.sequences && message.sequences.length) { + object.sequences = []; + for (let j = 0; j < message.sequences.length; ++j) + object.sequences[j] = $root.tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata.toObject(message.sequences[j], options); + } + return object; + }; + + /** + * Converts this GetMaxValueForSequencesRequest to JSON. + * @function toJSON + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest + * @instance + * @returns {Object.} JSON object + */ + GetMaxValueForSequencesRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for GetMaxValueForSequencesRequest + * @function getTypeUrl + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GetMaxValueForSequencesRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/tabletmanagerdata.GetMaxValueForSequencesRequest"; + }; + + GetMaxValueForSequencesRequest.SequenceMetadata = (function() { + + /** + * Properties of a SequenceMetadata. + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest + * @interface ISequenceMetadata + * @property {string|null} [backing_table_name] SequenceMetadata backing_table_name + * @property {string|null} [using_col_escaped] SequenceMetadata using_col_escaped + * @property {string|null} [using_table_name_escaped] SequenceMetadata using_table_name_escaped + * @property {string|null} [using_table_db_name_escaped] SequenceMetadata using_table_db_name_escaped + */ + + /** + * Constructs a new SequenceMetadata. + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest + * @classdesc Represents a SequenceMetadata. + * @implements ISequenceMetadata + * @constructor + * @param {tabletmanagerdata.GetMaxValueForSequencesRequest.ISequenceMetadata=} [properties] Properties to set + */ + function SequenceMetadata(properties) { + if (properties) + for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * SequenceMetadata backing_table_name. + * @member {string} backing_table_name + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata + * @instance + */ + SequenceMetadata.prototype.backing_table_name = ""; + + /** + * SequenceMetadata using_col_escaped. + * @member {string} using_col_escaped + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata + * @instance + */ + SequenceMetadata.prototype.using_col_escaped = ""; + + /** + * SequenceMetadata using_table_name_escaped. + * @member {string} using_table_name_escaped + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata + * @instance + */ + SequenceMetadata.prototype.using_table_name_escaped = ""; + + /** + * SequenceMetadata using_table_db_name_escaped. + * @member {string} using_table_db_name_escaped + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata + * @instance + */ + SequenceMetadata.prototype.using_table_db_name_escaped = ""; + + /** + * Creates a new SequenceMetadata instance using the specified properties. + * @function create + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata + * @static + * @param {tabletmanagerdata.GetMaxValueForSequencesRequest.ISequenceMetadata=} [properties] Properties to set + * @returns {tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata} SequenceMetadata instance + */ + SequenceMetadata.create = function create(properties) { + return new SequenceMetadata(properties); + }; + + /** + * Encodes the specified SequenceMetadata message. Does not implicitly {@link tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata.verify|verify} messages. + * @function encode + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata + * @static + * @param {tabletmanagerdata.GetMaxValueForSequencesRequest.ISequenceMetadata} message SequenceMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SequenceMetadata.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.backing_table_name != null && Object.hasOwnProperty.call(message, "backing_table_name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.backing_table_name); + if (message.using_col_escaped != null && Object.hasOwnProperty.call(message, "using_col_escaped")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.using_col_escaped); + if (message.using_table_name_escaped != null && Object.hasOwnProperty.call(message, "using_table_name_escaped")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.using_table_name_escaped); + if (message.using_table_db_name_escaped != null && Object.hasOwnProperty.call(message, "using_table_db_name_escaped")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.using_table_db_name_escaped); + return writer; + }; + + /** + * Encodes the specified SequenceMetadata message, length delimited. Does not implicitly {@link tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata.verify|verify} messages. + * @function encodeDelimited + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata + * @static + * @param {tabletmanagerdata.GetMaxValueForSequencesRequest.ISequenceMetadata} message SequenceMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SequenceMetadata.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a SequenceMetadata message from the specified reader or buffer. + * @function decode + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata} SequenceMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SequenceMetadata.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.backing_table_name = reader.string(); + break; + } + case 2: { + message.using_col_escaped = reader.string(); + break; + } + case 3: { + message.using_table_name_escaped = reader.string(); + break; + } + case 4: { + message.using_table_db_name_escaped = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a SequenceMetadata message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata} SequenceMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SequenceMetadata.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a SequenceMetadata message. + * @function verify + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + SequenceMetadata.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.backing_table_name != null && message.hasOwnProperty("backing_table_name")) + if (!$util.isString(message.backing_table_name)) + return "backing_table_name: string expected"; + if (message.using_col_escaped != null && message.hasOwnProperty("using_col_escaped")) + if (!$util.isString(message.using_col_escaped)) + return "using_col_escaped: string expected"; + if (message.using_table_name_escaped != null && message.hasOwnProperty("using_table_name_escaped")) + if (!$util.isString(message.using_table_name_escaped)) + return "using_table_name_escaped: string expected"; + if (message.using_table_db_name_escaped != null && message.hasOwnProperty("using_table_db_name_escaped")) + if (!$util.isString(message.using_table_db_name_escaped)) + return "using_table_db_name_escaped: string expected"; + return null; + }; + + /** + * Creates a SequenceMetadata message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata + * @static + * @param {Object.} object Plain object + * @returns {tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata} SequenceMetadata + */ + SequenceMetadata.fromObject = function fromObject(object) { + if (object instanceof $root.tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata) + return object; + let message = new $root.tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata(); + if (object.backing_table_name != null) + message.backing_table_name = String(object.backing_table_name); + if (object.using_col_escaped != null) + message.using_col_escaped = String(object.using_col_escaped); + if (object.using_table_name_escaped != null) + message.using_table_name_escaped = String(object.using_table_name_escaped); + if (object.using_table_db_name_escaped != null) + message.using_table_db_name_escaped = String(object.using_table_db_name_escaped); + return message; + }; + + /** + * Creates a plain object from a SequenceMetadata message. Also converts values to other types if specified. + * @function toObject + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata + * @static + * @param {tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata} message SequenceMetadata + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + SequenceMetadata.toObject = function toObject(message, options) { + if (!options) + options = {}; + let object = {}; + if (options.defaults) { + object.backing_table_name = ""; + object.using_col_escaped = ""; + object.using_table_name_escaped = ""; + object.using_table_db_name_escaped = ""; + } + if (message.backing_table_name != null && message.hasOwnProperty("backing_table_name")) + object.backing_table_name = message.backing_table_name; + if (message.using_col_escaped != null && message.hasOwnProperty("using_col_escaped")) + object.using_col_escaped = message.using_col_escaped; + if (message.using_table_name_escaped != null && message.hasOwnProperty("using_table_name_escaped")) + object.using_table_name_escaped = message.using_table_name_escaped; + if (message.using_table_db_name_escaped != null && message.hasOwnProperty("using_table_db_name_escaped")) + object.using_table_db_name_escaped = message.using_table_db_name_escaped; + return object; + }; + + /** + * Converts this SequenceMetadata to JSON. + * @function toJSON + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata + * @instance + * @returns {Object.} JSON object + */ + SequenceMetadata.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for SequenceMetadata + * @function getTypeUrl + * @memberof tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + SequenceMetadata.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/tabletmanagerdata.GetMaxValueForSequencesRequest.SequenceMetadata"; + }; + + return SequenceMetadata; + })(); + + return GetMaxValueForSequencesRequest; + })(); + + tabletmanagerdata.GetMaxValueForSequencesResponse = (function() { + + /** + * Properties of a GetMaxValueForSequencesResponse. + * @memberof tabletmanagerdata + * @interface IGetMaxValueForSequencesResponse + * @property {Object.|null} [max_values_by_sequence_table] GetMaxValueForSequencesResponse max_values_by_sequence_table + */ + + /** + * Constructs a new GetMaxValueForSequencesResponse. + * @memberof tabletmanagerdata + * @classdesc Represents a GetMaxValueForSequencesResponse. + * @implements IGetMaxValueForSequencesResponse + * @constructor + * @param {tabletmanagerdata.IGetMaxValueForSequencesResponse=} [properties] Properties to set + */ + function GetMaxValueForSequencesResponse(properties) { + this.max_values_by_sequence_table = {}; + if (properties) + for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * GetMaxValueForSequencesResponse max_values_by_sequence_table. + * @member {Object.} max_values_by_sequence_table + * @memberof tabletmanagerdata.GetMaxValueForSequencesResponse + * @instance + */ + GetMaxValueForSequencesResponse.prototype.max_values_by_sequence_table = $util.emptyObject; + + /** + * Creates a new GetMaxValueForSequencesResponse instance using the specified properties. + * @function create + * @memberof tabletmanagerdata.GetMaxValueForSequencesResponse + * @static + * @param {tabletmanagerdata.IGetMaxValueForSequencesResponse=} [properties] Properties to set + * @returns {tabletmanagerdata.GetMaxValueForSequencesResponse} GetMaxValueForSequencesResponse instance + */ + GetMaxValueForSequencesResponse.create = function create(properties) { + return new GetMaxValueForSequencesResponse(properties); + }; + + /** + * Encodes the specified GetMaxValueForSequencesResponse message. Does not implicitly {@link tabletmanagerdata.GetMaxValueForSequencesResponse.verify|verify} messages. + * @function encode + * @memberof tabletmanagerdata.GetMaxValueForSequencesResponse + * @static + * @param {tabletmanagerdata.IGetMaxValueForSequencesResponse} message GetMaxValueForSequencesResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetMaxValueForSequencesResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.max_values_by_sequence_table != null && Object.hasOwnProperty.call(message, "max_values_by_sequence_table")) + for (let keys = Object.keys(message.max_values_by_sequence_table), i = 0; i < keys.length; ++i) + writer.uint32(/* id 1, wireType 2 =*/10).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 0 =*/16).int64(message.max_values_by_sequence_table[keys[i]]).ldelim(); + return writer; + }; + + /** + * Encodes the specified GetMaxValueForSequencesResponse message, length delimited. Does not implicitly {@link tabletmanagerdata.GetMaxValueForSequencesResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof tabletmanagerdata.GetMaxValueForSequencesResponse + * @static + * @param {tabletmanagerdata.IGetMaxValueForSequencesResponse} message GetMaxValueForSequencesResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetMaxValueForSequencesResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GetMaxValueForSequencesResponse message from the specified reader or buffer. + * @function decode + * @memberof tabletmanagerdata.GetMaxValueForSequencesResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {tabletmanagerdata.GetMaxValueForSequencesResponse} GetMaxValueForSequencesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetMaxValueForSequencesResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.tabletmanagerdata.GetMaxValueForSequencesResponse(), key, value; + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (message.max_values_by_sequence_table === $util.emptyObject) + message.max_values_by_sequence_table = {}; + let end2 = reader.uint32() + reader.pos; + key = ""; + value = 0; + while (reader.pos < end2) { + let tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = reader.int64(); + break; + default: + reader.skipType(tag2 & 7); + break; + } + } + message.max_values_by_sequence_table[key] = value; + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GetMaxValueForSequencesResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof tabletmanagerdata.GetMaxValueForSequencesResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {tabletmanagerdata.GetMaxValueForSequencesResponse} GetMaxValueForSequencesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetMaxValueForSequencesResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GetMaxValueForSequencesResponse message. + * @function verify + * @memberof tabletmanagerdata.GetMaxValueForSequencesResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetMaxValueForSequencesResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.max_values_by_sequence_table != null && message.hasOwnProperty("max_values_by_sequence_table")) { + if (!$util.isObject(message.max_values_by_sequence_table)) + return "max_values_by_sequence_table: object expected"; + let key = Object.keys(message.max_values_by_sequence_table); + for (let i = 0; i < key.length; ++i) + if (!$util.isInteger(message.max_values_by_sequence_table[key[i]]) && !(message.max_values_by_sequence_table[key[i]] && $util.isInteger(message.max_values_by_sequence_table[key[i]].low) && $util.isInteger(message.max_values_by_sequence_table[key[i]].high))) + return "max_values_by_sequence_table: integer|Long{k:string} expected"; + } + return null; + }; + + /** + * Creates a GetMaxValueForSequencesResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof tabletmanagerdata.GetMaxValueForSequencesResponse + * @static + * @param {Object.} object Plain object + * @returns {tabletmanagerdata.GetMaxValueForSequencesResponse} GetMaxValueForSequencesResponse + */ + GetMaxValueForSequencesResponse.fromObject = function fromObject(object) { + if (object instanceof $root.tabletmanagerdata.GetMaxValueForSequencesResponse) + return object; + let message = new $root.tabletmanagerdata.GetMaxValueForSequencesResponse(); + if (object.max_values_by_sequence_table) { + if (typeof object.max_values_by_sequence_table !== "object") + throw TypeError(".tabletmanagerdata.GetMaxValueForSequencesResponse.max_values_by_sequence_table: object expected"); + message.max_values_by_sequence_table = {}; + for (let keys = Object.keys(object.max_values_by_sequence_table), i = 0; i < keys.length; ++i) + if ($util.Long) + (message.max_values_by_sequence_table[keys[i]] = $util.Long.fromValue(object.max_values_by_sequence_table[keys[i]])).unsigned = false; + else if (typeof object.max_values_by_sequence_table[keys[i]] === "string") + message.max_values_by_sequence_table[keys[i]] = parseInt(object.max_values_by_sequence_table[keys[i]], 10); + else if (typeof object.max_values_by_sequence_table[keys[i]] === "number") + message.max_values_by_sequence_table[keys[i]] = object.max_values_by_sequence_table[keys[i]]; + else if (typeof object.max_values_by_sequence_table[keys[i]] === "object") + message.max_values_by_sequence_table[keys[i]] = new $util.LongBits(object.max_values_by_sequence_table[keys[i]].low >>> 0, object.max_values_by_sequence_table[keys[i]].high >>> 0).toNumber(); + } + return message; + }; + + /** + * Creates a plain object from a GetMaxValueForSequencesResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof tabletmanagerdata.GetMaxValueForSequencesResponse + * @static + * @param {tabletmanagerdata.GetMaxValueForSequencesResponse} message GetMaxValueForSequencesResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetMaxValueForSequencesResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + let object = {}; + if (options.objects || options.defaults) + object.max_values_by_sequence_table = {}; + let keys2; + if (message.max_values_by_sequence_table && (keys2 = Object.keys(message.max_values_by_sequence_table)).length) { + object.max_values_by_sequence_table = {}; + for (let j = 0; j < keys2.length; ++j) + if (typeof message.max_values_by_sequence_table[keys2[j]] === "number") + object.max_values_by_sequence_table[keys2[j]] = options.longs === String ? String(message.max_values_by_sequence_table[keys2[j]]) : message.max_values_by_sequence_table[keys2[j]]; + else + object.max_values_by_sequence_table[keys2[j]] = options.longs === String ? $util.Long.prototype.toString.call(message.max_values_by_sequence_table[keys2[j]]) : options.longs === Number ? new $util.LongBits(message.max_values_by_sequence_table[keys2[j]].low >>> 0, message.max_values_by_sequence_table[keys2[j]].high >>> 0).toNumber() : message.max_values_by_sequence_table[keys2[j]]; + } + return object; + }; + + /** + * Converts this GetMaxValueForSequencesResponse to JSON. + * @function toJSON + * @memberof tabletmanagerdata.GetMaxValueForSequencesResponse + * @instance + * @returns {Object.} JSON object + */ + GetMaxValueForSequencesResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for GetMaxValueForSequencesResponse + * @function getTypeUrl + * @memberof tabletmanagerdata.GetMaxValueForSequencesResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GetMaxValueForSequencesResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/tabletmanagerdata.GetMaxValueForSequencesResponse"; + }; + + return GetMaxValueForSequencesResponse; + })(); + return tabletmanagerdata; })();