diff --git a/go/vt/proto/vtadmin/vtadmin.pb.go b/go/vt/proto/vtadmin/vtadmin.pb.go index 54645081219..3810842bdf7 100644 --- a/go/vt/proto/vtadmin/vtadmin.pb.go +++ b/go/vt/proto/vtadmin/vtadmin.pb.go @@ -89,7 +89,7 @@ func (x Tablet_ServingState) Number() protoreflect.EnumNumber { // Deprecated: Use Tablet_ServingState.Descriptor instead. func (Tablet_ServingState) EnumDescriptor() ([]byte, []int) { - return file_vtadmin_proto_rawDescGZIP(), []int{10, 0} + return file_vtadmin_proto_rawDescGZIP(), []int{11, 0} } // Cluster represents information about a Vitess cluster. @@ -589,6 +589,61 @@ func (x *Schema) GetTableSizes() map[string]*Schema_TableSize { return nil } +type SchemaMigration struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Cluster *Cluster `protobuf:"bytes,1,opt,name=cluster,proto3" json:"cluster,omitempty"` + SchemaMigration *vtctldata.SchemaMigration `protobuf:"bytes,2,opt,name=schema_migration,json=schemaMigration,proto3" json:"schema_migration,omitempty"` +} + +func (x *SchemaMigration) Reset() { + *x = SchemaMigration{} + if protoimpl.UnsafeEnabled { + mi := &file_vtadmin_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SchemaMigration) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SchemaMigration) ProtoMessage() {} + +func (x *SchemaMigration) ProtoReflect() protoreflect.Message { + mi := &file_vtadmin_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SchemaMigration.ProtoReflect.Descriptor instead. +func (*SchemaMigration) Descriptor() ([]byte, []int) { + return file_vtadmin_proto_rawDescGZIP(), []int{8} +} + +func (x *SchemaMigration) GetCluster() *Cluster { + if x != nil { + return x.Cluster + } + return nil +} + +func (x *SchemaMigration) GetSchemaMigration() *vtctldata.SchemaMigration { + if x != nil { + return x.SchemaMigration + } + return nil +} + // Shard groups the vtctldata information about a shard record together with // the Vitess cluster it belongs to. type Shard struct { @@ -603,7 +658,7 @@ type Shard struct { func (x *Shard) Reset() { *x = Shard{} if protoimpl.UnsafeEnabled { - mi := &file_vtadmin_proto_msgTypes[8] + mi := &file_vtadmin_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -616,7 +671,7 @@ func (x *Shard) String() string { func (*Shard) ProtoMessage() {} func (x *Shard) ProtoReflect() protoreflect.Message { - mi := &file_vtadmin_proto_msgTypes[8] + mi := &file_vtadmin_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -629,7 +684,7 @@ func (x *Shard) ProtoReflect() protoreflect.Message { // Deprecated: Use Shard.ProtoReflect.Descriptor instead. func (*Shard) Descriptor() ([]byte, []int) { - return file_vtadmin_proto_rawDescGZIP(), []int{8} + return file_vtadmin_proto_rawDescGZIP(), []int{9} } func (x *Shard) GetCluster() *Cluster { @@ -659,7 +714,7 @@ type SrvVSchema struct { func (x *SrvVSchema) Reset() { *x = SrvVSchema{} if protoimpl.UnsafeEnabled { - mi := &file_vtadmin_proto_msgTypes[9] + mi := &file_vtadmin_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -672,7 +727,7 @@ func (x *SrvVSchema) String() string { func (*SrvVSchema) ProtoMessage() {} func (x *SrvVSchema) ProtoReflect() protoreflect.Message { - mi := &file_vtadmin_proto_msgTypes[9] + mi := &file_vtadmin_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -685,7 +740,7 @@ func (x *SrvVSchema) ProtoReflect() protoreflect.Message { // Deprecated: Use SrvVSchema.ProtoReflect.Descriptor instead. func (*SrvVSchema) Descriptor() ([]byte, []int) { - return file_vtadmin_proto_rawDescGZIP(), []int{9} + return file_vtadmin_proto_rawDescGZIP(), []int{10} } func (x *SrvVSchema) GetCell() string { @@ -725,7 +780,7 @@ type Tablet struct { func (x *Tablet) Reset() { *x = Tablet{} if protoimpl.UnsafeEnabled { - mi := &file_vtadmin_proto_msgTypes[10] + mi := &file_vtadmin_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -738,7 +793,7 @@ func (x *Tablet) String() string { func (*Tablet) ProtoMessage() {} func (x *Tablet) ProtoReflect() protoreflect.Message { - mi := &file_vtadmin_proto_msgTypes[10] + mi := &file_vtadmin_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -751,7 +806,7 @@ func (x *Tablet) ProtoReflect() protoreflect.Message { // Deprecated: Use Tablet.ProtoReflect.Descriptor instead. func (*Tablet) Descriptor() ([]byte, []int) { - return file_vtadmin_proto_rawDescGZIP(), []int{10} + return file_vtadmin_proto_rawDescGZIP(), []int{11} } func (x *Tablet) GetCluster() *Cluster { @@ -797,7 +852,7 @@ type VSchema struct { func (x *VSchema) Reset() { *x = VSchema{} if protoimpl.UnsafeEnabled { - mi := &file_vtadmin_proto_msgTypes[11] + mi := &file_vtadmin_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -810,7 +865,7 @@ func (x *VSchema) String() string { func (*VSchema) ProtoMessage() {} func (x *VSchema) ProtoReflect() protoreflect.Message { - mi := &file_vtadmin_proto_msgTypes[11] + mi := &file_vtadmin_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -823,7 +878,7 @@ func (x *VSchema) ProtoReflect() protoreflect.Message { // Deprecated: Use VSchema.ProtoReflect.Descriptor instead. func (*VSchema) Descriptor() ([]byte, []int) { - return file_vtadmin_proto_rawDescGZIP(), []int{11} + return file_vtadmin_proto_rawDescGZIP(), []int{12} } func (x *VSchema) GetCluster() *Cluster { @@ -861,7 +916,7 @@ type Vtctld struct { func (x *Vtctld) Reset() { *x = Vtctld{} if protoimpl.UnsafeEnabled { - mi := &file_vtadmin_proto_msgTypes[12] + mi := &file_vtadmin_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -874,7 +929,7 @@ func (x *Vtctld) String() string { func (*Vtctld) ProtoMessage() {} func (x *Vtctld) ProtoReflect() protoreflect.Message { - mi := &file_vtadmin_proto_msgTypes[12] + mi := &file_vtadmin_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -887,7 +942,7 @@ func (x *Vtctld) ProtoReflect() protoreflect.Message { // Deprecated: Use Vtctld.ProtoReflect.Descriptor instead. func (*Vtctld) Descriptor() ([]byte, []int) { - return file_vtadmin_proto_rawDescGZIP(), []int{12} + return file_vtadmin_proto_rawDescGZIP(), []int{13} } func (x *Vtctld) GetHostname() string { @@ -935,7 +990,7 @@ type VTGate struct { func (x *VTGate) Reset() { *x = VTGate{} if protoimpl.UnsafeEnabled { - mi := &file_vtadmin_proto_msgTypes[13] + mi := &file_vtadmin_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -948,7 +1003,7 @@ func (x *VTGate) String() string { func (*VTGate) ProtoMessage() {} func (x *VTGate) ProtoReflect() protoreflect.Message { - mi := &file_vtadmin_proto_msgTypes[13] + mi := &file_vtadmin_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -961,7 +1016,7 @@ func (x *VTGate) ProtoReflect() protoreflect.Message { // Deprecated: Use VTGate.ProtoReflect.Descriptor instead. func (*VTGate) Descriptor() ([]byte, []int) { - return file_vtadmin_proto_rawDescGZIP(), []int{13} + return file_vtadmin_proto_rawDescGZIP(), []int{14} } func (x *VTGate) GetHostname() string { @@ -1019,7 +1074,7 @@ type Workflow struct { func (x *Workflow) Reset() { *x = Workflow{} if protoimpl.UnsafeEnabled { - mi := &file_vtadmin_proto_msgTypes[14] + mi := &file_vtadmin_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1032,7 +1087,7 @@ func (x *Workflow) String() string { func (*Workflow) ProtoMessage() {} func (x *Workflow) ProtoReflect() protoreflect.Message { - mi := &file_vtadmin_proto_msgTypes[14] + mi := &file_vtadmin_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1045,7 +1100,7 @@ func (x *Workflow) ProtoReflect() protoreflect.Message { // Deprecated: Use Workflow.ProtoReflect.Descriptor instead. func (*Workflow) Descriptor() ([]byte, []int) { - return file_vtadmin_proto_rawDescGZIP(), []int{14} + return file_vtadmin_proto_rawDescGZIP(), []int{15} } func (x *Workflow) GetCluster() *Cluster { @@ -1069,32 +1124,32 @@ func (x *Workflow) GetWorkflow() *vtctldata.Workflow { return nil } -type CreateKeyspaceRequest struct { +type ApplySchemaRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Options *vtctldata.CreateKeyspaceRequest `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Request *vtctldata.ApplySchemaRequest `protobuf:"bytes,2,opt,name=request,proto3" json:"request,omitempty"` } -func (x *CreateKeyspaceRequest) Reset() { - *x = CreateKeyspaceRequest{} +func (x *ApplySchemaRequest) Reset() { + *x = ApplySchemaRequest{} if protoimpl.UnsafeEnabled { - mi := &file_vtadmin_proto_msgTypes[15] + mi := &file_vtadmin_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *CreateKeyspaceRequest) String() string { +func (x *ApplySchemaRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateKeyspaceRequest) ProtoMessage() {} +func (*ApplySchemaRequest) ProtoMessage() {} -func (x *CreateKeyspaceRequest) ProtoReflect() protoreflect.Message { - mi := &file_vtadmin_proto_msgTypes[15] +func (x *ApplySchemaRequest) ProtoReflect() protoreflect.Message { + mi := &file_vtadmin_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1105,83 +1160,36 @@ func (x *CreateKeyspaceRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateKeyspaceRequest.ProtoReflect.Descriptor instead. -func (*CreateKeyspaceRequest) Descriptor() ([]byte, []int) { - return file_vtadmin_proto_rawDescGZIP(), []int{15} +// Deprecated: Use ApplySchemaRequest.ProtoReflect.Descriptor instead. +func (*ApplySchemaRequest) Descriptor() ([]byte, []int) { + return file_vtadmin_proto_rawDescGZIP(), []int{16} } -func (x *CreateKeyspaceRequest) GetClusterId() string { +func (x *ApplySchemaRequest) GetClusterId() string { if x != nil { return x.ClusterId } return "" } -func (x *CreateKeyspaceRequest) GetOptions() *vtctldata.CreateKeyspaceRequest { - if x != nil { - return x.Options - } - return nil -} - -type CreateKeyspaceResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Keyspace *Keyspace `protobuf:"bytes,1,opt,name=keyspace,proto3" json:"keyspace,omitempty"` -} - -func (x *CreateKeyspaceResponse) Reset() { - *x = CreateKeyspaceResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_vtadmin_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CreateKeyspaceResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateKeyspaceResponse) ProtoMessage() {} - -func (x *CreateKeyspaceResponse) ProtoReflect() protoreflect.Message { - mi := &file_vtadmin_proto_msgTypes[16] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CreateKeyspaceResponse.ProtoReflect.Descriptor instead. -func (*CreateKeyspaceResponse) Descriptor() ([]byte, []int) { - return file_vtadmin_proto_rawDescGZIP(), []int{16} -} - -func (x *CreateKeyspaceResponse) GetKeyspace() *Keyspace { +func (x *ApplySchemaRequest) GetRequest() *vtctldata.ApplySchemaRequest { if x != nil { - return x.Keyspace + return x.Request } return nil } -type CreateShardRequest struct { +type CancelSchemaMigrationRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Options *vtctldata.CreateShardRequest `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Request *vtctldata.CancelSchemaMigrationRequest `protobuf:"bytes,2,opt,name=request,proto3" json:"request,omitempty"` } -func (x *CreateShardRequest) Reset() { - *x = CreateShardRequest{} +func (x *CancelSchemaMigrationRequest) Reset() { + *x = CancelSchemaMigrationRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1189,13 +1197,13 @@ func (x *CreateShardRequest) Reset() { } } -func (x *CreateShardRequest) String() string { +func (x *CancelSchemaMigrationRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*CreateShardRequest) ProtoMessage() {} +func (*CancelSchemaMigrationRequest) ProtoMessage() {} -func (x *CreateShardRequest) ProtoReflect() protoreflect.Message { +func (x *CancelSchemaMigrationRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1207,36 +1215,36 @@ func (x *CreateShardRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use CreateShardRequest.ProtoReflect.Descriptor instead. -func (*CreateShardRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use CancelSchemaMigrationRequest.ProtoReflect.Descriptor instead. +func (*CancelSchemaMigrationRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{17} } -func (x *CreateShardRequest) GetClusterId() string { +func (x *CancelSchemaMigrationRequest) GetClusterId() string { if x != nil { return x.ClusterId } return "" } -func (x *CreateShardRequest) GetOptions() *vtctldata.CreateShardRequest { +func (x *CancelSchemaMigrationRequest) GetRequest() *vtctldata.CancelSchemaMigrationRequest { if x != nil { - return x.Options + return x.Request } return nil } -type DeleteKeyspaceRequest struct { +type CleanupSchemaMigrationRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Options *vtctldata.DeleteKeyspaceRequest `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Request *vtctldata.CleanupSchemaMigrationRequest `protobuf:"bytes,2,opt,name=request,proto3" json:"request,omitempty"` } -func (x *DeleteKeyspaceRequest) Reset() { - *x = DeleteKeyspaceRequest{} +func (x *CleanupSchemaMigrationRequest) Reset() { + *x = CleanupSchemaMigrationRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1244,13 +1252,13 @@ func (x *DeleteKeyspaceRequest) Reset() { } } -func (x *DeleteKeyspaceRequest) String() string { +func (x *CleanupSchemaMigrationRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*DeleteKeyspaceRequest) ProtoMessage() {} +func (*CleanupSchemaMigrationRequest) ProtoMessage() {} -func (x *DeleteKeyspaceRequest) ProtoReflect() protoreflect.Message { +func (x *CleanupSchemaMigrationRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1262,36 +1270,36 @@ func (x *DeleteKeyspaceRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use DeleteKeyspaceRequest.ProtoReflect.Descriptor instead. -func (*DeleteKeyspaceRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use CleanupSchemaMigrationRequest.ProtoReflect.Descriptor instead. +func (*CleanupSchemaMigrationRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{18} } -func (x *DeleteKeyspaceRequest) GetClusterId() string { +func (x *CleanupSchemaMigrationRequest) GetClusterId() string { if x != nil { return x.ClusterId } return "" } -func (x *DeleteKeyspaceRequest) GetOptions() *vtctldata.DeleteKeyspaceRequest { +func (x *CleanupSchemaMigrationRequest) GetRequest() *vtctldata.CleanupSchemaMigrationRequest { if x != nil { - return x.Options + return x.Request } return nil } -type DeleteShardsRequest struct { +type CompleteSchemaMigrationRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Options *vtctldata.DeleteShardsRequest `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Request *vtctldata.CompleteSchemaMigrationRequest `protobuf:"bytes,2,opt,name=request,proto3" json:"request,omitempty"` } -func (x *DeleteShardsRequest) Reset() { - *x = DeleteShardsRequest{} +func (x *CompleteSchemaMigrationRequest) Reset() { + *x = CompleteSchemaMigrationRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1299,13 +1307,13 @@ func (x *DeleteShardsRequest) Reset() { } } -func (x *DeleteShardsRequest) String() string { +func (x *CompleteSchemaMigrationRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*DeleteShardsRequest) ProtoMessage() {} +func (*CompleteSchemaMigrationRequest) ProtoMessage() {} -func (x *DeleteShardsRequest) ProtoReflect() protoreflect.Message { +func (x *CompleteSchemaMigrationRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1317,37 +1325,36 @@ func (x *DeleteShardsRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use DeleteShardsRequest.ProtoReflect.Descriptor instead. -func (*DeleteShardsRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use CompleteSchemaMigrationRequest.ProtoReflect.Descriptor instead. +func (*CompleteSchemaMigrationRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{19} } -func (x *DeleteShardsRequest) GetClusterId() string { +func (x *CompleteSchemaMigrationRequest) GetClusterId() string { if x != nil { return x.ClusterId } return "" } -func (x *DeleteShardsRequest) GetOptions() *vtctldata.DeleteShardsRequest { +func (x *CompleteSchemaMigrationRequest) GetRequest() *vtctldata.CompleteSchemaMigrationRequest { if x != nil { - return x.Options + return x.Request } return nil } -type DeleteTabletRequest struct { +type CreateKeyspaceRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` - ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` - AllowPrimary bool `protobuf:"varint,3,opt,name=allow_primary,json=allowPrimary,proto3" json:"allow_primary,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Options *vtctldata.CreateKeyspaceRequest `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"` } -func (x *DeleteTabletRequest) Reset() { - *x = DeleteTabletRequest{} +func (x *CreateKeyspaceRequest) Reset() { + *x = CreateKeyspaceRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1355,13 +1362,13 @@ func (x *DeleteTabletRequest) Reset() { } } -func (x *DeleteTabletRequest) String() string { +func (x *CreateKeyspaceRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*DeleteTabletRequest) ProtoMessage() {} +func (*CreateKeyspaceRequest) ProtoMessage() {} -func (x *DeleteTabletRequest) ProtoReflect() protoreflect.Message { +func (x *CreateKeyspaceRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1373,43 +1380,35 @@ func (x *DeleteTabletRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use DeleteTabletRequest.ProtoReflect.Descriptor instead. -func (*DeleteTabletRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use CreateKeyspaceRequest.ProtoReflect.Descriptor instead. +func (*CreateKeyspaceRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{20} } -func (x *DeleteTabletRequest) GetAlias() *topodata.TabletAlias { +func (x *CreateKeyspaceRequest) GetClusterId() string { if x != nil { - return x.Alias + return x.ClusterId } - return nil + return "" } -func (x *DeleteTabletRequest) GetClusterIds() []string { +func (x *CreateKeyspaceRequest) GetOptions() *vtctldata.CreateKeyspaceRequest { if x != nil { - return x.ClusterIds + return x.Options } return nil } -func (x *DeleteTabletRequest) GetAllowPrimary() bool { - if x != nil { - return x.AllowPrimary - } - return false -} - -type DeleteTabletResponse struct { +type CreateKeyspaceResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - Cluster *Cluster `protobuf:"bytes,2,opt,name=cluster,proto3" json:"cluster,omitempty"` + Keyspace *Keyspace `protobuf:"bytes,1,opt,name=keyspace,proto3" json:"keyspace,omitempty"` } -func (x *DeleteTabletResponse) Reset() { - *x = DeleteTabletResponse{} +func (x *CreateKeyspaceResponse) Reset() { + *x = CreateKeyspaceResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1417,13 +1416,13 @@ func (x *DeleteTabletResponse) Reset() { } } -func (x *DeleteTabletResponse) String() string { +func (x *CreateKeyspaceResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*DeleteTabletResponse) ProtoMessage() {} +func (*CreateKeyspaceResponse) ProtoMessage() {} -func (x *DeleteTabletResponse) ProtoReflect() protoreflect.Message { +func (x *CreateKeyspaceResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1435,36 +1434,29 @@ func (x *DeleteTabletResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use DeleteTabletResponse.ProtoReflect.Descriptor instead. -func (*DeleteTabletResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use CreateKeyspaceResponse.ProtoReflect.Descriptor instead. +func (*CreateKeyspaceResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{21} } -func (x *DeleteTabletResponse) GetStatus() string { +func (x *CreateKeyspaceResponse) GetKeyspace() *Keyspace { if x != nil { - return x.Status + return x.Keyspace } - return "" + return nil } -func (x *DeleteTabletResponse) GetCluster() *Cluster { - if x != nil { - return x.Cluster - } - return nil -} - -type EmergencyFailoverShardRequest struct { +type CreateShardRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Options *vtctldata.EmergencyReparentShardRequest `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Options *vtctldata.CreateShardRequest `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"` } -func (x *EmergencyFailoverShardRequest) Reset() { - *x = EmergencyFailoverShardRequest{} +func (x *CreateShardRequest) Reset() { + *x = CreateShardRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1472,13 +1464,13 @@ func (x *EmergencyFailoverShardRequest) Reset() { } } -func (x *EmergencyFailoverShardRequest) String() string { +func (x *CreateShardRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*EmergencyFailoverShardRequest) ProtoMessage() {} +func (*CreateShardRequest) ProtoMessage() {} -func (x *EmergencyFailoverShardRequest) ProtoReflect() protoreflect.Message { +func (x *CreateShardRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1490,43 +1482,36 @@ func (x *EmergencyFailoverShardRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use EmergencyFailoverShardRequest.ProtoReflect.Descriptor instead. -func (*EmergencyFailoverShardRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use CreateShardRequest.ProtoReflect.Descriptor instead. +func (*CreateShardRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{22} } -func (x *EmergencyFailoverShardRequest) GetClusterId() string { +func (x *CreateShardRequest) GetClusterId() string { if x != nil { return x.ClusterId } return "" } -func (x *EmergencyFailoverShardRequest) GetOptions() *vtctldata.EmergencyReparentShardRequest { +func (x *CreateShardRequest) GetOptions() *vtctldata.CreateShardRequest { if x != nil { return x.Options } return nil } -type EmergencyFailoverShardResponse struct { +type DeleteKeyspaceRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Cluster *Cluster `protobuf:"bytes,1,opt,name=cluster,proto3" json:"cluster,omitempty"` - Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` - Shard string `protobuf:"bytes,3,opt,name=shard,proto3" json:"shard,omitempty"` - // PromotedPrimary is the tablet alias that was promoted to shard primary. - // If NewPrimary was set in the request options, then this will be the - // same tablet alias. Otherwise, it will be the alias of the tablet found - // to be most up-to-date in the shard. - PromotedPrimary *topodata.TabletAlias `protobuf:"bytes,4,opt,name=promoted_primary,json=promotedPrimary,proto3" json:"promoted_primary,omitempty"` - Events []*logutil.Event `protobuf:"bytes,5,rep,name=events,proto3" json:"events,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Options *vtctldata.DeleteKeyspaceRequest `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"` } -func (x *EmergencyFailoverShardResponse) Reset() { - *x = EmergencyFailoverShardResponse{} +func (x *DeleteKeyspaceRequest) Reset() { + *x = DeleteKeyspaceRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1534,13 +1519,13 @@ func (x *EmergencyFailoverShardResponse) Reset() { } } -func (x *EmergencyFailoverShardResponse) String() string { +func (x *DeleteKeyspaceRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*EmergencyFailoverShardResponse) ProtoMessage() {} +func (*DeleteKeyspaceRequest) ProtoMessage() {} -func (x *EmergencyFailoverShardResponse) ProtoReflect() protoreflect.Message { +func (x *DeleteKeyspaceRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1552,58 +1537,36 @@ func (x *EmergencyFailoverShardResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use EmergencyFailoverShardResponse.ProtoReflect.Descriptor instead. -func (*EmergencyFailoverShardResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use DeleteKeyspaceRequest.ProtoReflect.Descriptor instead. +func (*DeleteKeyspaceRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{23} } -func (x *EmergencyFailoverShardResponse) GetCluster() *Cluster { - if x != nil { - return x.Cluster - } - return nil -} - -func (x *EmergencyFailoverShardResponse) GetKeyspace() string { - if x != nil { - return x.Keyspace - } - return "" -} - -func (x *EmergencyFailoverShardResponse) GetShard() string { +func (x *DeleteKeyspaceRequest) GetClusterId() string { if x != nil { - return x.Shard + return x.ClusterId } return "" } -func (x *EmergencyFailoverShardResponse) GetPromotedPrimary() *topodata.TabletAlias { - if x != nil { - return x.PromotedPrimary - } - return nil -} - -func (x *EmergencyFailoverShardResponse) GetEvents() []*logutil.Event { +func (x *DeleteKeyspaceRequest) GetOptions() *vtctldata.DeleteKeyspaceRequest { if x != nil { - return x.Events + return x.Options } return nil } -type FindSchemaRequest struct { +type DeleteShardsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Table string `protobuf:"bytes,1,opt,name=table,proto3" json:"table,omitempty"` - ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` - TableSizeOptions *GetSchemaTableSizeOptions `protobuf:"bytes,3,opt,name=table_size_options,json=tableSizeOptions,proto3" json:"table_size_options,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Options *vtctldata.DeleteShardsRequest `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"` } -func (x *FindSchemaRequest) Reset() { - *x = FindSchemaRequest{} +func (x *DeleteShardsRequest) Reset() { + *x = DeleteShardsRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1611,13 +1574,13 @@ func (x *FindSchemaRequest) Reset() { } } -func (x *FindSchemaRequest) String() string { +func (x *DeleteShardsRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*FindSchemaRequest) ProtoMessage() {} +func (*DeleteShardsRequest) ProtoMessage() {} -func (x *FindSchemaRequest) ProtoReflect() protoreflect.Message { +func (x *DeleteShardsRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1629,56 +1592,37 @@ func (x *FindSchemaRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use FindSchemaRequest.ProtoReflect.Descriptor instead. -func (*FindSchemaRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use DeleteShardsRequest.ProtoReflect.Descriptor instead. +func (*DeleteShardsRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{24} } -func (x *FindSchemaRequest) GetTable() string { +func (x *DeleteShardsRequest) GetClusterId() string { if x != nil { - return x.Table + return x.ClusterId } return "" } -func (x *FindSchemaRequest) GetClusterIds() []string { - if x != nil { - return x.ClusterIds - } - return nil -} - -func (x *FindSchemaRequest) GetTableSizeOptions() *GetSchemaTableSizeOptions { +func (x *DeleteShardsRequest) GetOptions() *vtctldata.DeleteShardsRequest { if x != nil { - return x.TableSizeOptions + return x.Options } return nil } -type GetBackupsRequest struct { +type DeleteTabletRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` - // Keyspaces, if set, limits backups to just the specified keyspaces. - // Applies to all clusters in the request. - Keyspaces []string `protobuf:"bytes,2,rep,name=keyspaces,proto3" json:"keyspaces,omitempty"` - // KeyspaceShards, if set, limits backups to just the specified - // keyspace/shards. Applies to all clusters in the request. - // - // This field takes precedence over Keyspaces. If KeyspaceShards is set, - // Keyspaces is ignored. - KeyspaceShards []string `protobuf:"bytes,3,rep,name=keyspace_shards,json=keyspaceShards,proto3" json:"keyspace_shards,omitempty"` - // RequestOptions controls the per-shard request options when making - // GetBackups requests to vtctlds. Note that the Keyspace and Shard fields - // of this field are ignored; it is used only to specify Limit and Detailed - // fields. - RequestOptions *vtctldata.GetBackupsRequest `protobuf:"bytes,4,opt,name=request_options,json=requestOptions,proto3" json:"request_options,omitempty"` + Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` + ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + AllowPrimary bool `protobuf:"varint,3,opt,name=allow_primary,json=allowPrimary,proto3" json:"allow_primary,omitempty"` } -func (x *GetBackupsRequest) Reset() { - *x = GetBackupsRequest{} +func (x *DeleteTabletRequest) Reset() { + *x = DeleteTabletRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1686,13 +1630,13 @@ func (x *GetBackupsRequest) Reset() { } } -func (x *GetBackupsRequest) String() string { +func (x *DeleteTabletRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetBackupsRequest) ProtoMessage() {} +func (*DeleteTabletRequest) ProtoMessage() {} -func (x *GetBackupsRequest) ProtoReflect() protoreflect.Message { +func (x *DeleteTabletRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1704,49 +1648,43 @@ func (x *GetBackupsRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetBackupsRequest.ProtoReflect.Descriptor instead. -func (*GetBackupsRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use DeleteTabletRequest.ProtoReflect.Descriptor instead. +func (*DeleteTabletRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{25} } -func (x *GetBackupsRequest) GetClusterIds() []string { - if x != nil { - return x.ClusterIds - } - return nil -} - -func (x *GetBackupsRequest) GetKeyspaces() []string { +func (x *DeleteTabletRequest) GetAlias() *topodata.TabletAlias { if x != nil { - return x.Keyspaces + return x.Alias } return nil } -func (x *GetBackupsRequest) GetKeyspaceShards() []string { +func (x *DeleteTabletRequest) GetClusterIds() []string { if x != nil { - return x.KeyspaceShards + return x.ClusterIds } return nil } -func (x *GetBackupsRequest) GetRequestOptions() *vtctldata.GetBackupsRequest { +func (x *DeleteTabletRequest) GetAllowPrimary() bool { if x != nil { - return x.RequestOptions + return x.AllowPrimary } - return nil + return false } -type GetBackupsResponse struct { +type DeleteTabletResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Backups []*ClusterBackup `protobuf:"bytes,1,rep,name=backups,proto3" json:"backups,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` + Cluster *Cluster `protobuf:"bytes,2,opt,name=cluster,proto3" json:"cluster,omitempty"` } -func (x *GetBackupsResponse) Reset() { - *x = GetBackupsResponse{} +func (x *DeleteTabletResponse) Reset() { + *x = DeleteTabletResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1754,13 +1692,13 @@ func (x *GetBackupsResponse) Reset() { } } -func (x *GetBackupsResponse) String() string { +func (x *DeleteTabletResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetBackupsResponse) ProtoMessage() {} +func (*DeleteTabletResponse) ProtoMessage() {} -func (x *GetBackupsResponse) ProtoReflect() protoreflect.Message { +func (x *DeleteTabletResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1772,38 +1710,36 @@ func (x *GetBackupsResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetBackupsResponse.ProtoReflect.Descriptor instead. -func (*GetBackupsResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use DeleteTabletResponse.ProtoReflect.Descriptor instead. +func (*DeleteTabletResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{26} } -func (x *GetBackupsResponse) GetBackups() []*ClusterBackup { +func (x *DeleteTabletResponse) GetStatus() string { if x != nil { - return x.Backups + return x.Status + } + return "" +} + +func (x *DeleteTabletResponse) GetCluster() *Cluster { + if x != nil { + return x.Cluster } return nil } -type GetCellInfosRequest struct { +type EmergencyFailoverShardRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` - // Cells, if specified, limits the response to include only CellInfo objects - // with those names. If omitted, all CellInfo objects in each cluster are - // returned. - // - // Mutually-exclusive with NamesOnly. If both are set, this field takes - // precedence. - Cells []string `protobuf:"bytes,2,rep,name=cells,proto3" json:"cells,omitempty"` - // Return only the cell names in each cluster; the actual CellInfo objects - // will be empty. - NamesOnly bool `protobuf:"varint,3,opt,name=names_only,json=namesOnly,proto3" json:"names_only,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Options *vtctldata.EmergencyReparentShardRequest `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"` } -func (x *GetCellInfosRequest) Reset() { - *x = GetCellInfosRequest{} +func (x *EmergencyFailoverShardRequest) Reset() { + *x = EmergencyFailoverShardRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1811,13 +1747,13 @@ func (x *GetCellInfosRequest) Reset() { } } -func (x *GetCellInfosRequest) String() string { +func (x *EmergencyFailoverShardRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetCellInfosRequest) ProtoMessage() {} +func (*EmergencyFailoverShardRequest) ProtoMessage() {} -func (x *GetCellInfosRequest) ProtoReflect() protoreflect.Message { +func (x *EmergencyFailoverShardRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1829,42 +1765,43 @@ func (x *GetCellInfosRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetCellInfosRequest.ProtoReflect.Descriptor instead. -func (*GetCellInfosRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use EmergencyFailoverShardRequest.ProtoReflect.Descriptor instead. +func (*EmergencyFailoverShardRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{27} } -func (x *GetCellInfosRequest) GetClusterIds() []string { +func (x *EmergencyFailoverShardRequest) GetClusterId() string { if x != nil { - return x.ClusterIds + return x.ClusterId } - return nil + return "" } -func (x *GetCellInfosRequest) GetCells() []string { +func (x *EmergencyFailoverShardRequest) GetOptions() *vtctldata.EmergencyReparentShardRequest { if x != nil { - return x.Cells + return x.Options } return nil } -func (x *GetCellInfosRequest) GetNamesOnly() bool { - if x != nil { - return x.NamesOnly - } - return false -} - -type GetCellInfosResponse struct { +type EmergencyFailoverShardResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - CellInfos []*ClusterCellInfo `protobuf:"bytes,1,rep,name=cell_infos,json=cellInfos,proto3" json:"cell_infos,omitempty"` -} + Cluster *Cluster `protobuf:"bytes,1,opt,name=cluster,proto3" json:"cluster,omitempty"` + Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + Shard string `protobuf:"bytes,3,opt,name=shard,proto3" json:"shard,omitempty"` + // PromotedPrimary is the tablet alias that was promoted to shard primary. + // If NewPrimary was set in the request options, then this will be the + // same tablet alias. Otherwise, it will be the alias of the tablet found + // to be most up-to-date in the shard. + PromotedPrimary *topodata.TabletAlias `protobuf:"bytes,4,opt,name=promoted_primary,json=promotedPrimary,proto3" json:"promoted_primary,omitempty"` + Events []*logutil.Event `protobuf:"bytes,5,rep,name=events,proto3" json:"events,omitempty"` +} -func (x *GetCellInfosResponse) Reset() { - *x = GetCellInfosResponse{} +func (x *EmergencyFailoverShardResponse) Reset() { + *x = EmergencyFailoverShardResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1872,13 +1809,13 @@ func (x *GetCellInfosResponse) Reset() { } } -func (x *GetCellInfosResponse) String() string { +func (x *EmergencyFailoverShardResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetCellInfosResponse) ProtoMessage() {} +func (*EmergencyFailoverShardResponse) ProtoMessage() {} -func (x *GetCellInfosResponse) ProtoReflect() protoreflect.Message { +func (x *EmergencyFailoverShardResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1890,28 +1827,58 @@ func (x *GetCellInfosResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetCellInfosResponse.ProtoReflect.Descriptor instead. -func (*GetCellInfosResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use EmergencyFailoverShardResponse.ProtoReflect.Descriptor instead. +func (*EmergencyFailoverShardResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{28} } -func (x *GetCellInfosResponse) GetCellInfos() []*ClusterCellInfo { +func (x *EmergencyFailoverShardResponse) GetCluster() *Cluster { if x != nil { - return x.CellInfos + return x.Cluster } return nil } -type GetCellsAliasesRequest struct { +func (x *EmergencyFailoverShardResponse) GetKeyspace() string { + if x != nil { + return x.Keyspace + } + return "" +} + +func (x *EmergencyFailoverShardResponse) GetShard() string { + if x != nil { + return x.Shard + } + return "" +} + +func (x *EmergencyFailoverShardResponse) GetPromotedPrimary() *topodata.TabletAlias { + if x != nil { + return x.PromotedPrimary + } + return nil +} + +func (x *EmergencyFailoverShardResponse) GetEvents() []*logutil.Event { + if x != nil { + return x.Events + } + return nil +} + +type FindSchemaRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + Table string `protobuf:"bytes,1,opt,name=table,proto3" json:"table,omitempty"` + ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + TableSizeOptions *GetSchemaTableSizeOptions `protobuf:"bytes,3,opt,name=table_size_options,json=tableSizeOptions,proto3" json:"table_size_options,omitempty"` } -func (x *GetCellsAliasesRequest) Reset() { - *x = GetCellsAliasesRequest{} +func (x *FindSchemaRequest) Reset() { + *x = FindSchemaRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1919,13 +1886,13 @@ func (x *GetCellsAliasesRequest) Reset() { } } -func (x *GetCellsAliasesRequest) String() string { +func (x *FindSchemaRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetCellsAliasesRequest) ProtoMessage() {} +func (*FindSchemaRequest) ProtoMessage() {} -func (x *GetCellsAliasesRequest) ProtoReflect() protoreflect.Message { +func (x *FindSchemaRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1937,28 +1904,56 @@ func (x *GetCellsAliasesRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetCellsAliasesRequest.ProtoReflect.Descriptor instead. -func (*GetCellsAliasesRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use FindSchemaRequest.ProtoReflect.Descriptor instead. +func (*FindSchemaRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{29} } -func (x *GetCellsAliasesRequest) GetClusterIds() []string { +func (x *FindSchemaRequest) GetTable() string { + if x != nil { + return x.Table + } + return "" +} + +func (x *FindSchemaRequest) GetClusterIds() []string { if x != nil { return x.ClusterIds } return nil } -type GetCellsAliasesResponse struct { +func (x *FindSchemaRequest) GetTableSizeOptions() *GetSchemaTableSizeOptions { + if x != nil { + return x.TableSizeOptions + } + return nil +} + +type GetBackupsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Aliases []*ClusterCellsAliases `protobuf:"bytes,1,rep,name=aliases,proto3" json:"aliases,omitempty"` + ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + // Keyspaces, if set, limits backups to just the specified keyspaces. + // Applies to all clusters in the request. + Keyspaces []string `protobuf:"bytes,2,rep,name=keyspaces,proto3" json:"keyspaces,omitempty"` + // KeyspaceShards, if set, limits backups to just the specified + // keyspace/shards. Applies to all clusters in the request. + // + // This field takes precedence over Keyspaces. If KeyspaceShards is set, + // Keyspaces is ignored. + KeyspaceShards []string `protobuf:"bytes,3,rep,name=keyspace_shards,json=keyspaceShards,proto3" json:"keyspace_shards,omitempty"` + // RequestOptions controls the per-shard request options when making + // GetBackups requests to vtctlds. Note that the Keyspace and Shard fields + // of this field are ignored; it is used only to specify Limit and Detailed + // fields. + RequestOptions *vtctldata.GetBackupsRequest `protobuf:"bytes,4,opt,name=request_options,json=requestOptions,proto3" json:"request_options,omitempty"` } -func (x *GetCellsAliasesResponse) Reset() { - *x = GetCellsAliasesResponse{} +func (x *GetBackupsRequest) Reset() { + *x = GetBackupsRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1966,13 +1961,13 @@ func (x *GetCellsAliasesResponse) Reset() { } } -func (x *GetCellsAliasesResponse) String() string { +func (x *GetBackupsRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetCellsAliasesResponse) ProtoMessage() {} +func (*GetBackupsRequest) ProtoMessage() {} -func (x *GetCellsAliasesResponse) ProtoReflect() protoreflect.Message { +func (x *GetBackupsRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -1984,26 +1979,49 @@ func (x *GetCellsAliasesResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetCellsAliasesResponse.ProtoReflect.Descriptor instead. -func (*GetCellsAliasesResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use GetBackupsRequest.ProtoReflect.Descriptor instead. +func (*GetBackupsRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{30} } -func (x *GetCellsAliasesResponse) GetAliases() []*ClusterCellsAliases { +func (x *GetBackupsRequest) GetClusterIds() []string { if x != nil { - return x.Aliases + return x.ClusterIds } return nil } -type GetClustersRequest struct { +func (x *GetBackupsRequest) GetKeyspaces() []string { + if x != nil { + return x.Keyspaces + } + return nil +} + +func (x *GetBackupsRequest) GetKeyspaceShards() []string { + if x != nil { + return x.KeyspaceShards + } + return nil +} + +func (x *GetBackupsRequest) GetRequestOptions() *vtctldata.GetBackupsRequest { + if x != nil { + return x.RequestOptions + } + return nil +} + +type GetBackupsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + + Backups []*ClusterBackup `protobuf:"bytes,1,rep,name=backups,proto3" json:"backups,omitempty"` } -func (x *GetClustersRequest) Reset() { - *x = GetClustersRequest{} +func (x *GetBackupsResponse) Reset() { + *x = GetBackupsResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2011,13 +2029,13 @@ func (x *GetClustersRequest) Reset() { } } -func (x *GetClustersRequest) String() string { +func (x *GetBackupsResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetClustersRequest) ProtoMessage() {} +func (*GetBackupsResponse) ProtoMessage() {} -func (x *GetClustersRequest) ProtoReflect() protoreflect.Message { +func (x *GetBackupsResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2029,21 +2047,38 @@ func (x *GetClustersRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetClustersRequest.ProtoReflect.Descriptor instead. -func (*GetClustersRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetBackupsResponse.ProtoReflect.Descriptor instead. +func (*GetBackupsResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{31} } -type GetClustersResponse struct { +func (x *GetBackupsResponse) GetBackups() []*ClusterBackup { + if x != nil { + return x.Backups + } + return nil +} + +type GetCellInfosRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Clusters []*Cluster `protobuf:"bytes,1,rep,name=clusters,proto3" json:"clusters,omitempty"` + ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + // Cells, if specified, limits the response to include only CellInfo objects + // with those names. If omitted, all CellInfo objects in each cluster are + // returned. + // + // Mutually-exclusive with NamesOnly. If both are set, this field takes + // precedence. + Cells []string `protobuf:"bytes,2,rep,name=cells,proto3" json:"cells,omitempty"` + // Return only the cell names in each cluster; the actual CellInfo objects + // will be empty. + NamesOnly bool `protobuf:"varint,3,opt,name=names_only,json=namesOnly,proto3" json:"names_only,omitempty"` } -func (x *GetClustersResponse) Reset() { - *x = GetClustersResponse{} +func (x *GetCellInfosRequest) Reset() { + *x = GetCellInfosRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2051,13 +2086,13 @@ func (x *GetClustersResponse) Reset() { } } -func (x *GetClustersResponse) String() string { +func (x *GetCellInfosRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetClustersResponse) ProtoMessage() {} +func (*GetCellInfosRequest) ProtoMessage() {} -func (x *GetClustersResponse) ProtoReflect() protoreflect.Message { +func (x *GetCellInfosRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2069,29 +2104,42 @@ func (x *GetClustersResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetClustersResponse.ProtoReflect.Descriptor instead. -func (*GetClustersResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use GetCellInfosRequest.ProtoReflect.Descriptor instead. +func (*GetCellInfosRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{32} } -func (x *GetClustersResponse) GetClusters() []*Cluster { +func (x *GetCellInfosRequest) GetClusterIds() []string { if x != nil { - return x.Clusters + return x.ClusterIds } return nil } -type GetFullStatusRequest struct { +func (x *GetCellInfosRequest) GetCells() []string { + if x != nil { + return x.Cells + } + return nil +} + +func (x *GetCellInfosRequest) GetNamesOnly() bool { + if x != nil { + return x.NamesOnly + } + return false +} + +type GetCellInfosResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Alias *topodata.TabletAlias `protobuf:"bytes,2,opt,name=alias,proto3" json:"alias,omitempty"` + CellInfos []*ClusterCellInfo `protobuf:"bytes,1,rep,name=cell_infos,json=cellInfos,proto3" json:"cell_infos,omitempty"` } -func (x *GetFullStatusRequest) Reset() { - *x = GetFullStatusRequest{} +func (x *GetCellInfosResponse) Reset() { + *x = GetCellInfosResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2099,13 +2147,13 @@ func (x *GetFullStatusRequest) Reset() { } } -func (x *GetFullStatusRequest) String() string { +func (x *GetCellInfosResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetFullStatusRequest) ProtoMessage() {} +func (*GetCellInfosResponse) ProtoMessage() {} -func (x *GetFullStatusRequest) ProtoReflect() protoreflect.Message { +func (x *GetCellInfosResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2117,26 +2165,19 @@ func (x *GetFullStatusRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetFullStatusRequest.ProtoReflect.Descriptor instead. -func (*GetFullStatusRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetCellInfosResponse.ProtoReflect.Descriptor instead. +func (*GetCellInfosResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{33} } -func (x *GetFullStatusRequest) GetClusterId() string { - if x != nil { - return x.ClusterId - } - return "" -} - -func (x *GetFullStatusRequest) GetAlias() *topodata.TabletAlias { +func (x *GetCellInfosResponse) GetCellInfos() []*ClusterCellInfo { if x != nil { - return x.Alias + return x.CellInfos } return nil } -type GetGatesRequest struct { +type GetCellsAliasesRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -2144,8 +2185,8 @@ type GetGatesRequest struct { ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` } -func (x *GetGatesRequest) Reset() { - *x = GetGatesRequest{} +func (x *GetCellsAliasesRequest) Reset() { + *x = GetCellsAliasesRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2153,13 +2194,13 @@ func (x *GetGatesRequest) Reset() { } } -func (x *GetGatesRequest) String() string { +func (x *GetCellsAliasesRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetGatesRequest) ProtoMessage() {} +func (*GetCellsAliasesRequest) ProtoMessage() {} -func (x *GetGatesRequest) ProtoReflect() protoreflect.Message { +func (x *GetCellsAliasesRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2171,28 +2212,28 @@ func (x *GetGatesRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetGatesRequest.ProtoReflect.Descriptor instead. -func (*GetGatesRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetCellsAliasesRequest.ProtoReflect.Descriptor instead. +func (*GetCellsAliasesRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{34} } -func (x *GetGatesRequest) GetClusterIds() []string { +func (x *GetCellsAliasesRequest) GetClusterIds() []string { if x != nil { return x.ClusterIds } return nil } -type GetGatesResponse struct { +type GetCellsAliasesResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Gates []*VTGate `protobuf:"bytes,1,rep,name=gates,proto3" json:"gates,omitempty"` + Aliases []*ClusterCellsAliases `protobuf:"bytes,1,rep,name=aliases,proto3" json:"aliases,omitempty"` } -func (x *GetGatesResponse) Reset() { - *x = GetGatesResponse{} +func (x *GetCellsAliasesResponse) Reset() { + *x = GetCellsAliasesResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2200,13 +2241,13 @@ func (x *GetGatesResponse) Reset() { } } -func (x *GetGatesResponse) String() string { +func (x *GetCellsAliasesResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetGatesResponse) ProtoMessage() {} +func (*GetCellsAliasesResponse) ProtoMessage() {} -func (x *GetGatesResponse) ProtoReflect() protoreflect.Message { +func (x *GetCellsAliasesResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2218,29 +2259,26 @@ func (x *GetGatesResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetGatesResponse.ProtoReflect.Descriptor instead. -func (*GetGatesResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use GetCellsAliasesResponse.ProtoReflect.Descriptor instead. +func (*GetCellsAliasesResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{35} } -func (x *GetGatesResponse) GetGates() []*VTGate { +func (x *GetCellsAliasesResponse) GetAliases() []*ClusterCellsAliases { if x != nil { - return x.Gates + return x.Aliases } return nil } -type GetKeyspaceRequest struct { +type GetClustersRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` } -func (x *GetKeyspaceRequest) Reset() { - *x = GetKeyspaceRequest{} +func (x *GetClustersRequest) Reset() { + *x = GetClustersRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2248,13 +2286,13 @@ func (x *GetKeyspaceRequest) Reset() { } } -func (x *GetKeyspaceRequest) String() string { +func (x *GetClustersRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetKeyspaceRequest) ProtoMessage() {} +func (*GetClustersRequest) ProtoMessage() {} -func (x *GetKeyspaceRequest) ProtoReflect() protoreflect.Message { +func (x *GetClustersRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2266,35 +2304,21 @@ func (x *GetKeyspaceRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetKeyspaceRequest.ProtoReflect.Descriptor instead. -func (*GetKeyspaceRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetClustersRequest.ProtoReflect.Descriptor instead. +func (*GetClustersRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{36} } -func (x *GetKeyspaceRequest) GetClusterId() string { - if x != nil { - return x.ClusterId - } - return "" -} - -func (x *GetKeyspaceRequest) GetKeyspace() string { - if x != nil { - return x.Keyspace - } - return "" -} - -type GetKeyspacesRequest struct { +type GetClustersResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + Clusters []*Cluster `protobuf:"bytes,1,rep,name=clusters,proto3" json:"clusters,omitempty"` } -func (x *GetKeyspacesRequest) Reset() { - *x = GetKeyspacesRequest{} +func (x *GetClustersResponse) Reset() { + *x = GetClustersResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2302,13 +2326,13 @@ func (x *GetKeyspacesRequest) Reset() { } } -func (x *GetKeyspacesRequest) String() string { +func (x *GetClustersResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetKeyspacesRequest) ProtoMessage() {} +func (*GetClustersResponse) ProtoMessage() {} -func (x *GetKeyspacesRequest) ProtoReflect() protoreflect.Message { +func (x *GetClustersResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2320,28 +2344,29 @@ func (x *GetKeyspacesRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetKeyspacesRequest.ProtoReflect.Descriptor instead. -func (*GetKeyspacesRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetClustersResponse.ProtoReflect.Descriptor instead. +func (*GetClustersResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{37} } -func (x *GetKeyspacesRequest) GetClusterIds() []string { +func (x *GetClustersResponse) GetClusters() []*Cluster { if x != nil { - return x.ClusterIds + return x.Clusters } return nil } -type GetKeyspacesResponse struct { +type GetFullStatusRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Keyspaces []*Keyspace `protobuf:"bytes,1,rep,name=keyspaces,proto3" json:"keyspaces,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Alias *topodata.TabletAlias `protobuf:"bytes,2,opt,name=alias,proto3" json:"alias,omitempty"` } -func (x *GetKeyspacesResponse) Reset() { - *x = GetKeyspacesResponse{} +func (x *GetFullStatusRequest) Reset() { + *x = GetFullStatusRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2349,13 +2374,13 @@ func (x *GetKeyspacesResponse) Reset() { } } -func (x *GetKeyspacesResponse) String() string { +func (x *GetFullStatusRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetKeyspacesResponse) ProtoMessage() {} +func (*GetFullStatusRequest) ProtoMessage() {} -func (x *GetKeyspacesResponse) ProtoReflect() protoreflect.Message { +func (x *GetFullStatusRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2367,31 +2392,35 @@ func (x *GetKeyspacesResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetKeyspacesResponse.ProtoReflect.Descriptor instead. -func (*GetKeyspacesResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use GetFullStatusRequest.ProtoReflect.Descriptor instead. +func (*GetFullStatusRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{38} } -func (x *GetKeyspacesResponse) GetKeyspaces() []*Keyspace { +func (x *GetFullStatusRequest) GetClusterId() string { if x != nil { - return x.Keyspaces + return x.ClusterId + } + return "" +} + +func (x *GetFullStatusRequest) GetAlias() *topodata.TabletAlias { + if x != nil { + return x.Alias } return nil } -type GetSchemaRequest struct { +type GetGatesRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` - Table string `protobuf:"bytes,3,opt,name=table,proto3" json:"table,omitempty"` - TableSizeOptions *GetSchemaTableSizeOptions `protobuf:"bytes,4,opt,name=table_size_options,json=tableSizeOptions,proto3" json:"table_size_options,omitempty"` + ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` } -func (x *GetSchemaRequest) Reset() { - *x = GetSchemaRequest{} +func (x *GetGatesRequest) Reset() { + *x = GetGatesRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2399,13 +2428,13 @@ func (x *GetSchemaRequest) Reset() { } } -func (x *GetSchemaRequest) String() string { +func (x *GetGatesRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetSchemaRequest) ProtoMessage() {} +func (*GetGatesRequest) ProtoMessage() {} -func (x *GetSchemaRequest) ProtoReflect() protoreflect.Message { +func (x *GetGatesRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2417,50 +2446,28 @@ func (x *GetSchemaRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetSchemaRequest.ProtoReflect.Descriptor instead. -func (*GetSchemaRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetGatesRequest.ProtoReflect.Descriptor instead. +func (*GetGatesRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{39} } -func (x *GetSchemaRequest) GetClusterId() string { - if x != nil { - return x.ClusterId - } - return "" -} - -func (x *GetSchemaRequest) GetKeyspace() string { - if x != nil { - return x.Keyspace - } - return "" -} - -func (x *GetSchemaRequest) GetTable() string { - if x != nil { - return x.Table - } - return "" -} - -func (x *GetSchemaRequest) GetTableSizeOptions() *GetSchemaTableSizeOptions { +func (x *GetGatesRequest) GetClusterIds() []string { if x != nil { - return x.TableSizeOptions + return x.ClusterIds } return nil } -type GetSchemasRequest struct { +type GetGatesResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` - TableSizeOptions *GetSchemaTableSizeOptions `protobuf:"bytes,2,opt,name=table_size_options,json=tableSizeOptions,proto3" json:"table_size_options,omitempty"` + Gates []*VTGate `protobuf:"bytes,1,rep,name=gates,proto3" json:"gates,omitempty"` } -func (x *GetSchemasRequest) Reset() { - *x = GetSchemasRequest{} +func (x *GetGatesResponse) Reset() { + *x = GetGatesResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2468,13 +2475,13 @@ func (x *GetSchemasRequest) Reset() { } } -func (x *GetSchemasRequest) String() string { +func (x *GetGatesResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetSchemasRequest) ProtoMessage() {} +func (*GetGatesResponse) ProtoMessage() {} -func (x *GetSchemasRequest) ProtoReflect() protoreflect.Message { +func (x *GetGatesResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2486,35 +2493,29 @@ func (x *GetSchemasRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetSchemasRequest.ProtoReflect.Descriptor instead. -func (*GetSchemasRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetGatesResponse.ProtoReflect.Descriptor instead. +func (*GetGatesResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{40} } -func (x *GetSchemasRequest) GetClusterIds() []string { - if x != nil { - return x.ClusterIds - } - return nil -} - -func (x *GetSchemasRequest) GetTableSizeOptions() *GetSchemaTableSizeOptions { +func (x *GetGatesResponse) GetGates() []*VTGate { if x != nil { - return x.TableSizeOptions + return x.Gates } return nil } -type GetSchemasResponse struct { +type GetKeyspaceRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Schemas []*Schema `protobuf:"bytes,1,rep,name=schemas,proto3" json:"schemas,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` } -func (x *GetSchemasResponse) Reset() { - *x = GetSchemasResponse{} +func (x *GetKeyspaceRequest) Reset() { + *x = GetKeyspaceRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2522,13 +2523,13 @@ func (x *GetSchemasResponse) Reset() { } } -func (x *GetSchemasResponse) String() string { +func (x *GetKeyspaceRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetSchemasResponse) ProtoMessage() {} +func (*GetKeyspaceRequest) ProtoMessage() {} -func (x *GetSchemasResponse) ProtoReflect() protoreflect.Message { +func (x *GetKeyspaceRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2540,37 +2541,35 @@ func (x *GetSchemasResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetSchemasResponse.ProtoReflect.Descriptor instead. -func (*GetSchemasResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use GetKeyspaceRequest.ProtoReflect.Descriptor instead. +func (*GetKeyspaceRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{41} } -func (x *GetSchemasResponse) GetSchemas() []*Schema { +func (x *GetKeyspaceRequest) GetClusterId() string { if x != nil { - return x.Schemas + return x.ClusterId } - return nil + return "" } -type GetShardReplicationPositionsRequest struct { +func (x *GetKeyspaceRequest) GetKeyspace() string { + if x != nil { + return x.Keyspace + } + return "" +} + +type GetKeyspacesRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` - // Keyspaces, if set, limits replication positions to just the specified - // keyspaces. Applies to all clusters in the request. - Keyspaces []string `protobuf:"bytes,2,rep,name=keyspaces,proto3" json:"keyspaces,omitempty"` - // KeyspaceShards, if set, limits replicatin positions to just the specified - // keyspace/shards. Applies to all clusters in the request. - // - // This field takes precedence over Keyspaces. If KeyspaceShards is set, - // Keyspaces is ignored. - KeyspaceShards []string `protobuf:"bytes,3,rep,name=keyspace_shards,json=keyspaceShards,proto3" json:"keyspace_shards,omitempty"` } -func (x *GetShardReplicationPositionsRequest) Reset() { - *x = GetShardReplicationPositionsRequest{} +func (x *GetKeyspacesRequest) Reset() { + *x = GetKeyspacesRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2578,13 +2577,13 @@ func (x *GetShardReplicationPositionsRequest) Reset() { } } -func (x *GetShardReplicationPositionsRequest) String() string { +func (x *GetKeyspacesRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetShardReplicationPositionsRequest) ProtoMessage() {} +func (*GetKeyspacesRequest) ProtoMessage() {} -func (x *GetShardReplicationPositionsRequest) ProtoReflect() protoreflect.Message { +func (x *GetKeyspacesRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2596,42 +2595,28 @@ func (x *GetShardReplicationPositionsRequest) ProtoReflect() protoreflect.Messag return mi.MessageOf(x) } -// Deprecated: Use GetShardReplicationPositionsRequest.ProtoReflect.Descriptor instead. -func (*GetShardReplicationPositionsRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetKeyspacesRequest.ProtoReflect.Descriptor instead. +func (*GetKeyspacesRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{42} } -func (x *GetShardReplicationPositionsRequest) GetClusterIds() []string { +func (x *GetKeyspacesRequest) GetClusterIds() []string { if x != nil { return x.ClusterIds } return nil } -func (x *GetShardReplicationPositionsRequest) GetKeyspaces() []string { - if x != nil { - return x.Keyspaces - } - return nil -} - -func (x *GetShardReplicationPositionsRequest) GetKeyspaceShards() []string { - if x != nil { - return x.KeyspaceShards - } - return nil -} - -type GetShardReplicationPositionsResponse struct { +type GetKeyspacesResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ReplicationPositions []*ClusterShardReplicationPosition `protobuf:"bytes,1,rep,name=replication_positions,json=replicationPositions,proto3" json:"replication_positions,omitempty"` + Keyspaces []*Keyspace `protobuf:"bytes,1,rep,name=keyspaces,proto3" json:"keyspaces,omitempty"` } -func (x *GetShardReplicationPositionsResponse) Reset() { - *x = GetShardReplicationPositionsResponse{} +func (x *GetKeyspacesResponse) Reset() { + *x = GetKeyspacesResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2639,13 +2624,13 @@ func (x *GetShardReplicationPositionsResponse) Reset() { } } -func (x *GetShardReplicationPositionsResponse) String() string { +func (x *GetKeyspacesResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetShardReplicationPositionsResponse) ProtoMessage() {} +func (*GetKeyspacesResponse) ProtoMessage() {} -func (x *GetShardReplicationPositionsResponse) ProtoReflect() protoreflect.Message { +func (x *GetKeyspacesResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2657,32 +2642,31 @@ func (x *GetShardReplicationPositionsResponse) ProtoReflect() protoreflect.Messa return mi.MessageOf(x) } -// Deprecated: Use GetShardReplicationPositionsResponse.ProtoReflect.Descriptor instead. -func (*GetShardReplicationPositionsResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use GetKeyspacesResponse.ProtoReflect.Descriptor instead. +func (*GetKeyspacesResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{43} } -func (x *GetShardReplicationPositionsResponse) GetReplicationPositions() []*ClusterShardReplicationPosition { +func (x *GetKeyspacesResponse) GetKeyspaces() []*Keyspace { if x != nil { - return x.ReplicationPositions + return x.Keyspaces } return nil } -type GetSrvKeyspaceRequest struct { +type GetSchemaRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` - // Cells is a list of cells to lookup a SrvKeyspace for. Leaving this empty is - // equivalent to specifying all cells in the topo. - Cells []string `protobuf:"bytes,3,rep,name=cells,proto3" json:"cells,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + Table string `protobuf:"bytes,3,opt,name=table,proto3" json:"table,omitempty"` + TableSizeOptions *GetSchemaTableSizeOptions `protobuf:"bytes,4,opt,name=table_size_options,json=tableSizeOptions,proto3" json:"table_size_options,omitempty"` } -func (x *GetSrvKeyspaceRequest) Reset() { - *x = GetSrvKeyspaceRequest{} +func (x *GetSchemaRequest) Reset() { + *x = GetSchemaRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2690,13 +2674,13 @@ func (x *GetSrvKeyspaceRequest) Reset() { } } -func (x *GetSrvKeyspaceRequest) String() string { +func (x *GetSchemaRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetSrvKeyspaceRequest) ProtoMessage() {} +func (*GetSchemaRequest) ProtoMessage() {} -func (x *GetSrvKeyspaceRequest) ProtoReflect() protoreflect.Message { +func (x *GetSchemaRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2708,46 +2692,50 @@ func (x *GetSrvKeyspaceRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetSrvKeyspaceRequest.ProtoReflect.Descriptor instead. -func (*GetSrvKeyspaceRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetSchemaRequest.ProtoReflect.Descriptor instead. +func (*GetSchemaRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{44} } -func (x *GetSrvKeyspaceRequest) GetClusterId() string { +func (x *GetSchemaRequest) GetClusterId() string { if x != nil { return x.ClusterId } return "" } -func (x *GetSrvKeyspaceRequest) GetKeyspace() string { +func (x *GetSchemaRequest) GetKeyspace() string { if x != nil { return x.Keyspace } return "" } -func (x *GetSrvKeyspaceRequest) GetCells() []string { +func (x *GetSchemaRequest) GetTable() string { if x != nil { - return x.Cells + return x.Table + } + return "" +} + +func (x *GetSchemaRequest) GetTableSizeOptions() *GetSchemaTableSizeOptions { + if x != nil { + return x.TableSizeOptions } return nil } -type GetSrvKeyspacesRequest struct { +type GetSchemasRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // An optional list of cluster IDs to filter specific clusters - ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` - // Cells is a list of cells to lookup a SrvKeyspace for. Leaving this empty is - // equivalent to specifying all cells in the topo. - Cells []string `protobuf:"bytes,2,rep,name=cells,proto3" json:"cells,omitempty"` + ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + TableSizeOptions *GetSchemaTableSizeOptions `protobuf:"bytes,2,opt,name=table_size_options,json=tableSizeOptions,proto3" json:"table_size_options,omitempty"` } -func (x *GetSrvKeyspacesRequest) Reset() { - *x = GetSrvKeyspacesRequest{} +func (x *GetSchemasRequest) Reset() { + *x = GetSchemasRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2755,13 +2743,13 @@ func (x *GetSrvKeyspacesRequest) Reset() { } } -func (x *GetSrvKeyspacesRequest) String() string { +func (x *GetSchemasRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetSrvKeyspacesRequest) ProtoMessage() {} +func (*GetSchemasRequest) ProtoMessage() {} -func (x *GetSrvKeyspacesRequest) ProtoReflect() protoreflect.Message { +func (x *GetSchemasRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2773,36 +2761,35 @@ func (x *GetSrvKeyspacesRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetSrvKeyspacesRequest.ProtoReflect.Descriptor instead. -func (*GetSrvKeyspacesRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetSchemasRequest.ProtoReflect.Descriptor instead. +func (*GetSchemasRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{45} } -func (x *GetSrvKeyspacesRequest) GetClusterIds() []string { +func (x *GetSchemasRequest) GetClusterIds() []string { if x != nil { return x.ClusterIds } return nil } -func (x *GetSrvKeyspacesRequest) GetCells() []string { +func (x *GetSchemasRequest) GetTableSizeOptions() *GetSchemaTableSizeOptions { if x != nil { - return x.Cells + return x.TableSizeOptions } return nil } -type GetSrvKeyspacesResponse struct { +type GetSchemasResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // GetSrvKeyspaces responses for each keyspace - SrvKeyspaces map[string]*vtctldata.GetSrvKeyspacesResponse `protobuf:"bytes,1,rep,name=srv_keyspaces,json=srvKeyspaces,proto3" json:"srv_keyspaces,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Schemas []*Schema `protobuf:"bytes,1,rep,name=schemas,proto3" json:"schemas,omitempty"` } -func (x *GetSrvKeyspacesResponse) Reset() { - *x = GetSrvKeyspacesResponse{} +func (x *GetSchemasResponse) Reset() { + *x = GetSchemasResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2810,13 +2797,13 @@ func (x *GetSrvKeyspacesResponse) Reset() { } } -func (x *GetSrvKeyspacesResponse) String() string { +func (x *GetSchemasResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetSrvKeyspacesResponse) ProtoMessage() {} +func (*GetSchemasResponse) ProtoMessage() {} -func (x *GetSrvKeyspacesResponse) ProtoReflect() protoreflect.Message { +func (x *GetSchemasResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2828,29 +2815,28 @@ func (x *GetSrvKeyspacesResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetSrvKeyspacesResponse.ProtoReflect.Descriptor instead. -func (*GetSrvKeyspacesResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use GetSchemasResponse.ProtoReflect.Descriptor instead. +func (*GetSchemasResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{46} } -func (x *GetSrvKeyspacesResponse) GetSrvKeyspaces() map[string]*vtctldata.GetSrvKeyspacesResponse { +func (x *GetSchemasResponse) GetSchemas() []*Schema { if x != nil { - return x.SrvKeyspaces + return x.Schemas } return nil } -type GetSrvVSchemaRequest struct { +type GetSchemaMigrationsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Cell string `protobuf:"bytes,2,opt,name=cell,proto3" json:"cell,omitempty"` + ClusterRequests []*GetSchemaMigrationsRequest_ClusterRequest `protobuf:"bytes,1,rep,name=cluster_requests,json=clusterRequests,proto3" json:"cluster_requests,omitempty"` } -func (x *GetSrvVSchemaRequest) Reset() { - *x = GetSrvVSchemaRequest{} +func (x *GetSchemaMigrationsRequest) Reset() { + *x = GetSchemaMigrationsRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2858,13 +2844,13 @@ func (x *GetSrvVSchemaRequest) Reset() { } } -func (x *GetSrvVSchemaRequest) String() string { +func (x *GetSchemaMigrationsRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetSrvVSchemaRequest) ProtoMessage() {} +func (*GetSchemaMigrationsRequest) ProtoMessage() {} -func (x *GetSrvVSchemaRequest) ProtoReflect() protoreflect.Message { +func (x *GetSchemaMigrationsRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2876,36 +2862,28 @@ func (x *GetSrvVSchemaRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetSrvVSchemaRequest.ProtoReflect.Descriptor instead. -func (*GetSrvVSchemaRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetSchemaMigrationsRequest.ProtoReflect.Descriptor instead. +func (*GetSchemaMigrationsRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{47} } -func (x *GetSrvVSchemaRequest) GetClusterId() string { - if x != nil { - return x.ClusterId - } - return "" -} - -func (x *GetSrvVSchemaRequest) GetCell() string { +func (x *GetSchemaMigrationsRequest) GetClusterRequests() []*GetSchemaMigrationsRequest_ClusterRequest { if x != nil { - return x.Cell + return x.ClusterRequests } - return "" + return nil } -type GetSrvVSchemasRequest struct { +type GetSchemaMigrationsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` - Cells []string `protobuf:"bytes,2,rep,name=cells,proto3" json:"cells,omitempty"` + SchemaMigrations []*SchemaMigration `protobuf:"bytes,1,rep,name=schema_migrations,json=schemaMigrations,proto3" json:"schema_migrations,omitempty"` } -func (x *GetSrvVSchemasRequest) Reset() { - *x = GetSrvVSchemasRequest{} +func (x *GetSchemaMigrationsResponse) Reset() { + *x = GetSchemaMigrationsResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2913,13 +2891,13 @@ func (x *GetSrvVSchemasRequest) Reset() { } } -func (x *GetSrvVSchemasRequest) String() string { +func (x *GetSchemaMigrationsResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetSrvVSchemasRequest) ProtoMessage() {} +func (*GetSchemaMigrationsResponse) ProtoMessage() {} -func (x *GetSrvVSchemasRequest) ProtoReflect() protoreflect.Message { +func (x *GetSchemaMigrationsResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2931,35 +2909,37 @@ func (x *GetSrvVSchemasRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetSrvVSchemasRequest.ProtoReflect.Descriptor instead. -func (*GetSrvVSchemasRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetSchemaMigrationsResponse.ProtoReflect.Descriptor instead. +func (*GetSchemaMigrationsResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{48} } -func (x *GetSrvVSchemasRequest) GetClusterIds() []string { - if x != nil { - return x.ClusterIds - } - return nil -} - -func (x *GetSrvVSchemasRequest) GetCells() []string { +func (x *GetSchemaMigrationsResponse) GetSchemaMigrations() []*SchemaMigration { if x != nil { - return x.Cells + return x.SchemaMigrations } return nil } -type GetSrvVSchemasResponse struct { +type GetShardReplicationPositionsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - SrvVSchemas []*SrvVSchema `protobuf:"bytes,1,rep,name=srv_v_schemas,json=srvVSchemas,proto3" json:"srv_v_schemas,omitempty"` + ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + // Keyspaces, if set, limits replication positions to just the specified + // keyspaces. Applies to all clusters in the request. + Keyspaces []string `protobuf:"bytes,2,rep,name=keyspaces,proto3" json:"keyspaces,omitempty"` + // KeyspaceShards, if set, limits replicatin positions to just the specified + // keyspace/shards. Applies to all clusters in the request. + // + // This field takes precedence over Keyspaces. If KeyspaceShards is set, + // Keyspaces is ignored. + KeyspaceShards []string `protobuf:"bytes,3,rep,name=keyspace_shards,json=keyspaceShards,proto3" json:"keyspace_shards,omitempty"` } -func (x *GetSrvVSchemasResponse) Reset() { - *x = GetSrvVSchemasResponse{} +func (x *GetShardReplicationPositionsRequest) Reset() { + *x = GetShardReplicationPositionsRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2967,13 +2947,13 @@ func (x *GetSrvVSchemasResponse) Reset() { } } -func (x *GetSrvVSchemasResponse) String() string { +func (x *GetShardReplicationPositionsRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetSrvVSchemasResponse) ProtoMessage() {} +func (*GetShardReplicationPositionsRequest) ProtoMessage() {} -func (x *GetSrvVSchemasResponse) ProtoReflect() protoreflect.Message { +func (x *GetShardReplicationPositionsRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2985,29 +2965,42 @@ func (x *GetSrvVSchemasResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetSrvVSchemasResponse.ProtoReflect.Descriptor instead. -func (*GetSrvVSchemasResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use GetShardReplicationPositionsRequest.ProtoReflect.Descriptor instead. +func (*GetShardReplicationPositionsRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{49} } -func (x *GetSrvVSchemasResponse) GetSrvVSchemas() []*SrvVSchema { +func (x *GetShardReplicationPositionsRequest) GetClusterIds() []string { if x != nil { - return x.SrvVSchemas + return x.ClusterIds } return nil } -type GetSchemaTableSizeOptions struct { +func (x *GetShardReplicationPositionsRequest) GetKeyspaces() []string { + if x != nil { + return x.Keyspaces + } + return nil +} + +func (x *GetShardReplicationPositionsRequest) GetKeyspaceShards() []string { + if x != nil { + return x.KeyspaceShards + } + return nil +} + +type GetShardReplicationPositionsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - AggregateSizes bool `protobuf:"varint,1,opt,name=aggregate_sizes,json=aggregateSizes,proto3" json:"aggregate_sizes,omitempty"` - IncludeNonServingShards bool `protobuf:"varint,2,opt,name=include_non_serving_shards,json=includeNonServingShards,proto3" json:"include_non_serving_shards,omitempty"` + ReplicationPositions []*ClusterShardReplicationPosition `protobuf:"bytes,1,rep,name=replication_positions,json=replicationPositions,proto3" json:"replication_positions,omitempty"` } -func (x *GetSchemaTableSizeOptions) Reset() { - *x = GetSchemaTableSizeOptions{} +func (x *GetShardReplicationPositionsResponse) Reset() { + *x = GetShardReplicationPositionsResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3015,13 +3008,13 @@ func (x *GetSchemaTableSizeOptions) Reset() { } } -func (x *GetSchemaTableSizeOptions) String() string { +func (x *GetShardReplicationPositionsResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetSchemaTableSizeOptions) ProtoMessage() {} +func (*GetShardReplicationPositionsResponse) ProtoMessage() {} -func (x *GetSchemaTableSizeOptions) ProtoReflect() protoreflect.Message { +func (x *GetShardReplicationPositionsResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3033,40 +3026,32 @@ func (x *GetSchemaTableSizeOptions) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetSchemaTableSizeOptions.ProtoReflect.Descriptor instead. -func (*GetSchemaTableSizeOptions) Descriptor() ([]byte, []int) { +// Deprecated: Use GetShardReplicationPositionsResponse.ProtoReflect.Descriptor instead. +func (*GetShardReplicationPositionsResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{50} } -func (x *GetSchemaTableSizeOptions) GetAggregateSizes() bool { - if x != nil { - return x.AggregateSizes - } - return false -} - -func (x *GetSchemaTableSizeOptions) GetIncludeNonServingShards() bool { +func (x *GetShardReplicationPositionsResponse) GetReplicationPositions() []*ClusterShardReplicationPosition { if x != nil { - return x.IncludeNonServingShards + return x.ReplicationPositions } - return false + return nil } -type GetTabletRequest struct { +type GetSrvKeyspaceRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // Unique (per cluster) tablet alias. - Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` - // ClusterIDs is an optional parameter to narrow the scope of the search, if - // the caller knows which cluster the tablet may be in, or, to disambiguate - // if multiple clusters have a tablet with the same hostname. - ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + // Cells is a list of cells to lookup a SrvKeyspace for. Leaving this empty is + // equivalent to specifying all cells in the topo. + Cells []string `protobuf:"bytes,3,rep,name=cells,proto3" json:"cells,omitempty"` } -func (x *GetTabletRequest) Reset() { - *x = GetTabletRequest{} +func (x *GetSrvKeyspaceRequest) Reset() { + *x = GetSrvKeyspaceRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3074,13 +3059,13 @@ func (x *GetTabletRequest) Reset() { } } -func (x *GetTabletRequest) String() string { +func (x *GetSrvKeyspaceRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetTabletRequest) ProtoMessage() {} +func (*GetSrvKeyspaceRequest) ProtoMessage() {} -func (x *GetTabletRequest) ProtoReflect() protoreflect.Message { +func (x *GetSrvKeyspaceRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3092,35 +3077,46 @@ func (x *GetTabletRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetTabletRequest.ProtoReflect.Descriptor instead. -func (*GetTabletRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetSrvKeyspaceRequest.ProtoReflect.Descriptor instead. +func (*GetSrvKeyspaceRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{51} } -func (x *GetTabletRequest) GetAlias() *topodata.TabletAlias { +func (x *GetSrvKeyspaceRequest) GetClusterId() string { if x != nil { - return x.Alias + return x.ClusterId } - return nil + return "" } -func (x *GetTabletRequest) GetClusterIds() []string { +func (x *GetSrvKeyspaceRequest) GetKeyspace() string { if x != nil { - return x.ClusterIds + return x.Keyspace + } + return "" +} + +func (x *GetSrvKeyspaceRequest) GetCells() []string { + if x != nil { + return x.Cells } return nil } -type GetTabletsRequest struct { +type GetSrvKeyspacesRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + // An optional list of cluster IDs to filter specific clusters ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + // Cells is a list of cells to lookup a SrvKeyspace for. Leaving this empty is + // equivalent to specifying all cells in the topo. + Cells []string `protobuf:"bytes,2,rep,name=cells,proto3" json:"cells,omitempty"` } -func (x *GetTabletsRequest) Reset() { - *x = GetTabletsRequest{} +func (x *GetSrvKeyspacesRequest) Reset() { + *x = GetSrvKeyspacesRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3128,13 +3124,13 @@ func (x *GetTabletsRequest) Reset() { } } -func (x *GetTabletsRequest) String() string { +func (x *GetSrvKeyspacesRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetTabletsRequest) ProtoMessage() {} +func (*GetSrvKeyspacesRequest) ProtoMessage() {} -func (x *GetTabletsRequest) ProtoReflect() protoreflect.Message { +func (x *GetSrvKeyspacesRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3146,28 +3142,36 @@ func (x *GetTabletsRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetTabletsRequest.ProtoReflect.Descriptor instead. -func (*GetTabletsRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetSrvKeyspacesRequest.ProtoReflect.Descriptor instead. +func (*GetSrvKeyspacesRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{52} } -func (x *GetTabletsRequest) GetClusterIds() []string { +func (x *GetSrvKeyspacesRequest) GetClusterIds() []string { if x != nil { return x.ClusterIds } return nil } -type GetTabletsResponse struct { +func (x *GetSrvKeyspacesRequest) GetCells() []string { + if x != nil { + return x.Cells + } + return nil +} + +type GetSrvKeyspacesResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Tablets []*Tablet `protobuf:"bytes,1,rep,name=tablets,proto3" json:"tablets,omitempty"` + // GetSrvKeyspaces responses for each keyspace + SrvKeyspaces map[string]*vtctldata.GetSrvKeyspacesResponse `protobuf:"bytes,1,rep,name=srv_keyspaces,json=srvKeyspaces,proto3" json:"srv_keyspaces,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } -func (x *GetTabletsResponse) Reset() { - *x = GetTabletsResponse{} +func (x *GetSrvKeyspacesResponse) Reset() { + *x = GetSrvKeyspacesResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3175,13 +3179,13 @@ func (x *GetTabletsResponse) Reset() { } } -func (x *GetTabletsResponse) String() string { +func (x *GetSrvKeyspacesResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetTabletsResponse) ProtoMessage() {} +func (*GetSrvKeyspacesResponse) ProtoMessage() {} -func (x *GetTabletsResponse) ProtoReflect() protoreflect.Message { +func (x *GetSrvKeyspacesResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3193,29 +3197,29 @@ func (x *GetTabletsResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetTabletsResponse.ProtoReflect.Descriptor instead. -func (*GetTabletsResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use GetSrvKeyspacesResponse.ProtoReflect.Descriptor instead. +func (*GetSrvKeyspacesResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{53} } -func (x *GetTabletsResponse) GetTablets() []*Tablet { +func (x *GetSrvKeyspacesResponse) GetSrvKeyspaces() map[string]*vtctldata.GetSrvKeyspacesResponse { if x != nil { - return x.Tablets + return x.SrvKeyspaces } return nil } -type GetTopologyPathRequest struct { +type GetSrvVSchemaRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"` + Cell string `protobuf:"bytes,2,opt,name=cell,proto3" json:"cell,omitempty"` } -func (x *GetTopologyPathRequest) Reset() { - *x = GetTopologyPathRequest{} +func (x *GetSrvVSchemaRequest) Reset() { + *x = GetSrvVSchemaRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3223,13 +3227,13 @@ func (x *GetTopologyPathRequest) Reset() { } } -func (x *GetTopologyPathRequest) String() string { +func (x *GetSrvVSchemaRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetTopologyPathRequest) ProtoMessage() {} +func (*GetSrvVSchemaRequest) ProtoMessage() {} -func (x *GetTopologyPathRequest) ProtoReflect() protoreflect.Message { +func (x *GetSrvVSchemaRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3241,36 +3245,36 @@ func (x *GetTopologyPathRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetTopologyPathRequest.ProtoReflect.Descriptor instead. -func (*GetTopologyPathRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetSrvVSchemaRequest.ProtoReflect.Descriptor instead. +func (*GetSrvVSchemaRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{54} } -func (x *GetTopologyPathRequest) GetClusterId() string { +func (x *GetSrvVSchemaRequest) GetClusterId() string { if x != nil { return x.ClusterId } return "" } -func (x *GetTopologyPathRequest) GetPath() string { +func (x *GetSrvVSchemaRequest) GetCell() string { if x != nil { - return x.Path + return x.Cell } return "" } -type GetVSchemaRequest struct { +type GetSrvVSchemasRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + Cells []string `protobuf:"bytes,2,rep,name=cells,proto3" json:"cells,omitempty"` } -func (x *GetVSchemaRequest) Reset() { - *x = GetVSchemaRequest{} +func (x *GetSrvVSchemasRequest) Reset() { + *x = GetSrvVSchemasRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3278,13 +3282,13 @@ func (x *GetVSchemaRequest) Reset() { } } -func (x *GetVSchemaRequest) String() string { +func (x *GetSrvVSchemasRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetVSchemaRequest) ProtoMessage() {} +func (*GetSrvVSchemasRequest) ProtoMessage() {} -func (x *GetVSchemaRequest) ProtoReflect() protoreflect.Message { +func (x *GetSrvVSchemasRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3296,35 +3300,35 @@ func (x *GetVSchemaRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetVSchemaRequest.ProtoReflect.Descriptor instead. -func (*GetVSchemaRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetSrvVSchemasRequest.ProtoReflect.Descriptor instead. +func (*GetSrvVSchemasRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{55} } -func (x *GetVSchemaRequest) GetClusterId() string { +func (x *GetSrvVSchemasRequest) GetClusterIds() []string { if x != nil { - return x.ClusterId + return x.ClusterIds } - return "" + return nil } -func (x *GetVSchemaRequest) GetKeyspace() string { +func (x *GetSrvVSchemasRequest) GetCells() []string { if x != nil { - return x.Keyspace + return x.Cells } - return "" + return nil } -type GetVSchemasRequest struct { +type GetSrvVSchemasResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + SrvVSchemas []*SrvVSchema `protobuf:"bytes,1,rep,name=srv_v_schemas,json=srvVSchemas,proto3" json:"srv_v_schemas,omitempty"` } -func (x *GetVSchemasRequest) Reset() { - *x = GetVSchemasRequest{} +func (x *GetSrvVSchemasResponse) Reset() { + *x = GetSrvVSchemasResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3332,13 +3336,13 @@ func (x *GetVSchemasRequest) Reset() { } } -func (x *GetVSchemasRequest) String() string { +func (x *GetSrvVSchemasResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetVSchemasRequest) ProtoMessage() {} +func (*GetSrvVSchemasResponse) ProtoMessage() {} -func (x *GetVSchemasRequest) ProtoReflect() protoreflect.Message { +func (x *GetSrvVSchemasResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3350,28 +3354,29 @@ func (x *GetVSchemasRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetVSchemasRequest.ProtoReflect.Descriptor instead. -func (*GetVSchemasRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetSrvVSchemasResponse.ProtoReflect.Descriptor instead. +func (*GetSrvVSchemasResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{56} } -func (x *GetVSchemasRequest) GetClusterIds() []string { +func (x *GetSrvVSchemasResponse) GetSrvVSchemas() []*SrvVSchema { if x != nil { - return x.ClusterIds + return x.SrvVSchemas } return nil } -type GetVSchemasResponse struct { +type GetSchemaTableSizeOptions struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - VSchemas []*VSchema `protobuf:"bytes,1,rep,name=v_schemas,json=vSchemas,proto3" json:"v_schemas,omitempty"` + AggregateSizes bool `protobuf:"varint,1,opt,name=aggregate_sizes,json=aggregateSizes,proto3" json:"aggregate_sizes,omitempty"` + IncludeNonServingShards bool `protobuf:"varint,2,opt,name=include_non_serving_shards,json=includeNonServingShards,proto3" json:"include_non_serving_shards,omitempty"` } -func (x *GetVSchemasResponse) Reset() { - *x = GetVSchemasResponse{} +func (x *GetSchemaTableSizeOptions) Reset() { + *x = GetSchemaTableSizeOptions{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3379,13 +3384,13 @@ func (x *GetVSchemasResponse) Reset() { } } -func (x *GetVSchemasResponse) String() string { +func (x *GetSchemaTableSizeOptions) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetVSchemasResponse) ProtoMessage() {} +func (*GetSchemaTableSizeOptions) ProtoMessage() {} -func (x *GetVSchemasResponse) ProtoReflect() protoreflect.Message { +func (x *GetSchemaTableSizeOptions) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3397,28 +3402,40 @@ func (x *GetVSchemasResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetVSchemasResponse.ProtoReflect.Descriptor instead. -func (*GetVSchemasResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use GetSchemaTableSizeOptions.ProtoReflect.Descriptor instead. +func (*GetSchemaTableSizeOptions) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{57} } -func (x *GetVSchemasResponse) GetVSchemas() []*VSchema { +func (x *GetSchemaTableSizeOptions) GetAggregateSizes() bool { if x != nil { - return x.VSchemas + return x.AggregateSizes } - return nil + return false } -type GetVtctldsRequest struct { +func (x *GetSchemaTableSizeOptions) GetIncludeNonServingShards() bool { + if x != nil { + return x.IncludeNonServingShards + } + return false +} + +type GetTabletRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + // Unique (per cluster) tablet alias. + Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` + // ClusterIDs is an optional parameter to narrow the scope of the search, if + // the caller knows which cluster the tablet may be in, or, to disambiguate + // if multiple clusters have a tablet with the same hostname. + ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` } -func (x *GetVtctldsRequest) Reset() { - *x = GetVtctldsRequest{} +func (x *GetTabletRequest) Reset() { + *x = GetTabletRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3426,13 +3443,13 @@ func (x *GetVtctldsRequest) Reset() { } } -func (x *GetVtctldsRequest) String() string { +func (x *GetTabletRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetVtctldsRequest) ProtoMessage() {} +func (*GetTabletRequest) ProtoMessage() {} -func (x *GetVtctldsRequest) ProtoReflect() protoreflect.Message { +func (x *GetTabletRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3444,28 +3461,35 @@ func (x *GetVtctldsRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetVtctldsRequest.ProtoReflect.Descriptor instead. -func (*GetVtctldsRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetTabletRequest.ProtoReflect.Descriptor instead. +func (*GetTabletRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{58} } -func (x *GetVtctldsRequest) GetClusterIds() []string { +func (x *GetTabletRequest) GetAlias() *topodata.TabletAlias { + if x != nil { + return x.Alias + } + return nil +} + +func (x *GetTabletRequest) GetClusterIds() []string { if x != nil { return x.ClusterIds } return nil } -type GetVtctldsResponse struct { +type GetTabletsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Vtctlds []*Vtctld `protobuf:"bytes,1,rep,name=vtctlds,proto3" json:"vtctlds,omitempty"` + ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` } -func (x *GetVtctldsResponse) Reset() { - *x = GetVtctldsResponse{} +func (x *GetTabletsRequest) Reset() { + *x = GetTabletsRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3473,13 +3497,13 @@ func (x *GetVtctldsResponse) Reset() { } } -func (x *GetVtctldsResponse) String() string { +func (x *GetTabletsRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetVtctldsResponse) ProtoMessage() {} +func (*GetTabletsRequest) ProtoMessage() {} -func (x *GetVtctldsResponse) ProtoReflect() protoreflect.Message { +func (x *GetTabletsRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3491,31 +3515,28 @@ func (x *GetVtctldsResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetVtctldsResponse.ProtoReflect.Descriptor instead. -func (*GetVtctldsResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use GetTabletsRequest.ProtoReflect.Descriptor instead. +func (*GetTabletsRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{59} } -func (x *GetVtctldsResponse) GetVtctlds() []*Vtctld { +func (x *GetTabletsRequest) GetClusterIds() []string { if x != nil { - return x.Vtctlds + return x.ClusterIds } return nil } -type GetWorkflowRequest struct { +type GetTabletsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` - Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` - ActiveOnly bool `protobuf:"varint,4,opt,name=active_only,json=activeOnly,proto3" json:"active_only,omitempty"` + Tablets []*Tablet `protobuf:"bytes,1,rep,name=tablets,proto3" json:"tablets,omitempty"` } -func (x *GetWorkflowRequest) Reset() { - *x = GetWorkflowRequest{} +func (x *GetTabletsResponse) Reset() { + *x = GetTabletsResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3523,13 +3544,13 @@ func (x *GetWorkflowRequest) Reset() { } } -func (x *GetWorkflowRequest) String() string { +func (x *GetTabletsResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetWorkflowRequest) ProtoMessage() {} +func (*GetTabletsResponse) ProtoMessage() {} -func (x *GetWorkflowRequest) ProtoReflect() protoreflect.Message { +func (x *GetTabletsResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3541,67 +3562,29 @@ func (x *GetWorkflowRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetWorkflowRequest.ProtoReflect.Descriptor instead. -func (*GetWorkflowRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetTabletsResponse.ProtoReflect.Descriptor instead. +func (*GetTabletsResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{60} } -func (x *GetWorkflowRequest) GetClusterId() string { - if x != nil { - return x.ClusterId - } - return "" -} - -func (x *GetWorkflowRequest) GetKeyspace() string { - if x != nil { - return x.Keyspace - } - return "" -} - -func (x *GetWorkflowRequest) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *GetWorkflowRequest) GetActiveOnly() bool { +func (x *GetTabletsResponse) GetTablets() []*Tablet { if x != nil { - return x.ActiveOnly + return x.Tablets } - return false + return nil } -type GetWorkflowsRequest struct { +type GetTopologyPathRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` - // ActiveOnly specifies whether to return workflows that are currently - // active (running or paused) instead of all workflows. - ActiveOnly bool `protobuf:"varint,2,opt,name=active_only,json=activeOnly,proto3" json:"active_only,omitempty"` - // Keyspaces is a list of keyspaces to restrict the workflow search to. Note - // that the keyspaces list applies across all cluster IDs in the request. - // - // If, for example, you have two clusters, each with a keyspace called "foo" - // and want the workflows from "foo" in cluster1 but not from cluster2, you - // must make two requests. - // - // Keyspaces and IgnoreKeyspaces are mutually-exclusive, and Keyspaces takes - // precedence; if Keyspaces is a non-empty list, then IgnoreKeyspaces is - // ignored completely. - Keyspaces []string `protobuf:"bytes,3,rep,name=keyspaces,proto3" json:"keyspaces,omitempty"` - // IgnoreKeyspaces is a list of keyspaces to skip during the workflow - // search. It has the same semantics as the Keyspaces parameter, so refer to - // that documentation for more details. - IgnoreKeyspaces []string `protobuf:"bytes,4,rep,name=ignore_keyspaces,json=ignoreKeyspaces,proto3" json:"ignore_keyspaces,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"` } -func (x *GetWorkflowsRequest) Reset() { - *x = GetWorkflowsRequest{} +func (x *GetTopologyPathRequest) Reset() { + *x = GetTopologyPathRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3609,13 +3592,13 @@ func (x *GetWorkflowsRequest) Reset() { } } -func (x *GetWorkflowsRequest) String() string { +func (x *GetTopologyPathRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetWorkflowsRequest) ProtoMessage() {} +func (*GetTopologyPathRequest) ProtoMessage() {} -func (x *GetWorkflowsRequest) ProtoReflect() protoreflect.Message { +func (x *GetTopologyPathRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3627,49 +3610,36 @@ func (x *GetWorkflowsRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetWorkflowsRequest.ProtoReflect.Descriptor instead. -func (*GetWorkflowsRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetTopologyPathRequest.ProtoReflect.Descriptor instead. +func (*GetTopologyPathRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{61} } -func (x *GetWorkflowsRequest) GetClusterIds() []string { - if x != nil { - return x.ClusterIds - } - return nil -} - -func (x *GetWorkflowsRequest) GetActiveOnly() bool { - if x != nil { - return x.ActiveOnly - } - return false -} - -func (x *GetWorkflowsRequest) GetKeyspaces() []string { +func (x *GetTopologyPathRequest) GetClusterId() string { if x != nil { - return x.Keyspaces + return x.ClusterId } - return nil + return "" } -func (x *GetWorkflowsRequest) GetIgnoreKeyspaces() []string { +func (x *GetTopologyPathRequest) GetPath() string { if x != nil { - return x.IgnoreKeyspaces + return x.Path } - return nil + return "" } -type GetWorkflowsResponse struct { +type GetVSchemaRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - WorkflowsByCluster map[string]*ClusterWorkflows `protobuf:"bytes,1,rep,name=workflows_by_cluster,json=workflowsByCluster,proto3" json:"workflows_by_cluster,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` } -func (x *GetWorkflowsResponse) Reset() { - *x = GetWorkflowsResponse{} +func (x *GetVSchemaRequest) Reset() { + *x = GetVSchemaRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3677,13 +3647,13 @@ func (x *GetWorkflowsResponse) Reset() { } } -func (x *GetWorkflowsResponse) String() string { +func (x *GetVSchemaRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetWorkflowsResponse) ProtoMessage() {} +func (*GetVSchemaRequest) ProtoMessage() {} -func (x *GetWorkflowsResponse) ProtoReflect() protoreflect.Message { +func (x *GetVSchemaRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3695,33 +3665,35 @@ func (x *GetWorkflowsResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetWorkflowsResponse.ProtoReflect.Descriptor instead. -func (*GetWorkflowsResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use GetVSchemaRequest.ProtoReflect.Descriptor instead. +func (*GetVSchemaRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{62} } -func (x *GetWorkflowsResponse) GetWorkflowsByCluster() map[string]*ClusterWorkflows { +func (x *GetVSchemaRequest) GetClusterId() string { if x != nil { - return x.WorkflowsByCluster + return x.ClusterId } - return nil + return "" } -type PingTabletRequest struct { +func (x *GetVSchemaRequest) GetKeyspace() string { + if x != nil { + return x.Keyspace + } + return "" +} + +type GetVSchemasRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // Unique (per cluster) tablet alias of the standard form: "$cell-$uid" - Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` - // ClusterIDs is an optional parameter to narrow the scope of the search, if - // the caller knows which cluster the tablet may be in, or, to disambiguate - // if multiple clusters have a tablet with the same hostname. - ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` } -func (x *PingTabletRequest) Reset() { - *x = PingTabletRequest{} +func (x *GetVSchemasRequest) Reset() { + *x = GetVSchemasRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3729,13 +3701,13 @@ func (x *PingTabletRequest) Reset() { } } -func (x *PingTabletRequest) String() string { +func (x *GetVSchemasRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*PingTabletRequest) ProtoMessage() {} +func (*GetVSchemasRequest) ProtoMessage() {} -func (x *PingTabletRequest) ProtoReflect() protoreflect.Message { +func (x *GetVSchemasRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3747,36 +3719,28 @@ func (x *PingTabletRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use PingTabletRequest.ProtoReflect.Descriptor instead. -func (*PingTabletRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetVSchemasRequest.ProtoReflect.Descriptor instead. +func (*GetVSchemasRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{63} } -func (x *PingTabletRequest) GetAlias() *topodata.TabletAlias { - if x != nil { - return x.Alias - } - return nil -} - -func (x *PingTabletRequest) GetClusterIds() []string { +func (x *GetVSchemasRequest) GetClusterIds() []string { if x != nil { return x.ClusterIds } return nil } -type PingTabletResponse struct { +type GetVSchemasResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - Cluster *Cluster `protobuf:"bytes,2,opt,name=cluster,proto3" json:"cluster,omitempty"` + VSchemas []*VSchema `protobuf:"bytes,1,rep,name=v_schemas,json=vSchemas,proto3" json:"v_schemas,omitempty"` } -func (x *PingTabletResponse) Reset() { - *x = PingTabletResponse{} +func (x *GetVSchemasResponse) Reset() { + *x = GetVSchemasResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3784,13 +3748,13 @@ func (x *PingTabletResponse) Reset() { } } -func (x *PingTabletResponse) String() string { +func (x *GetVSchemasResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*PingTabletResponse) ProtoMessage() {} +func (*GetVSchemasResponse) ProtoMessage() {} -func (x *PingTabletResponse) ProtoReflect() protoreflect.Message { +func (x *GetVSchemasResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3802,36 +3766,28 @@ func (x *PingTabletResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use PingTabletResponse.ProtoReflect.Descriptor instead. -func (*PingTabletResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use GetVSchemasResponse.ProtoReflect.Descriptor instead. +func (*GetVSchemasResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{64} } -func (x *PingTabletResponse) GetStatus() string { - if x != nil { - return x.Status - } - return "" -} - -func (x *PingTabletResponse) GetCluster() *Cluster { +func (x *GetVSchemasResponse) GetVSchemas() []*VSchema { if x != nil { - return x.Cluster + return x.VSchemas } return nil } -type PlannedFailoverShardRequest struct { +type GetVtctldsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Options *vtctldata.PlannedReparentShardRequest `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"` + ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` } -func (x *PlannedFailoverShardRequest) Reset() { - *x = PlannedFailoverShardRequest{} +func (x *GetVtctldsRequest) Reset() { + *x = GetVtctldsRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3839,13 +3795,13 @@ func (x *PlannedFailoverShardRequest) Reset() { } } -func (x *PlannedFailoverShardRequest) String() string { +func (x *GetVtctldsRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*PlannedFailoverShardRequest) ProtoMessage() {} +func (*GetVtctldsRequest) ProtoMessage() {} -func (x *PlannedFailoverShardRequest) ProtoReflect() protoreflect.Message { +func (x *GetVtctldsRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3857,43 +3813,28 @@ func (x *PlannedFailoverShardRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use PlannedFailoverShardRequest.ProtoReflect.Descriptor instead. -func (*PlannedFailoverShardRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetVtctldsRequest.ProtoReflect.Descriptor instead. +func (*GetVtctldsRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{65} } -func (x *PlannedFailoverShardRequest) GetClusterId() string { - if x != nil { - return x.ClusterId - } - return "" -} - -func (x *PlannedFailoverShardRequest) GetOptions() *vtctldata.PlannedReparentShardRequest { +func (x *GetVtctldsRequest) GetClusterIds() []string { if x != nil { - return x.Options + return x.ClusterIds } return nil } -type PlannedFailoverShardResponse struct { +type GetVtctldsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Cluster *Cluster `protobuf:"bytes,1,opt,name=cluster,proto3" json:"cluster,omitempty"` - Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` - Shard string `protobuf:"bytes,3,opt,name=shard,proto3" json:"shard,omitempty"` - // PromotedPrimary is the tablet alias that was promoted to shard primary. - // If NewPrimary was set in the request options, then this will be the - // same tablet alias. Otherwise, it will be the alias of the tablet found - // to be most up-to-date in the shard. - PromotedPrimary *topodata.TabletAlias `protobuf:"bytes,4,opt,name=promoted_primary,json=promotedPrimary,proto3" json:"promoted_primary,omitempty"` - Events []*logutil.Event `protobuf:"bytes,5,rep,name=events,proto3" json:"events,omitempty"` + Vtctlds []*Vtctld `protobuf:"bytes,1,rep,name=vtctlds,proto3" json:"vtctlds,omitempty"` } -func (x *PlannedFailoverShardResponse) Reset() { - *x = PlannedFailoverShardResponse{} +func (x *GetVtctldsResponse) Reset() { + *x = GetVtctldsResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3901,13 +3842,13 @@ func (x *PlannedFailoverShardResponse) Reset() { } } -func (x *PlannedFailoverShardResponse) String() string { +func (x *GetVtctldsResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*PlannedFailoverShardResponse) ProtoMessage() {} +func (*GetVtctldsResponse) ProtoMessage() {} -func (x *PlannedFailoverShardResponse) ProtoReflect() protoreflect.Message { +func (x *GetVtctldsResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3919,59 +3860,31 @@ func (x *PlannedFailoverShardResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use PlannedFailoverShardResponse.ProtoReflect.Descriptor instead. -func (*PlannedFailoverShardResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use GetVtctldsResponse.ProtoReflect.Descriptor instead. +func (*GetVtctldsResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{66} } -func (x *PlannedFailoverShardResponse) GetCluster() *Cluster { +func (x *GetVtctldsResponse) GetVtctlds() []*Vtctld { if x != nil { - return x.Cluster + return x.Vtctlds } return nil } -func (x *PlannedFailoverShardResponse) GetKeyspace() string { - if x != nil { - return x.Keyspace - } - return "" -} - -func (x *PlannedFailoverShardResponse) GetShard() string { - if x != nil { - return x.Shard - } - return "" -} - -func (x *PlannedFailoverShardResponse) GetPromotedPrimary() *topodata.TabletAlias { - if x != nil { - return x.PromotedPrimary - } - return nil -} - -func (x *PlannedFailoverShardResponse) GetEvents() []*logutil.Event { - if x != nil { - return x.Events - } - return nil -} - -type RebuildKeyspaceGraphRequest struct { +type GetWorkflowRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` - Cells []string `protobuf:"bytes,3,rep,name=cells,proto3" json:"cells,omitempty"` - AllowPartial bool `protobuf:"varint,4,opt,name=allow_partial,json=allowPartial,proto3" json:"allow_partial,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` + ActiveOnly bool `protobuf:"varint,4,opt,name=active_only,json=activeOnly,proto3" json:"active_only,omitempty"` } -func (x *RebuildKeyspaceGraphRequest) Reset() { - *x = RebuildKeyspaceGraphRequest{} +func (x *GetWorkflowRequest) Reset() { + *x = GetWorkflowRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3979,13 +3892,13 @@ func (x *RebuildKeyspaceGraphRequest) Reset() { } } -func (x *RebuildKeyspaceGraphRequest) String() string { +func (x *GetWorkflowRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RebuildKeyspaceGraphRequest) ProtoMessage() {} +func (*GetWorkflowRequest) ProtoMessage() {} -func (x *RebuildKeyspaceGraphRequest) ProtoReflect() protoreflect.Message { +func (x *GetWorkflowRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[67] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3997,49 +3910,67 @@ func (x *RebuildKeyspaceGraphRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RebuildKeyspaceGraphRequest.ProtoReflect.Descriptor instead. -func (*RebuildKeyspaceGraphRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetWorkflowRequest.ProtoReflect.Descriptor instead. +func (*GetWorkflowRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{67} } -func (x *RebuildKeyspaceGraphRequest) GetClusterId() string { +func (x *GetWorkflowRequest) GetClusterId() string { if x != nil { return x.ClusterId } return "" } -func (x *RebuildKeyspaceGraphRequest) GetKeyspace() string { +func (x *GetWorkflowRequest) GetKeyspace() string { if x != nil { return x.Keyspace } return "" } -func (x *RebuildKeyspaceGraphRequest) GetCells() []string { +func (x *GetWorkflowRequest) GetName() string { if x != nil { - return x.Cells + return x.Name } - return nil + return "" } -func (x *RebuildKeyspaceGraphRequest) GetAllowPartial() bool { +func (x *GetWorkflowRequest) GetActiveOnly() bool { if x != nil { - return x.AllowPartial + return x.ActiveOnly } return false } -type RebuildKeyspaceGraphResponse struct { +type GetWorkflowsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` + ClusterIds []string `protobuf:"bytes,1,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + // ActiveOnly specifies whether to return workflows that are currently + // active (running or paused) instead of all workflows. + ActiveOnly bool `protobuf:"varint,2,opt,name=active_only,json=activeOnly,proto3" json:"active_only,omitempty"` + // Keyspaces is a list of keyspaces to restrict the workflow search to. Note + // that the keyspaces list applies across all cluster IDs in the request. + // + // If, for example, you have two clusters, each with a keyspace called "foo" + // and want the workflows from "foo" in cluster1 but not from cluster2, you + // must make two requests. + // + // Keyspaces and IgnoreKeyspaces are mutually-exclusive, and Keyspaces takes + // precedence; if Keyspaces is a non-empty list, then IgnoreKeyspaces is + // ignored completely. + Keyspaces []string `protobuf:"bytes,3,rep,name=keyspaces,proto3" json:"keyspaces,omitempty"` + // IgnoreKeyspaces is a list of keyspaces to skip during the workflow + // search. It has the same semantics as the Keyspaces parameter, so refer to + // that documentation for more details. + IgnoreKeyspaces []string `protobuf:"bytes,4,rep,name=ignore_keyspaces,json=ignoreKeyspaces,proto3" json:"ignore_keyspaces,omitempty"` } -func (x *RebuildKeyspaceGraphResponse) Reset() { - *x = RebuildKeyspaceGraphResponse{} +func (x *GetWorkflowsRequest) Reset() { + *x = GetWorkflowsRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4047,13 +3978,13 @@ func (x *RebuildKeyspaceGraphResponse) Reset() { } } -func (x *RebuildKeyspaceGraphResponse) String() string { +func (x *GetWorkflowsRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RebuildKeyspaceGraphResponse) ProtoMessage() {} +func (*GetWorkflowsRequest) ProtoMessage() {} -func (x *RebuildKeyspaceGraphResponse) ProtoReflect() protoreflect.Message { +func (x *GetWorkflowsRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4065,29 +3996,49 @@ func (x *RebuildKeyspaceGraphResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RebuildKeyspaceGraphResponse.ProtoReflect.Descriptor instead. -func (*RebuildKeyspaceGraphResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use GetWorkflowsRequest.ProtoReflect.Descriptor instead. +func (*GetWorkflowsRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{68} } -func (x *RebuildKeyspaceGraphResponse) GetStatus() string { +func (x *GetWorkflowsRequest) GetClusterIds() []string { if x != nil { - return x.Status + return x.ClusterIds } - return "" + return nil } -type RefreshStateRequest struct { +func (x *GetWorkflowsRequest) GetActiveOnly() bool { + if x != nil { + return x.ActiveOnly + } + return false +} + +func (x *GetWorkflowsRequest) GetKeyspaces() []string { + if x != nil { + return x.Keyspaces + } + return nil +} + +func (x *GetWorkflowsRequest) GetIgnoreKeyspaces() []string { + if x != nil { + return x.IgnoreKeyspaces + } + return nil +} + +type GetWorkflowsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` - ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + WorkflowsByCluster map[string]*ClusterWorkflows `protobuf:"bytes,1,rep,name=workflows_by_cluster,json=workflowsByCluster,proto3" json:"workflows_by_cluster,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } -func (x *RefreshStateRequest) Reset() { - *x = RefreshStateRequest{} +func (x *GetWorkflowsResponse) Reset() { + *x = GetWorkflowsResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4095,13 +4046,13 @@ func (x *RefreshStateRequest) Reset() { } } -func (x *RefreshStateRequest) String() string { +func (x *GetWorkflowsResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RefreshStateRequest) ProtoMessage() {} +func (*GetWorkflowsResponse) ProtoMessage() {} -func (x *RefreshStateRequest) ProtoReflect() protoreflect.Message { +func (x *GetWorkflowsResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4113,36 +4064,29 @@ func (x *RefreshStateRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RefreshStateRequest.ProtoReflect.Descriptor instead. -func (*RefreshStateRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use GetWorkflowsResponse.ProtoReflect.Descriptor instead. +func (*GetWorkflowsResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{69} } -func (x *RefreshStateRequest) GetAlias() *topodata.TabletAlias { - if x != nil { - return x.Alias - } - return nil -} - -func (x *RefreshStateRequest) GetClusterIds() []string { +func (x *GetWorkflowsResponse) GetWorkflowsByCluster() map[string]*ClusterWorkflows { if x != nil { - return x.ClusterIds + return x.WorkflowsByCluster } return nil } -type RefreshStateResponse struct { +type LaunchSchemaMigrationRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - Cluster *Cluster `protobuf:"bytes,2,opt,name=cluster,proto3" json:"cluster,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Request *vtctldata.LaunchSchemaMigrationRequest `protobuf:"bytes,2,opt,name=request,proto3" json:"request,omitempty"` } -func (x *RefreshStateResponse) Reset() { - *x = RefreshStateResponse{} +func (x *LaunchSchemaMigrationRequest) Reset() { + *x = LaunchSchemaMigrationRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4150,13 +4094,13 @@ func (x *RefreshStateResponse) Reset() { } } -func (x *RefreshStateResponse) String() string { +func (x *LaunchSchemaMigrationRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RefreshStateResponse) ProtoMessage() {} +func (*LaunchSchemaMigrationRequest) ProtoMessage() {} -func (x *RefreshStateResponse) ProtoReflect() protoreflect.Message { +func (x *LaunchSchemaMigrationRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4168,76 +4112,40 @@ func (x *RefreshStateResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RefreshStateResponse.ProtoReflect.Descriptor instead. -func (*RefreshStateResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use LaunchSchemaMigrationRequest.ProtoReflect.Descriptor instead. +func (*LaunchSchemaMigrationRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{70} } -func (x *RefreshStateResponse) GetStatus() string { +func (x *LaunchSchemaMigrationRequest) GetClusterId() string { if x != nil { - return x.Status + return x.ClusterId } return "" } -func (x *RefreshStateResponse) GetCluster() *Cluster { +func (x *LaunchSchemaMigrationRequest) GetRequest() *vtctldata.LaunchSchemaMigrationRequest { if x != nil { - return x.Cluster + return x.Request } return nil } -type ReloadSchemasRequest struct { +type PingTabletRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // Keyspaces, if set, will reload schemas across one or more keyspaces. A - // keyspace not existing in a cluster will not fail the overall request. - // - // Superceded by KeyspaceShards and Tablets, in that order. - Keyspaces []string `protobuf:"bytes,1,rep,name=keyspaces,proto3" json:"keyspaces,omitempty"` - // KeyspaceShards, if set, will reload schemas across one or more shards. - // Each element must be a valid keyspace/shard according to - // topoproto.ParseKeyspaceShard. A shard not existing in a cluster will not - // fail the overall request. - // - // Supercedes Keyspaces, and is superceded by Tablets. - KeyspaceShards []string `protobuf:"bytes,2,rep,name=keyspace_shards,json=keyspaceShards,proto3" json:"keyspace_shards,omitempty"` - // Tablets, if set will reload schemas across one or more tablets. - // Supercedes both Keyspaces and KeyspaceShards. - Tablets []*topodata.TabletAlias `protobuf:"bytes,3,rep,name=tablets,proto3" json:"tablets,omitempty"` - // ClusterIds optionally restricts the reload operation to clusters with - // the specified IDs. An empty list of ClusterIds will operate on all - // clusters. - ClusterIds []string `protobuf:"bytes,4,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` - // Concurrency controls the number of tablets to reload at any given time. - // Its semantics depend on whether the request is for keyspace, shard, or - // tablet mode. - // - // In Keyspaces mode, Concurrency is the number of tablets to reload at once - // *per keyspace*. - // - // In KeyspaceShards mode, Concurrency is the number of tablets to reload at - // once *per shard*. - // - // In Tablets mode, Concurrency is the number of tablets to reload at once - // *per cluster*. - Concurrency int32 `protobuf:"varint,5,opt,name=concurrency,proto3" json:"concurrency,omitempty"` - // WaitPosition is the replication position that replicating tablets should - // reach prior to reloading their schemas. - // - // Does not apply in Tablets mode. - WaitPosition string `protobuf:"bytes,6,opt,name=wait_position,json=waitPosition,proto3" json:"wait_position,omitempty"` - // IncludePrimary, if set, will reload the schemas on PRIMARY tablets as - // well as REPLICA and RDONLY. - // - // Does not apply in Tablets mode. - IncludePrimary bool `protobuf:"varint,7,opt,name=include_primary,json=includePrimary,proto3" json:"include_primary,omitempty"` + // Unique (per cluster) tablet alias of the standard form: "$cell-$uid" + Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` + // ClusterIDs is an optional parameter to narrow the scope of the search, if + // the caller knows which cluster the tablet may be in, or, to disambiguate + // if multiple clusters have a tablet with the same hostname. + ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` } -func (x *ReloadSchemasRequest) Reset() { - *x = ReloadSchemasRequest{} +func (x *PingTabletRequest) Reset() { + *x = PingTabletRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4245,13 +4153,13 @@ func (x *ReloadSchemasRequest) Reset() { } } -func (x *ReloadSchemasRequest) String() string { +func (x *PingTabletRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ReloadSchemasRequest) ProtoMessage() {} +func (*PingTabletRequest) ProtoMessage() {} -func (x *ReloadSchemasRequest) ProtoReflect() protoreflect.Message { +func (x *PingTabletRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4263,81 +4171,36 @@ func (x *ReloadSchemasRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ReloadSchemasRequest.ProtoReflect.Descriptor instead. -func (*ReloadSchemasRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use PingTabletRequest.ProtoReflect.Descriptor instead. +func (*PingTabletRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{71} } -func (x *ReloadSchemasRequest) GetKeyspaces() []string { +func (x *PingTabletRequest) GetAlias() *topodata.TabletAlias { if x != nil { - return x.Keyspaces + return x.Alias } return nil } -func (x *ReloadSchemasRequest) GetKeyspaceShards() []string { +func (x *PingTabletRequest) GetClusterIds() []string { if x != nil { - return x.KeyspaceShards + return x.ClusterIds } return nil } -func (x *ReloadSchemasRequest) GetTablets() []*topodata.TabletAlias { - if x != nil { - return x.Tablets - } - return nil -} +type PingTabletResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (x *ReloadSchemasRequest) GetClusterIds() []string { - if x != nil { - return x.ClusterIds - } - return nil -} - -func (x *ReloadSchemasRequest) GetConcurrency() int32 { - if x != nil { - return x.Concurrency - } - return 0 -} - -func (x *ReloadSchemasRequest) GetWaitPosition() string { - if x != nil { - return x.WaitPosition - } - return "" -} - -func (x *ReloadSchemasRequest) GetIncludePrimary() bool { - if x != nil { - return x.IncludePrimary - } - return false -} - -type ReloadSchemasResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // KeyspaceResults is the list of KeyspaceResult objects for a ReloadSchemas - // operation. It is only set when the request mandates Keyspaces mode (see - // ReloadSchemasRequest). - KeyspaceResults []*ReloadSchemasResponse_KeyspaceResult `protobuf:"bytes,1,rep,name=keyspace_results,json=keyspaceResults,proto3" json:"keyspace_results,omitempty"` - // ShardResults is the list of ShardResult objects for a ReloadSchemas - // operation. It is only set when the request mandates KeyspaceShards mode - // (see ReloadSchemasRequest). - ShardResults []*ReloadSchemasResponse_ShardResult `protobuf:"bytes,2,rep,name=shard_results,json=shardResults,proto3" json:"shard_results,omitempty"` - // TabletResults is the list of TabletResult objects for a ReloadSchemas - // operation. It is only set when the request mandates Tablets mode (see - // ReloadSchemasRequest). - TabletResults []*ReloadSchemasResponse_TabletResult `protobuf:"bytes,3,rep,name=tablet_results,json=tabletResults,proto3" json:"tablet_results,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` + Cluster *Cluster `protobuf:"bytes,2,opt,name=cluster,proto3" json:"cluster,omitempty"` } -func (x *ReloadSchemasResponse) Reset() { - *x = ReloadSchemasResponse{} +func (x *PingTabletResponse) Reset() { + *x = PingTabletResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4345,13 +4208,13 @@ func (x *ReloadSchemasResponse) Reset() { } } -func (x *ReloadSchemasResponse) String() string { +func (x *PingTabletResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ReloadSchemasResponse) ProtoMessage() {} +func (*PingTabletResponse) ProtoMessage() {} -func (x *ReloadSchemasResponse) ProtoReflect() protoreflect.Message { +func (x *PingTabletResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[72] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4363,47 +4226,36 @@ func (x *ReloadSchemasResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ReloadSchemasResponse.ProtoReflect.Descriptor instead. -func (*ReloadSchemasResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use PingTabletResponse.ProtoReflect.Descriptor instead. +func (*PingTabletResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{72} } -func (x *ReloadSchemasResponse) GetKeyspaceResults() []*ReloadSchemasResponse_KeyspaceResult { - if x != nil { - return x.KeyspaceResults - } - return nil -} - -func (x *ReloadSchemasResponse) GetShardResults() []*ReloadSchemasResponse_ShardResult { +func (x *PingTabletResponse) GetStatus() string { if x != nil { - return x.ShardResults + return x.Status } - return nil + return "" } -func (x *ReloadSchemasResponse) GetTabletResults() []*ReloadSchemasResponse_TabletResult { +func (x *PingTabletResponse) GetCluster() *Cluster { if x != nil { - return x.TabletResults + return x.Cluster } return nil } -type ReloadSchemaShardRequest struct { +type PlannedFailoverShardRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` - Shard string `protobuf:"bytes,3,opt,name=shard,proto3" json:"shard,omitempty"` - WaitPosition string `protobuf:"bytes,4,opt,name=wait_position,json=waitPosition,proto3" json:"wait_position,omitempty"` - IncludePrimary bool `protobuf:"varint,5,opt,name=include_primary,json=includePrimary,proto3" json:"include_primary,omitempty"` - Concurrency int32 `protobuf:"varint,6,opt,name=concurrency,proto3" json:"concurrency,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Options *vtctldata.PlannedReparentShardRequest `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"` } -func (x *ReloadSchemaShardRequest) Reset() { - *x = ReloadSchemaShardRequest{} +func (x *PlannedFailoverShardRequest) Reset() { + *x = PlannedFailoverShardRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4411,13 +4263,13 @@ func (x *ReloadSchemaShardRequest) Reset() { } } -func (x *ReloadSchemaShardRequest) String() string { +func (x *PlannedFailoverShardRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ReloadSchemaShardRequest) ProtoMessage() {} +func (*PlannedFailoverShardRequest) ProtoMessage() {} -func (x *ReloadSchemaShardRequest) ProtoReflect() protoreflect.Message { +func (x *PlannedFailoverShardRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[73] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4429,63 +4281,43 @@ func (x *ReloadSchemaShardRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ReloadSchemaShardRequest.ProtoReflect.Descriptor instead. -func (*ReloadSchemaShardRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use PlannedFailoverShardRequest.ProtoReflect.Descriptor instead. +func (*PlannedFailoverShardRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{73} } -func (x *ReloadSchemaShardRequest) GetClusterId() string { +func (x *PlannedFailoverShardRequest) GetClusterId() string { if x != nil { return x.ClusterId } return "" } -func (x *ReloadSchemaShardRequest) GetKeyspace() string { - if x != nil { - return x.Keyspace - } - return "" -} - -func (x *ReloadSchemaShardRequest) GetShard() string { - if x != nil { - return x.Shard - } - return "" -} - -func (x *ReloadSchemaShardRequest) GetWaitPosition() string { - if x != nil { - return x.WaitPosition - } - return "" -} - -func (x *ReloadSchemaShardRequest) GetIncludePrimary() bool { - if x != nil { - return x.IncludePrimary - } - return false -} - -func (x *ReloadSchemaShardRequest) GetConcurrency() int32 { +func (x *PlannedFailoverShardRequest) GetOptions() *vtctldata.PlannedReparentShardRequest { if x != nil { - return x.Concurrency + return x.Options } - return 0 + return nil } -type ReloadSchemaShardResponse struct { +type PlannedFailoverShardResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Events []*logutil.Event `protobuf:"bytes,1,rep,name=events,proto3" json:"events,omitempty"` + Cluster *Cluster `protobuf:"bytes,1,opt,name=cluster,proto3" json:"cluster,omitempty"` + Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + Shard string `protobuf:"bytes,3,opt,name=shard,proto3" json:"shard,omitempty"` + // PromotedPrimary is the tablet alias that was promoted to shard primary. + // If NewPrimary was set in the request options, then this will be the + // same tablet alias. Otherwise, it will be the alias of the tablet found + // to be most up-to-date in the shard. + PromotedPrimary *topodata.TabletAlias `protobuf:"bytes,4,opt,name=promoted_primary,json=promotedPrimary,proto3" json:"promoted_primary,omitempty"` + Events []*logutil.Event `protobuf:"bytes,5,rep,name=events,proto3" json:"events,omitempty"` } -func (x *ReloadSchemaShardResponse) Reset() { - *x = ReloadSchemaShardResponse{} +func (x *PlannedFailoverShardResponse) Reset() { + *x = PlannedFailoverShardResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4493,13 +4325,13 @@ func (x *ReloadSchemaShardResponse) Reset() { } } -func (x *ReloadSchemaShardResponse) String() string { +func (x *PlannedFailoverShardResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ReloadSchemaShardResponse) ProtoMessage() {} +func (*PlannedFailoverShardResponse) ProtoMessage() {} -func (x *ReloadSchemaShardResponse) ProtoReflect() protoreflect.Message { +func (x *PlannedFailoverShardResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[74] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4511,29 +4343,59 @@ func (x *ReloadSchemaShardResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ReloadSchemaShardResponse.ProtoReflect.Descriptor instead. -func (*ReloadSchemaShardResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use PlannedFailoverShardResponse.ProtoReflect.Descriptor instead. +func (*PlannedFailoverShardResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{74} } -func (x *ReloadSchemaShardResponse) GetEvents() []*logutil.Event { +func (x *PlannedFailoverShardResponse) GetCluster() *Cluster { + if x != nil { + return x.Cluster + } + return nil +} + +func (x *PlannedFailoverShardResponse) GetKeyspace() string { + if x != nil { + return x.Keyspace + } + return "" +} + +func (x *PlannedFailoverShardResponse) GetShard() string { + if x != nil { + return x.Shard + } + return "" +} + +func (x *PlannedFailoverShardResponse) GetPromotedPrimary() *topodata.TabletAlias { + if x != nil { + return x.PromotedPrimary + } + return nil +} + +func (x *PlannedFailoverShardResponse) GetEvents() []*logutil.Event { if x != nil { return x.Events } return nil } -type RefreshTabletReplicationSourceRequest struct { +type RebuildKeyspaceGraphRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` - ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + Cells []string `protobuf:"bytes,3,rep,name=cells,proto3" json:"cells,omitempty"` + AllowPartial bool `protobuf:"varint,4,opt,name=allow_partial,json=allowPartial,proto3" json:"allow_partial,omitempty"` } -func (x *RefreshTabletReplicationSourceRequest) Reset() { - *x = RefreshTabletReplicationSourceRequest{} +func (x *RebuildKeyspaceGraphRequest) Reset() { + *x = RebuildKeyspaceGraphRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4541,13 +4403,13 @@ func (x *RefreshTabletReplicationSourceRequest) Reset() { } } -func (x *RefreshTabletReplicationSourceRequest) String() string { +func (x *RebuildKeyspaceGraphRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RefreshTabletReplicationSourceRequest) ProtoMessage() {} +func (*RebuildKeyspaceGraphRequest) ProtoMessage() {} -func (x *RefreshTabletReplicationSourceRequest) ProtoReflect() protoreflect.Message { +func (x *RebuildKeyspaceGraphRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[75] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4559,38 +4421,49 @@ func (x *RefreshTabletReplicationSourceRequest) ProtoReflect() protoreflect.Mess return mi.MessageOf(x) } -// Deprecated: Use RefreshTabletReplicationSourceRequest.ProtoReflect.Descriptor instead. -func (*RefreshTabletReplicationSourceRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use RebuildKeyspaceGraphRequest.ProtoReflect.Descriptor instead. +func (*RebuildKeyspaceGraphRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{75} } -func (x *RefreshTabletReplicationSourceRequest) GetAlias() *topodata.TabletAlias { +func (x *RebuildKeyspaceGraphRequest) GetClusterId() string { if x != nil { - return x.Alias + return x.ClusterId } - return nil + return "" } -func (x *RefreshTabletReplicationSourceRequest) GetClusterIds() []string { +func (x *RebuildKeyspaceGraphRequest) GetKeyspace() string { if x != nil { - return x.ClusterIds + return x.Keyspace + } + return "" +} + +func (x *RebuildKeyspaceGraphRequest) GetCells() []string { + if x != nil { + return x.Cells } return nil } -type RefreshTabletReplicationSourceResponse struct { +func (x *RebuildKeyspaceGraphRequest) GetAllowPartial() bool { + if x != nil { + return x.AllowPartial + } + return false +} + +type RebuildKeyspaceGraphResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Keyspace string `protobuf:"bytes,1,opt,name=keyspace,proto3" json:"keyspace,omitempty"` - Shard string `protobuf:"bytes,2,opt,name=shard,proto3" json:"shard,omitempty"` - Primary *topodata.TabletAlias `protobuf:"bytes,3,opt,name=primary,proto3" json:"primary,omitempty"` - Cluster *Cluster `protobuf:"bytes,4,opt,name=cluster,proto3" json:"cluster,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` } -func (x *RefreshTabletReplicationSourceResponse) Reset() { - *x = RefreshTabletReplicationSourceResponse{} +func (x *RebuildKeyspaceGraphResponse) Reset() { + *x = RebuildKeyspaceGraphResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4598,13 +4471,13 @@ func (x *RefreshTabletReplicationSourceResponse) Reset() { } } -func (x *RefreshTabletReplicationSourceResponse) String() string { +func (x *RebuildKeyspaceGraphResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RefreshTabletReplicationSourceResponse) ProtoMessage() {} +func (*RebuildKeyspaceGraphResponse) ProtoMessage() {} -func (x *RefreshTabletReplicationSourceResponse) ProtoReflect() protoreflect.Message { +func (x *RebuildKeyspaceGraphResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[76] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4616,53 +4489,29 @@ func (x *RefreshTabletReplicationSourceResponse) ProtoReflect() protoreflect.Mes return mi.MessageOf(x) } -// Deprecated: Use RefreshTabletReplicationSourceResponse.ProtoReflect.Descriptor instead. -func (*RefreshTabletReplicationSourceResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use RebuildKeyspaceGraphResponse.ProtoReflect.Descriptor instead. +func (*RebuildKeyspaceGraphResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{76} } -func (x *RefreshTabletReplicationSourceResponse) GetKeyspace() string { - if x != nil { - return x.Keyspace - } - return "" -} - -func (x *RefreshTabletReplicationSourceResponse) GetShard() string { +func (x *RebuildKeyspaceGraphResponse) GetStatus() string { if x != nil { - return x.Shard + return x.Status } return "" } -func (x *RefreshTabletReplicationSourceResponse) GetPrimary() *topodata.TabletAlias { - if x != nil { - return x.Primary - } - return nil -} - -func (x *RefreshTabletReplicationSourceResponse) GetCluster() *Cluster { - if x != nil { - return x.Cluster - } - return nil -} - -type RemoveKeyspaceCellRequest struct { +type RefreshStateRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` - Cell string `protobuf:"bytes,3,opt,name=cell,proto3" json:"cell,omitempty"` - Force bool `protobuf:"varint,4,opt,name=force,proto3" json:"force,omitempty"` - Recursive bool `protobuf:"varint,5,opt,name=recursive,proto3" json:"recursive,omitempty"` + Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` + ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` } -func (x *RemoveKeyspaceCellRequest) Reset() { - *x = RemoveKeyspaceCellRequest{} +func (x *RefreshStateRequest) Reset() { + *x = RefreshStateRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4670,13 +4519,13 @@ func (x *RemoveKeyspaceCellRequest) Reset() { } } -func (x *RemoveKeyspaceCellRequest) String() string { +func (x *RefreshStateRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RemoveKeyspaceCellRequest) ProtoMessage() {} +func (*RefreshStateRequest) ProtoMessage() {} -func (x *RemoveKeyspaceCellRequest) ProtoReflect() protoreflect.Message { +func (x *RefreshStateRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[77] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4688,56 +4537,36 @@ func (x *RemoveKeyspaceCellRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RemoveKeyspaceCellRequest.ProtoReflect.Descriptor instead. -func (*RemoveKeyspaceCellRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use RefreshStateRequest.ProtoReflect.Descriptor instead. +func (*RefreshStateRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{77} } -func (x *RemoveKeyspaceCellRequest) GetClusterId() string { - if x != nil { - return x.ClusterId - } - return "" -} - -func (x *RemoveKeyspaceCellRequest) GetKeyspace() string { - if x != nil { - return x.Keyspace - } - return "" -} - -func (x *RemoveKeyspaceCellRequest) GetCell() string { - if x != nil { - return x.Cell - } - return "" -} - -func (x *RemoveKeyspaceCellRequest) GetForce() bool { +func (x *RefreshStateRequest) GetAlias() *topodata.TabletAlias { if x != nil { - return x.Force + return x.Alias } - return false + return nil } -func (x *RemoveKeyspaceCellRequest) GetRecursive() bool { +func (x *RefreshStateRequest) GetClusterIds() []string { if x != nil { - return x.Recursive + return x.ClusterIds } - return false + return nil } -type RemoveKeyspaceCellResponse struct { +type RefreshStateResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` + Cluster *Cluster `protobuf:"bytes,2,opt,name=cluster,proto3" json:"cluster,omitempty"` } -func (x *RemoveKeyspaceCellResponse) Reset() { - *x = RemoveKeyspaceCellResponse{} +func (x *RefreshStateResponse) Reset() { + *x = RefreshStateResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4745,13 +4574,13 @@ func (x *RemoveKeyspaceCellResponse) Reset() { } } -func (x *RemoveKeyspaceCellResponse) String() string { +func (x *RefreshStateResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RemoveKeyspaceCellResponse) ProtoMessage() {} +func (*RefreshStateResponse) ProtoMessage() {} -func (x *RemoveKeyspaceCellResponse) ProtoReflect() protoreflect.Message { +func (x *RefreshStateResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[78] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4763,29 +4592,76 @@ func (x *RemoveKeyspaceCellResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RemoveKeyspaceCellResponse.ProtoReflect.Descriptor instead. -func (*RemoveKeyspaceCellResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use RefreshStateResponse.ProtoReflect.Descriptor instead. +func (*RefreshStateResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{78} } -func (x *RemoveKeyspaceCellResponse) GetStatus() string { +func (x *RefreshStateResponse) GetStatus() string { if x != nil { return x.Status } return "" } -type RunHealthCheckRequest struct { +func (x *RefreshStateResponse) GetCluster() *Cluster { + if x != nil { + return x.Cluster + } + return nil +} + +type ReloadSchemasRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` - ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + // Keyspaces, if set, will reload schemas across one or more keyspaces. A + // keyspace not existing in a cluster will not fail the overall request. + // + // Superceded by KeyspaceShards and Tablets, in that order. + Keyspaces []string `protobuf:"bytes,1,rep,name=keyspaces,proto3" json:"keyspaces,omitempty"` + // KeyspaceShards, if set, will reload schemas across one or more shards. + // Each element must be a valid keyspace/shard according to + // topoproto.ParseKeyspaceShard. A shard not existing in a cluster will not + // fail the overall request. + // + // Supercedes Keyspaces, and is superceded by Tablets. + KeyspaceShards []string `protobuf:"bytes,2,rep,name=keyspace_shards,json=keyspaceShards,proto3" json:"keyspace_shards,omitempty"` + // Tablets, if set will reload schemas across one or more tablets. + // Supercedes both Keyspaces and KeyspaceShards. + Tablets []*topodata.TabletAlias `protobuf:"bytes,3,rep,name=tablets,proto3" json:"tablets,omitempty"` + // ClusterIds optionally restricts the reload operation to clusters with + // the specified IDs. An empty list of ClusterIds will operate on all + // clusters. + ClusterIds []string `protobuf:"bytes,4,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + // Concurrency controls the number of tablets to reload at any given time. + // Its semantics depend on whether the request is for keyspace, shard, or + // tablet mode. + // + // In Keyspaces mode, Concurrency is the number of tablets to reload at once + // *per keyspace*. + // + // In KeyspaceShards mode, Concurrency is the number of tablets to reload at + // once *per shard*. + // + // In Tablets mode, Concurrency is the number of tablets to reload at once + // *per cluster*. + Concurrency int32 `protobuf:"varint,5,opt,name=concurrency,proto3" json:"concurrency,omitempty"` + // WaitPosition is the replication position that replicating tablets should + // reach prior to reloading their schemas. + // + // Does not apply in Tablets mode. + WaitPosition string `protobuf:"bytes,6,opt,name=wait_position,json=waitPosition,proto3" json:"wait_position,omitempty"` + // IncludePrimary, if set, will reload the schemas on PRIMARY tablets as + // well as REPLICA and RDONLY. + // + // Does not apply in Tablets mode. + IncludePrimary bool `protobuf:"varint,7,opt,name=include_primary,json=includePrimary,proto3" json:"include_primary,omitempty"` } -func (x *RunHealthCheckRequest) Reset() { - *x = RunHealthCheckRequest{} +func (x *ReloadSchemasRequest) Reset() { + *x = ReloadSchemasRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4793,13 +4669,13 @@ func (x *RunHealthCheckRequest) Reset() { } } -func (x *RunHealthCheckRequest) String() string { +func (x *ReloadSchemasRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RunHealthCheckRequest) ProtoMessage() {} +func (*ReloadSchemasRequest) ProtoMessage() {} -func (x *RunHealthCheckRequest) ProtoReflect() protoreflect.Message { +func (x *ReloadSchemasRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[79] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4811,36 +4687,81 @@ func (x *RunHealthCheckRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RunHealthCheckRequest.ProtoReflect.Descriptor instead. -func (*RunHealthCheckRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use ReloadSchemasRequest.ProtoReflect.Descriptor instead. +func (*ReloadSchemasRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{79} } -func (x *RunHealthCheckRequest) GetAlias() *topodata.TabletAlias { +func (x *ReloadSchemasRequest) GetKeyspaces() []string { if x != nil { - return x.Alias + return x.Keyspaces } return nil } -func (x *RunHealthCheckRequest) GetClusterIds() []string { +func (x *ReloadSchemasRequest) GetKeyspaceShards() []string { + if x != nil { + return x.KeyspaceShards + } + return nil +} + +func (x *ReloadSchemasRequest) GetTablets() []*topodata.TabletAlias { + if x != nil { + return x.Tablets + } + return nil +} + +func (x *ReloadSchemasRequest) GetClusterIds() []string { if x != nil { return x.ClusterIds } return nil } -type RunHealthCheckResponse struct { +func (x *ReloadSchemasRequest) GetConcurrency() int32 { + if x != nil { + return x.Concurrency + } + return 0 +} + +func (x *ReloadSchemasRequest) GetWaitPosition() string { + if x != nil { + return x.WaitPosition + } + return "" +} + +func (x *ReloadSchemasRequest) GetIncludePrimary() bool { + if x != nil { + return x.IncludePrimary + } + return false +} + +type ReloadSchemasResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - Cluster *Cluster `protobuf:"bytes,2,opt,name=cluster,proto3" json:"cluster,omitempty"` + // KeyspaceResults is the list of KeyspaceResult objects for a ReloadSchemas + // operation. It is only set when the request mandates Keyspaces mode (see + // ReloadSchemasRequest). + KeyspaceResults []*ReloadSchemasResponse_KeyspaceResult `protobuf:"bytes,1,rep,name=keyspace_results,json=keyspaceResults,proto3" json:"keyspace_results,omitempty"` + // ShardResults is the list of ShardResult objects for a ReloadSchemas + // operation. It is only set when the request mandates KeyspaceShards mode + // (see ReloadSchemasRequest). + ShardResults []*ReloadSchemasResponse_ShardResult `protobuf:"bytes,2,rep,name=shard_results,json=shardResults,proto3" json:"shard_results,omitempty"` + // TabletResults is the list of TabletResult objects for a ReloadSchemas + // operation. It is only set when the request mandates Tablets mode (see + // ReloadSchemasRequest). + TabletResults []*ReloadSchemasResponse_TabletResult `protobuf:"bytes,3,rep,name=tablet_results,json=tabletResults,proto3" json:"tablet_results,omitempty"` } -func (x *RunHealthCheckResponse) Reset() { - *x = RunHealthCheckResponse{} +func (x *ReloadSchemasResponse) Reset() { + *x = ReloadSchemasResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4848,13 +4769,13 @@ func (x *RunHealthCheckResponse) Reset() { } } -func (x *RunHealthCheckResponse) String() string { +func (x *ReloadSchemasResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*RunHealthCheckResponse) ProtoMessage() {} +func (*ReloadSchemasResponse) ProtoMessage() {} -func (x *RunHealthCheckResponse) ProtoReflect() protoreflect.Message { +func (x *ReloadSchemasResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[80] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4866,36 +4787,47 @@ func (x *RunHealthCheckResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use RunHealthCheckResponse.ProtoReflect.Descriptor instead. -func (*RunHealthCheckResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use ReloadSchemasResponse.ProtoReflect.Descriptor instead. +func (*ReloadSchemasResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{80} } -func (x *RunHealthCheckResponse) GetStatus() string { +func (x *ReloadSchemasResponse) GetKeyspaceResults() []*ReloadSchemasResponse_KeyspaceResult { if x != nil { - return x.Status + return x.KeyspaceResults } - return "" + return nil } -func (x *RunHealthCheckResponse) GetCluster() *Cluster { +func (x *ReloadSchemasResponse) GetShardResults() []*ReloadSchemasResponse_ShardResult { if x != nil { - return x.Cluster + return x.ShardResults } return nil } -type SetReadOnlyRequest struct { +func (x *ReloadSchemasResponse) GetTabletResults() []*ReloadSchemasResponse_TabletResult { + if x != nil { + return x.TabletResults + } + return nil +} + +type ReloadSchemaShardRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` - ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + Shard string `protobuf:"bytes,3,opt,name=shard,proto3" json:"shard,omitempty"` + WaitPosition string `protobuf:"bytes,4,opt,name=wait_position,json=waitPosition,proto3" json:"wait_position,omitempty"` + IncludePrimary bool `protobuf:"varint,5,opt,name=include_primary,json=includePrimary,proto3" json:"include_primary,omitempty"` + Concurrency int32 `protobuf:"varint,6,opt,name=concurrency,proto3" json:"concurrency,omitempty"` } -func (x *SetReadOnlyRequest) Reset() { - *x = SetReadOnlyRequest{} +func (x *ReloadSchemaShardRequest) Reset() { + *x = ReloadSchemaShardRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4903,13 +4835,13 @@ func (x *SetReadOnlyRequest) Reset() { } } -func (x *SetReadOnlyRequest) String() string { +func (x *ReloadSchemaShardRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*SetReadOnlyRequest) ProtoMessage() {} +func (*ReloadSchemaShardRequest) ProtoMessage() {} -func (x *SetReadOnlyRequest) ProtoReflect() protoreflect.Message { +func (x *ReloadSchemaShardRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[81] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4921,33 +4853,63 @@ func (x *SetReadOnlyRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use SetReadOnlyRequest.ProtoReflect.Descriptor instead. -func (*SetReadOnlyRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use ReloadSchemaShardRequest.ProtoReflect.Descriptor instead. +func (*ReloadSchemaShardRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{81} } -func (x *SetReadOnlyRequest) GetAlias() *topodata.TabletAlias { +func (x *ReloadSchemaShardRequest) GetClusterId() string { if x != nil { - return x.Alias + return x.ClusterId } - return nil + return "" } -func (x *SetReadOnlyRequest) GetClusterIds() []string { +func (x *ReloadSchemaShardRequest) GetKeyspace() string { if x != nil { - return x.ClusterIds + return x.Keyspace } - return nil + return "" } -type SetReadOnlyResponse struct { +func (x *ReloadSchemaShardRequest) GetShard() string { + if x != nil { + return x.Shard + } + return "" +} + +func (x *ReloadSchemaShardRequest) GetWaitPosition() string { + if x != nil { + return x.WaitPosition + } + return "" +} + +func (x *ReloadSchemaShardRequest) GetIncludePrimary() bool { + if x != nil { + return x.IncludePrimary + } + return false +} + +func (x *ReloadSchemaShardRequest) GetConcurrency() int32 { + if x != nil { + return x.Concurrency + } + return 0 +} + +type ReloadSchemaShardResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + + Events []*logutil.Event `protobuf:"bytes,1,rep,name=events,proto3" json:"events,omitempty"` } -func (x *SetReadOnlyResponse) Reset() { - *x = SetReadOnlyResponse{} +func (x *ReloadSchemaShardResponse) Reset() { + *x = ReloadSchemaShardResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4955,13 +4917,13 @@ func (x *SetReadOnlyResponse) Reset() { } } -func (x *SetReadOnlyResponse) String() string { +func (x *ReloadSchemaShardResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*SetReadOnlyResponse) ProtoMessage() {} +func (*ReloadSchemaShardResponse) ProtoMessage() {} -func (x *SetReadOnlyResponse) ProtoReflect() protoreflect.Message { +func (x *ReloadSchemaShardResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[82] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4973,12 +4935,19 @@ func (x *SetReadOnlyResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use SetReadOnlyResponse.ProtoReflect.Descriptor instead. -func (*SetReadOnlyResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use ReloadSchemaShardResponse.ProtoReflect.Descriptor instead. +func (*ReloadSchemaShardResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{82} } -type SetReadWriteRequest struct { +func (x *ReloadSchemaShardResponse) GetEvents() []*logutil.Event { + if x != nil { + return x.Events + } + return nil +} + +type RefreshTabletReplicationSourceRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -4987,8 +4956,8 @@ type SetReadWriteRequest struct { ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` } -func (x *SetReadWriteRequest) Reset() { - *x = SetReadWriteRequest{} +func (x *RefreshTabletReplicationSourceRequest) Reset() { + *x = RefreshTabletReplicationSourceRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4996,13 +4965,13 @@ func (x *SetReadWriteRequest) Reset() { } } -func (x *SetReadWriteRequest) String() string { +func (x *RefreshTabletReplicationSourceRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*SetReadWriteRequest) ProtoMessage() {} +func (*RefreshTabletReplicationSourceRequest) ProtoMessage() {} -func (x *SetReadWriteRequest) ProtoReflect() protoreflect.Message { +func (x *RefreshTabletReplicationSourceRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[83] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5014,33 +4983,38 @@ func (x *SetReadWriteRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use SetReadWriteRequest.ProtoReflect.Descriptor instead. -func (*SetReadWriteRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use RefreshTabletReplicationSourceRequest.ProtoReflect.Descriptor instead. +func (*RefreshTabletReplicationSourceRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{83} } -func (x *SetReadWriteRequest) GetAlias() *topodata.TabletAlias { +func (x *RefreshTabletReplicationSourceRequest) GetAlias() *topodata.TabletAlias { if x != nil { return x.Alias } return nil } -func (x *SetReadWriteRequest) GetClusterIds() []string { +func (x *RefreshTabletReplicationSourceRequest) GetClusterIds() []string { if x != nil { return x.ClusterIds } return nil } -type SetReadWriteResponse struct { +type RefreshTabletReplicationSourceResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + + Keyspace string `protobuf:"bytes,1,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + Shard string `protobuf:"bytes,2,opt,name=shard,proto3" json:"shard,omitempty"` + Primary *topodata.TabletAlias `protobuf:"bytes,3,opt,name=primary,proto3" json:"primary,omitempty"` + Cluster *Cluster `protobuf:"bytes,4,opt,name=cluster,proto3" json:"cluster,omitempty"` } -func (x *SetReadWriteResponse) Reset() { - *x = SetReadWriteResponse{} +func (x *RefreshTabletReplicationSourceResponse) Reset() { + *x = RefreshTabletReplicationSourceResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5048,13 +5022,13 @@ func (x *SetReadWriteResponse) Reset() { } } -func (x *SetReadWriteResponse) String() string { +func (x *RefreshTabletReplicationSourceResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*SetReadWriteResponse) ProtoMessage() {} +func (*RefreshTabletReplicationSourceResponse) ProtoMessage() {} -func (x *SetReadWriteResponse) ProtoReflect() protoreflect.Message { +func (x *RefreshTabletReplicationSourceResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[84] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5066,22 +5040,53 @@ func (x *SetReadWriteResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use SetReadWriteResponse.ProtoReflect.Descriptor instead. -func (*SetReadWriteResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use RefreshTabletReplicationSourceResponse.ProtoReflect.Descriptor instead. +func (*RefreshTabletReplicationSourceResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{84} } -type StartReplicationRequest struct { +func (x *RefreshTabletReplicationSourceResponse) GetKeyspace() string { + if x != nil { + return x.Keyspace + } + return "" +} + +func (x *RefreshTabletReplicationSourceResponse) GetShard() string { + if x != nil { + return x.Shard + } + return "" +} + +func (x *RefreshTabletReplicationSourceResponse) GetPrimary() *topodata.TabletAlias { + if x != nil { + return x.Primary + } + return nil +} + +func (x *RefreshTabletReplicationSourceResponse) GetCluster() *Cluster { + if x != nil { + return x.Cluster + } + return nil +} + +type RemoveKeyspaceCellRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` - ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + Cell string `protobuf:"bytes,3,opt,name=cell,proto3" json:"cell,omitempty"` + Force bool `protobuf:"varint,4,opt,name=force,proto3" json:"force,omitempty"` + Recursive bool `protobuf:"varint,5,opt,name=recursive,proto3" json:"recursive,omitempty"` } -func (x *StartReplicationRequest) Reset() { - *x = StartReplicationRequest{} +func (x *RemoveKeyspaceCellRequest) Reset() { + *x = RemoveKeyspaceCellRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5089,13 +5094,13 @@ func (x *StartReplicationRequest) Reset() { } } -func (x *StartReplicationRequest) String() string { +func (x *RemoveKeyspaceCellRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*StartReplicationRequest) ProtoMessage() {} +func (*RemoveKeyspaceCellRequest) ProtoMessage() {} -func (x *StartReplicationRequest) ProtoReflect() protoreflect.Message { +func (x *RemoveKeyspaceCellRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[85] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5107,36 +5112,56 @@ func (x *StartReplicationRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use StartReplicationRequest.ProtoReflect.Descriptor instead. -func (*StartReplicationRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use RemoveKeyspaceCellRequest.ProtoReflect.Descriptor instead. +func (*RemoveKeyspaceCellRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{85} } -func (x *StartReplicationRequest) GetAlias() *topodata.TabletAlias { +func (x *RemoveKeyspaceCellRequest) GetClusterId() string { if x != nil { - return x.Alias + return x.ClusterId } - return nil + return "" } -func (x *StartReplicationRequest) GetClusterIds() []string { +func (x *RemoveKeyspaceCellRequest) GetKeyspace() string { if x != nil { - return x.ClusterIds + return x.Keyspace } - return nil + return "" } -type StartReplicationResponse struct { +func (x *RemoveKeyspaceCellRequest) GetCell() string { + if x != nil { + return x.Cell + } + return "" +} + +func (x *RemoveKeyspaceCellRequest) GetForce() bool { + if x != nil { + return x.Force + } + return false +} + +func (x *RemoveKeyspaceCellRequest) GetRecursive() bool { + if x != nil { + return x.Recursive + } + return false +} + +type RemoveKeyspaceCellResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - Cluster *Cluster `protobuf:"bytes,2,opt,name=cluster,proto3" json:"cluster,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` } -func (x *StartReplicationResponse) Reset() { - *x = StartReplicationResponse{} +func (x *RemoveKeyspaceCellResponse) Reset() { + *x = RemoveKeyspaceCellResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5144,13 +5169,13 @@ func (x *StartReplicationResponse) Reset() { } } -func (x *StartReplicationResponse) String() string { +func (x *RemoveKeyspaceCellResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*StartReplicationResponse) ProtoMessage() {} +func (*RemoveKeyspaceCellResponse) ProtoMessage() {} -func (x *StartReplicationResponse) ProtoReflect() protoreflect.Message { +func (x *RemoveKeyspaceCellResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[86] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5162,36 +5187,29 @@ func (x *StartReplicationResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use StartReplicationResponse.ProtoReflect.Descriptor instead. -func (*StartReplicationResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use RemoveKeyspaceCellResponse.ProtoReflect.Descriptor instead. +func (*RemoveKeyspaceCellResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{86} } -func (x *StartReplicationResponse) GetStatus() string { +func (x *RemoveKeyspaceCellResponse) GetStatus() string { if x != nil { return x.Status } return "" } -func (x *StartReplicationResponse) GetCluster() *Cluster { - if x != nil { - return x.Cluster - } - return nil -} - -type StopReplicationRequest struct { +type RetrySchemaMigrationRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` - ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Request *vtctldata.RetrySchemaMigrationRequest `protobuf:"bytes,2,opt,name=request,proto3" json:"request,omitempty"` } -func (x *StopReplicationRequest) Reset() { - *x = StopReplicationRequest{} +func (x *RetrySchemaMigrationRequest) Reset() { + *x = RetrySchemaMigrationRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5199,13 +5217,13 @@ func (x *StopReplicationRequest) Reset() { } } -func (x *StopReplicationRequest) String() string { +func (x *RetrySchemaMigrationRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*StopReplicationRequest) ProtoMessage() {} +func (*RetrySchemaMigrationRequest) ProtoMessage() {} -func (x *StopReplicationRequest) ProtoReflect() protoreflect.Message { +func (x *RetrySchemaMigrationRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[87] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5217,36 +5235,36 @@ func (x *StopReplicationRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use StopReplicationRequest.ProtoReflect.Descriptor instead. -func (*StopReplicationRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use RetrySchemaMigrationRequest.ProtoReflect.Descriptor instead. +func (*RetrySchemaMigrationRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{87} } -func (x *StopReplicationRequest) GetAlias() *topodata.TabletAlias { +func (x *RetrySchemaMigrationRequest) GetClusterId() string { if x != nil { - return x.Alias + return x.ClusterId } - return nil + return "" } -func (x *StopReplicationRequest) GetClusterIds() []string { +func (x *RetrySchemaMigrationRequest) GetRequest() *vtctldata.RetrySchemaMigrationRequest { if x != nil { - return x.ClusterIds + return x.Request } return nil } -type StopReplicationResponse struct { +type RunHealthCheckRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - Cluster *Cluster `protobuf:"bytes,2,opt,name=cluster,proto3" json:"cluster,omitempty"` + Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` + ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` } -func (x *StopReplicationResponse) Reset() { - *x = StopReplicationResponse{} +func (x *RunHealthCheckRequest) Reset() { + *x = RunHealthCheckRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5254,13 +5272,13 @@ func (x *StopReplicationResponse) Reset() { } } -func (x *StopReplicationResponse) String() string { +func (x *RunHealthCheckRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*StopReplicationResponse) ProtoMessage() {} +func (*RunHealthCheckRequest) ProtoMessage() {} -func (x *StopReplicationResponse) ProtoReflect() protoreflect.Message { +func (x *RunHealthCheckRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[88] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5272,38 +5290,36 @@ func (x *StopReplicationResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use StopReplicationResponse.ProtoReflect.Descriptor instead. -func (*StopReplicationResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use RunHealthCheckRequest.ProtoReflect.Descriptor instead. +func (*RunHealthCheckRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{88} } -func (x *StopReplicationResponse) GetStatus() string { +func (x *RunHealthCheckRequest) GetAlias() *topodata.TabletAlias { if x != nil { - return x.Status + return x.Alias } - return "" + return nil } -func (x *StopReplicationResponse) GetCluster() *Cluster { +func (x *RunHealthCheckRequest) GetClusterIds() []string { if x != nil { - return x.Cluster + return x.ClusterIds } return nil } -type TabletExternallyPromotedRequest struct { +type RunHealthCheckResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // Tablet is the alias of the tablet that was promoted externally and should - // be updated to the shard primary in the topo. - Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` - ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` + Cluster *Cluster `protobuf:"bytes,2,opt,name=cluster,proto3" json:"cluster,omitempty"` } -func (x *TabletExternallyPromotedRequest) Reset() { - *x = TabletExternallyPromotedRequest{} +func (x *RunHealthCheckResponse) Reset() { + *x = RunHealthCheckResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5311,13 +5327,13 @@ func (x *TabletExternallyPromotedRequest) Reset() { } } -func (x *TabletExternallyPromotedRequest) String() string { +func (x *RunHealthCheckResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*TabletExternallyPromotedRequest) ProtoMessage() {} +func (*RunHealthCheckResponse) ProtoMessage() {} -func (x *TabletExternallyPromotedRequest) ProtoReflect() protoreflect.Message { +func (x *RunHealthCheckResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[89] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5329,39 +5345,36 @@ func (x *TabletExternallyPromotedRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use TabletExternallyPromotedRequest.ProtoReflect.Descriptor instead. -func (*TabletExternallyPromotedRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use RunHealthCheckResponse.ProtoReflect.Descriptor instead. +func (*RunHealthCheckResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{89} } -func (x *TabletExternallyPromotedRequest) GetAlias() *topodata.TabletAlias { +func (x *RunHealthCheckResponse) GetStatus() string { if x != nil { - return x.Alias + return x.Status } - return nil + return "" } -func (x *TabletExternallyPromotedRequest) GetClusterIds() []string { +func (x *RunHealthCheckResponse) GetCluster() *Cluster { if x != nil { - return x.ClusterIds + return x.Cluster } return nil } -type TabletExternallyPromotedResponse struct { +type SetReadOnlyRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Cluster *Cluster `protobuf:"bytes,1,opt,name=cluster,proto3" json:"cluster,omitempty"` - Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` - Shard string `protobuf:"bytes,3,opt,name=shard,proto3" json:"shard,omitempty"` - NewPrimary *topodata.TabletAlias `protobuf:"bytes,4,opt,name=new_primary,json=newPrimary,proto3" json:"new_primary,omitempty"` - OldPrimary *topodata.TabletAlias `protobuf:"bytes,5,opt,name=old_primary,json=oldPrimary,proto3" json:"old_primary,omitempty"` + Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` + ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` } -func (x *TabletExternallyPromotedResponse) Reset() { - *x = TabletExternallyPromotedResponse{} +func (x *SetReadOnlyRequest) Reset() { + *x = SetReadOnlyRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5369,13 +5382,13 @@ func (x *TabletExternallyPromotedResponse) Reset() { } } -func (x *TabletExternallyPromotedResponse) String() string { +func (x *SetReadOnlyRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*TabletExternallyPromotedResponse) ProtoMessage() {} +func (*SetReadOnlyRequest) ProtoMessage() {} -func (x *TabletExternallyPromotedResponse) ProtoReflect() protoreflect.Message { +func (x *SetReadOnlyRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[90] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5387,57 +5400,33 @@ func (x *TabletExternallyPromotedResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use TabletExternallyPromotedResponse.ProtoReflect.Descriptor instead. -func (*TabletExternallyPromotedResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use SetReadOnlyRequest.ProtoReflect.Descriptor instead. +func (*SetReadOnlyRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{90} } -func (x *TabletExternallyPromotedResponse) GetCluster() *Cluster { - if x != nil { - return x.Cluster - } - return nil -} - -func (x *TabletExternallyPromotedResponse) GetKeyspace() string { - if x != nil { - return x.Keyspace - } - return "" -} - -func (x *TabletExternallyPromotedResponse) GetShard() string { - if x != nil { - return x.Shard - } - return "" -} - -func (x *TabletExternallyPromotedResponse) GetNewPrimary() *topodata.TabletAlias { +func (x *SetReadOnlyRequest) GetAlias() *topodata.TabletAlias { if x != nil { - return x.NewPrimary + return x.Alias } return nil } -func (x *TabletExternallyPromotedResponse) GetOldPrimary() *topodata.TabletAlias { +func (x *SetReadOnlyRequest) GetClusterIds() []string { if x != nil { - return x.OldPrimary + return x.ClusterIds } return nil } -type TabletExternallyReparentedRequest struct { +type SetReadOnlyResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - - Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` - ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` } -func (x *TabletExternallyReparentedRequest) Reset() { - *x = TabletExternallyReparentedRequest{} +func (x *SetReadOnlyResponse) Reset() { + *x = SetReadOnlyResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[91] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5445,13 +5434,13 @@ func (x *TabletExternallyReparentedRequest) Reset() { } } -func (x *TabletExternallyReparentedRequest) String() string { +func (x *SetReadOnlyResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*TabletExternallyReparentedRequest) ProtoMessage() {} +func (*SetReadOnlyResponse) ProtoMessage() {} -func (x *TabletExternallyReparentedRequest) ProtoReflect() protoreflect.Message { +func (x *SetReadOnlyResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[91] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5463,36 +5452,22 @@ func (x *TabletExternallyReparentedRequest) ProtoReflect() protoreflect.Message return mi.MessageOf(x) } -// Deprecated: Use TabletExternallyReparentedRequest.ProtoReflect.Descriptor instead. -func (*TabletExternallyReparentedRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use SetReadOnlyResponse.ProtoReflect.Descriptor instead. +func (*SetReadOnlyResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{91} } -func (x *TabletExternallyReparentedRequest) GetAlias() *topodata.TabletAlias { - if x != nil { - return x.Alias - } - return nil -} - -func (x *TabletExternallyReparentedRequest) GetClusterIds() []string { - if x != nil { - return x.ClusterIds - } - return nil -} - -type ValidateRequest struct { +type SetReadWriteRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - PingTablets bool `protobuf:"varint,2,opt,name=ping_tablets,json=pingTablets,proto3" json:"ping_tablets,omitempty"` + Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` + ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` } -func (x *ValidateRequest) Reset() { - *x = ValidateRequest{} +func (x *SetReadWriteRequest) Reset() { + *x = SetReadWriteRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[92] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5500,13 +5475,13 @@ func (x *ValidateRequest) Reset() { } } -func (x *ValidateRequest) String() string { +func (x *SetReadWriteRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ValidateRequest) ProtoMessage() {} +func (*SetReadWriteRequest) ProtoMessage() {} -func (x *ValidateRequest) ProtoReflect() protoreflect.Message { +func (x *SetReadWriteRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[92] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5518,37 +5493,33 @@ func (x *ValidateRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ValidateRequest.ProtoReflect.Descriptor instead. -func (*ValidateRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use SetReadWriteRequest.ProtoReflect.Descriptor instead. +func (*SetReadWriteRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{92} } -func (x *ValidateRequest) GetClusterId() string { +func (x *SetReadWriteRequest) GetAlias() *topodata.TabletAlias { if x != nil { - return x.ClusterId + return x.Alias } - return "" + return nil } -func (x *ValidateRequest) GetPingTablets() bool { +func (x *SetReadWriteRequest) GetClusterIds() []string { if x != nil { - return x.PingTablets + return x.ClusterIds } - return false + return nil } -type ValidateKeyspaceRequest struct { +type SetReadWriteResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` - PingTablets bool `protobuf:"varint,3,opt,name=ping_tablets,json=pingTablets,proto3" json:"ping_tablets,omitempty"` } -func (x *ValidateKeyspaceRequest) Reset() { - *x = ValidateKeyspaceRequest{} +func (x *SetReadWriteResponse) Reset() { + *x = SetReadWriteResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[93] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5556,13 +5527,13 @@ func (x *ValidateKeyspaceRequest) Reset() { } } -func (x *ValidateKeyspaceRequest) String() string { +func (x *SetReadWriteResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ValidateKeyspaceRequest) ProtoMessage() {} +func (*SetReadWriteResponse) ProtoMessage() {} -func (x *ValidateKeyspaceRequest) ProtoReflect() protoreflect.Message { +func (x *SetReadWriteResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[93] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5574,43 +5545,22 @@ func (x *ValidateKeyspaceRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ValidateKeyspaceRequest.ProtoReflect.Descriptor instead. -func (*ValidateKeyspaceRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use SetReadWriteResponse.ProtoReflect.Descriptor instead. +func (*SetReadWriteResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{93} } -func (x *ValidateKeyspaceRequest) GetClusterId() string { - if x != nil { - return x.ClusterId - } - return "" -} - -func (x *ValidateKeyspaceRequest) GetKeyspace() string { - if x != nil { - return x.Keyspace - } - return "" -} - -func (x *ValidateKeyspaceRequest) GetPingTablets() bool { - if x != nil { - return x.PingTablets - } - return false -} - -type ValidateSchemaKeyspaceRequest struct { +type StartReplicationRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` + ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` } -func (x *ValidateSchemaKeyspaceRequest) Reset() { - *x = ValidateSchemaKeyspaceRequest{} +func (x *StartReplicationRequest) Reset() { + *x = StartReplicationRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[94] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5618,13 +5568,13 @@ func (x *ValidateSchemaKeyspaceRequest) Reset() { } } -func (x *ValidateSchemaKeyspaceRequest) String() string { +func (x *StartReplicationRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ValidateSchemaKeyspaceRequest) ProtoMessage() {} +func (*StartReplicationRequest) ProtoMessage() {} -func (x *ValidateSchemaKeyspaceRequest) ProtoReflect() protoreflect.Message { +func (x *StartReplicationRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[94] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5636,38 +5586,36 @@ func (x *ValidateSchemaKeyspaceRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ValidateSchemaKeyspaceRequest.ProtoReflect.Descriptor instead. -func (*ValidateSchemaKeyspaceRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use StartReplicationRequest.ProtoReflect.Descriptor instead. +func (*StartReplicationRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{94} } -func (x *ValidateSchemaKeyspaceRequest) GetClusterId() string { +func (x *StartReplicationRequest) GetAlias() *topodata.TabletAlias { if x != nil { - return x.ClusterId + return x.Alias } - return "" + return nil } -func (x *ValidateSchemaKeyspaceRequest) GetKeyspace() string { +func (x *StartReplicationRequest) GetClusterIds() []string { if x != nil { - return x.Keyspace + return x.ClusterIds } - return "" + return nil } -type ValidateShardRequest struct { +type StartReplicationResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` - Shard string `protobuf:"bytes,3,opt,name=shard,proto3" json:"shard,omitempty"` - PingTablets bool `protobuf:"varint,4,opt,name=ping_tablets,json=pingTablets,proto3" json:"ping_tablets,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` + Cluster *Cluster `protobuf:"bytes,2,opt,name=cluster,proto3" json:"cluster,omitempty"` } -func (x *ValidateShardRequest) Reset() { - *x = ValidateShardRequest{} +func (x *StartReplicationResponse) Reset() { + *x = StartReplicationResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[95] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5675,13 +5623,13 @@ func (x *ValidateShardRequest) Reset() { } } -func (x *ValidateShardRequest) String() string { +func (x *StartReplicationResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ValidateShardRequest) ProtoMessage() {} +func (*StartReplicationResponse) ProtoMessage() {} -func (x *ValidateShardRequest) ProtoReflect() protoreflect.Message { +func (x *StartReplicationResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[95] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5693,50 +5641,36 @@ func (x *ValidateShardRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ValidateShardRequest.ProtoReflect.Descriptor instead. -func (*ValidateShardRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use StartReplicationResponse.ProtoReflect.Descriptor instead. +func (*StartReplicationResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{95} } -func (x *ValidateShardRequest) GetClusterId() string { - if x != nil { - return x.ClusterId - } - return "" -} - -func (x *ValidateShardRequest) GetKeyspace() string { - if x != nil { - return x.Keyspace - } - return "" -} - -func (x *ValidateShardRequest) GetShard() string { +func (x *StartReplicationResponse) GetStatus() string { if x != nil { - return x.Shard + return x.Status } return "" } -func (x *ValidateShardRequest) GetPingTablets() bool { +func (x *StartReplicationResponse) GetCluster() *Cluster { if x != nil { - return x.PingTablets + return x.Cluster } - return false + return nil } -type ValidateVersionKeyspaceRequest struct { +type StopReplicationRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` + ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` } -func (x *ValidateVersionKeyspaceRequest) Reset() { - *x = ValidateVersionKeyspaceRequest{} +func (x *StopReplicationRequest) Reset() { + *x = StopReplicationRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[96] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5744,13 +5678,13 @@ func (x *ValidateVersionKeyspaceRequest) Reset() { } } -func (x *ValidateVersionKeyspaceRequest) String() string { +func (x *StopReplicationRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ValidateVersionKeyspaceRequest) ProtoMessage() {} +func (*StopReplicationRequest) ProtoMessage() {} -func (x *ValidateVersionKeyspaceRequest) ProtoReflect() protoreflect.Message { +func (x *StopReplicationRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[96] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5762,37 +5696,36 @@ func (x *ValidateVersionKeyspaceRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ValidateVersionKeyspaceRequest.ProtoReflect.Descriptor instead. -func (*ValidateVersionKeyspaceRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use StopReplicationRequest.ProtoReflect.Descriptor instead. +func (*StopReplicationRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{96} } -func (x *ValidateVersionKeyspaceRequest) GetClusterId() string { +func (x *StopReplicationRequest) GetAlias() *topodata.TabletAlias { if x != nil { - return x.ClusterId + return x.Alias } - return "" + return nil } -func (x *ValidateVersionKeyspaceRequest) GetKeyspace() string { +func (x *StopReplicationRequest) GetClusterIds() []string { if x != nil { - return x.Keyspace + return x.ClusterIds } - return "" + return nil } -type ValidateVersionShardRequest struct { +type StopReplicationResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` - Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` - Shard string `protobuf:"bytes,3,opt,name=shard,proto3" json:"shard,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` + Cluster *Cluster `protobuf:"bytes,2,opt,name=cluster,proto3" json:"cluster,omitempty"` } -func (x *ValidateVersionShardRequest) Reset() { - *x = ValidateVersionShardRequest{} +func (x *StopReplicationResponse) Reset() { + *x = StopReplicationResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[97] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5800,13 +5733,13 @@ func (x *ValidateVersionShardRequest) Reset() { } } -func (x *ValidateVersionShardRequest) String() string { +func (x *StopReplicationResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ValidateVersionShardRequest) ProtoMessage() {} +func (*StopReplicationResponse) ProtoMessage() {} -func (x *ValidateVersionShardRequest) ProtoReflect() protoreflect.Message { +func (x *StopReplicationResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[97] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5818,44 +5751,38 @@ func (x *ValidateVersionShardRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ValidateVersionShardRequest.ProtoReflect.Descriptor instead. -func (*ValidateVersionShardRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use StopReplicationResponse.ProtoReflect.Descriptor instead. +func (*StopReplicationResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{97} } -func (x *ValidateVersionShardRequest) GetClusterId() string { - if x != nil { - return x.ClusterId - } - return "" -} - -func (x *ValidateVersionShardRequest) GetKeyspace() string { +func (x *StopReplicationResponse) GetStatus() string { if x != nil { - return x.Keyspace + return x.Status } return "" } -func (x *ValidateVersionShardRequest) GetShard() string { +func (x *StopReplicationResponse) GetCluster() *Cluster { if x != nil { - return x.Shard + return x.Cluster } - return "" + return nil } -type VTExplainRequest struct { +type TabletExternallyPromotedRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Cluster string `protobuf:"bytes,1,opt,name=cluster,proto3" json:"cluster,omitempty"` - Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` - Sql string `protobuf:"bytes,3,opt,name=sql,proto3" json:"sql,omitempty"` + // Tablet is the alias of the tablet that was promoted externally and should + // be updated to the shard primary in the topo. + Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` + ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` } -func (x *VTExplainRequest) Reset() { - *x = VTExplainRequest{} +func (x *TabletExternallyPromotedRequest) Reset() { + *x = TabletExternallyPromotedRequest{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[98] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5863,13 +5790,13 @@ func (x *VTExplainRequest) Reset() { } } -func (x *VTExplainRequest) String() string { +func (x *TabletExternallyPromotedRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*VTExplainRequest) ProtoMessage() {} +func (*TabletExternallyPromotedRequest) ProtoMessage() {} -func (x *VTExplainRequest) ProtoReflect() protoreflect.Message { +func (x *TabletExternallyPromotedRequest) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[98] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5881,42 +5808,39 @@ func (x *VTExplainRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use VTExplainRequest.ProtoReflect.Descriptor instead. -func (*VTExplainRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use TabletExternallyPromotedRequest.ProtoReflect.Descriptor instead. +func (*TabletExternallyPromotedRequest) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{98} } -func (x *VTExplainRequest) GetCluster() string { - if x != nil { - return x.Cluster - } - return "" -} - -func (x *VTExplainRequest) GetKeyspace() string { +func (x *TabletExternallyPromotedRequest) GetAlias() *topodata.TabletAlias { if x != nil { - return x.Keyspace + return x.Alias } - return "" + return nil } -func (x *VTExplainRequest) GetSql() string { +func (x *TabletExternallyPromotedRequest) GetClusterIds() []string { if x != nil { - return x.Sql + return x.ClusterIds } - return "" + return nil } -type VTExplainResponse struct { +type TabletExternallyPromotedResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Response string `protobuf:"bytes,1,opt,name=response,proto3" json:"response,omitempty"` + Cluster *Cluster `protobuf:"bytes,1,opt,name=cluster,proto3" json:"cluster,omitempty"` + Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + Shard string `protobuf:"bytes,3,opt,name=shard,proto3" json:"shard,omitempty"` + NewPrimary *topodata.TabletAlias `protobuf:"bytes,4,opt,name=new_primary,json=newPrimary,proto3" json:"new_primary,omitempty"` + OldPrimary *topodata.TabletAlias `protobuf:"bytes,5,opt,name=old_primary,json=oldPrimary,proto3" json:"old_primary,omitempty"` } -func (x *VTExplainResponse) Reset() { - *x = VTExplainResponse{} +func (x *TabletExternallyPromotedResponse) Reset() { + *x = TabletExternallyPromotedResponse{} if protoimpl.UnsafeEnabled { mi := &file_vtadmin_proto_msgTypes[99] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5924,13 +5848,13 @@ func (x *VTExplainResponse) Reset() { } } -func (x *VTExplainResponse) String() string { +func (x *TabletExternallyPromotedResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*VTExplainResponse) ProtoMessage() {} +func (*TabletExternallyPromotedResponse) ProtoMessage() {} -func (x *VTExplainResponse) ProtoReflect() protoreflect.Message { +func (x *TabletExternallyPromotedResponse) ProtoReflect() protoreflect.Message { mi := &file_vtadmin_proto_msgTypes[99] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -5942,44 +5866,72 @@ func (x *VTExplainResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use VTExplainResponse.ProtoReflect.Descriptor instead. -func (*VTExplainResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use TabletExternallyPromotedResponse.ProtoReflect.Descriptor instead. +func (*TabletExternallyPromotedResponse) Descriptor() ([]byte, []int) { return file_vtadmin_proto_rawDescGZIP(), []int{99} } -func (x *VTExplainResponse) GetResponse() string { +func (x *TabletExternallyPromotedResponse) GetCluster() *Cluster { if x != nil { - return x.Response + return x.Cluster + } + return nil +} + +func (x *TabletExternallyPromotedResponse) GetKeyspace() string { + if x != nil { + return x.Keyspace } return "" } -type Schema_ShardTableSize struct { +func (x *TabletExternallyPromotedResponse) GetShard() string { + if x != nil { + return x.Shard + } + return "" +} + +func (x *TabletExternallyPromotedResponse) GetNewPrimary() *topodata.TabletAlias { + if x != nil { + return x.NewPrimary + } + return nil +} + +func (x *TabletExternallyPromotedResponse) GetOldPrimary() *topodata.TabletAlias { + if x != nil { + return x.OldPrimary + } + return nil +} + +type TabletExternallyReparentedRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - RowCount uint64 `protobuf:"varint,1,opt,name=row_count,json=rowCount,proto3" json:"row_count,omitempty"` - DataLength uint64 `protobuf:"varint,2,opt,name=data_length,json=dataLength,proto3" json:"data_length,omitempty"` + Alias *topodata.TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` + ClusterIds []string `protobuf:"bytes,2,rep,name=cluster_ids,json=clusterIds,proto3" json:"cluster_ids,omitempty"` } -func (x *Schema_ShardTableSize) Reset() { - *x = Schema_ShardTableSize{} +func (x *TabletExternallyReparentedRequest) Reset() { + *x = TabletExternallyReparentedRequest{} if protoimpl.UnsafeEnabled { - mi := &file_vtadmin_proto_msgTypes[103] + mi := &file_vtadmin_proto_msgTypes[100] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *Schema_ShardTableSize) String() string { +func (x *TabletExternallyReparentedRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*Schema_ShardTableSize) ProtoMessage() {} +func (*TabletExternallyReparentedRequest) ProtoMessage() {} -func (x *Schema_ShardTableSize) ProtoReflect() protoreflect.Message { - mi := &file_vtadmin_proto_msgTypes[103] +func (x *TabletExternallyReparentedRequest) ProtoReflect() protoreflect.Message { + mi := &file_vtadmin_proto_msgTypes[100] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5990,54 +5942,51 @@ func (x *Schema_ShardTableSize) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use Schema_ShardTableSize.ProtoReflect.Descriptor instead. -func (*Schema_ShardTableSize) Descriptor() ([]byte, []int) { - return file_vtadmin_proto_rawDescGZIP(), []int{7, 1} +// Deprecated: Use TabletExternallyReparentedRequest.ProtoReflect.Descriptor instead. +func (*TabletExternallyReparentedRequest) Descriptor() ([]byte, []int) { + return file_vtadmin_proto_rawDescGZIP(), []int{100} } -func (x *Schema_ShardTableSize) GetRowCount() uint64 { +func (x *TabletExternallyReparentedRequest) GetAlias() *topodata.TabletAlias { if x != nil { - return x.RowCount + return x.Alias } - return 0 + return nil } -func (x *Schema_ShardTableSize) GetDataLength() uint64 { +func (x *TabletExternallyReparentedRequest) GetClusterIds() []string { if x != nil { - return x.DataLength + return x.ClusterIds } - return 0 + return nil } -// TableSize aggregates table size information across all shards containing -// in the given keyspace and cluster, as well as per-shard size information. -type Schema_TableSize struct { +type ValidateRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - RowCount uint64 `protobuf:"varint,1,opt,name=row_count,json=rowCount,proto3" json:"row_count,omitempty"` - DataLength uint64 `protobuf:"varint,2,opt,name=data_length,json=dataLength,proto3" json:"data_length,omitempty"` - ByShard map[string]*Schema_ShardTableSize `protobuf:"bytes,3,rep,name=by_shard,json=byShard,proto3" json:"by_shard,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + PingTablets bool `protobuf:"varint,2,opt,name=ping_tablets,json=pingTablets,proto3" json:"ping_tablets,omitempty"` } -func (x *Schema_TableSize) Reset() { - *x = Schema_TableSize{} +func (x *ValidateRequest) Reset() { + *x = ValidateRequest{} if protoimpl.UnsafeEnabled { - mi := &file_vtadmin_proto_msgTypes[104] + mi := &file_vtadmin_proto_msgTypes[101] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *Schema_TableSize) String() string { +func (x *ValidateRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*Schema_TableSize) ProtoMessage() {} +func (*ValidateRequest) ProtoMessage() {} -func (x *Schema_TableSize) ProtoReflect() protoreflect.Message { - mi := &file_vtadmin_proto_msgTypes[104] +func (x *ValidateRequest) ProtoReflect() protoreflect.Message { + mi := &file_vtadmin_proto_msgTypes[101] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6048,64 +5997,114 @@ func (x *Schema_TableSize) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use Schema_TableSize.ProtoReflect.Descriptor instead. -func (*Schema_TableSize) Descriptor() ([]byte, []int) { - return file_vtadmin_proto_rawDescGZIP(), []int{7, 2} +// Deprecated: Use ValidateRequest.ProtoReflect.Descriptor instead. +func (*ValidateRequest) Descriptor() ([]byte, []int) { + return file_vtadmin_proto_rawDescGZIP(), []int{101} } -func (x *Schema_TableSize) GetRowCount() uint64 { +func (x *ValidateRequest) GetClusterId() string { if x != nil { - return x.RowCount + return x.ClusterId } - return 0 + return "" } -func (x *Schema_TableSize) GetDataLength() uint64 { +func (x *ValidateRequest) GetPingTablets() bool { if x != nil { - return x.DataLength + return x.PingTablets } - return 0 + return false } -func (x *Schema_TableSize) GetByShard() map[string]*Schema_ShardTableSize { +type ValidateKeyspaceRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + PingTablets bool `protobuf:"varint,3,opt,name=ping_tablets,json=pingTablets,proto3" json:"ping_tablets,omitempty"` +} + +func (x *ValidateKeyspaceRequest) Reset() { + *x = ValidateKeyspaceRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_vtadmin_proto_msgTypes[102] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ValidateKeyspaceRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ValidateKeyspaceRequest) ProtoMessage() {} + +func (x *ValidateKeyspaceRequest) ProtoReflect() protoreflect.Message { + mi := &file_vtadmin_proto_msgTypes[102] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ValidateKeyspaceRequest.ProtoReflect.Descriptor instead. +func (*ValidateKeyspaceRequest) Descriptor() ([]byte, []int) { + return file_vtadmin_proto_rawDescGZIP(), []int{102} +} + +func (x *ValidateKeyspaceRequest) GetClusterId() string { if x != nil { - return x.ByShard + return x.ClusterId } - return nil + return "" } -// KeyspaceResult is a grouping of a Keyspace and any log events that -// occurred in that keyspace during a schema reload (usually associated with -// partial errors - ReloadSchemas requests are best-effort). -// -// It is only set when a ReloadSchemas request mandates Keyspaces mode -// (see ReloadSchemasRequest). -type ReloadSchemasResponse_KeyspaceResult struct { +func (x *ValidateKeyspaceRequest) GetKeyspace() string { + if x != nil { + return x.Keyspace + } + return "" +} + +func (x *ValidateKeyspaceRequest) GetPingTablets() bool { + if x != nil { + return x.PingTablets + } + return false +} + +type ValidateSchemaKeyspaceRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Keyspace *Keyspace `protobuf:"bytes,1,opt,name=keyspace,proto3" json:"keyspace,omitempty"` - Events []*logutil.Event `protobuf:"bytes,2,rep,name=events,proto3" json:"events,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` } -func (x *ReloadSchemasResponse_KeyspaceResult) Reset() { - *x = ReloadSchemasResponse_KeyspaceResult{} +func (x *ValidateSchemaKeyspaceRequest) Reset() { + *x = ValidateSchemaKeyspaceRequest{} if protoimpl.UnsafeEnabled { - mi := &file_vtadmin_proto_msgTypes[108] + mi := &file_vtadmin_proto_msgTypes[103] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ReloadSchemasResponse_KeyspaceResult) String() string { +func (x *ValidateSchemaKeyspaceRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ReloadSchemasResponse_KeyspaceResult) ProtoMessage() {} +func (*ValidateSchemaKeyspaceRequest) ProtoMessage() {} -func (x *ReloadSchemasResponse_KeyspaceResult) ProtoReflect() protoreflect.Message { - mi := &file_vtadmin_proto_msgTypes[108] +func (x *ValidateSchemaKeyspaceRequest) ProtoReflect() protoreflect.Message { + mi := &file_vtadmin_proto_msgTypes[103] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6116,57 +6115,53 @@ func (x *ReloadSchemasResponse_KeyspaceResult) ProtoReflect() protoreflect.Messa return mi.MessageOf(x) } -// Deprecated: Use ReloadSchemasResponse_KeyspaceResult.ProtoReflect.Descriptor instead. -func (*ReloadSchemasResponse_KeyspaceResult) Descriptor() ([]byte, []int) { - return file_vtadmin_proto_rawDescGZIP(), []int{72, 0} +// Deprecated: Use ValidateSchemaKeyspaceRequest.ProtoReflect.Descriptor instead. +func (*ValidateSchemaKeyspaceRequest) Descriptor() ([]byte, []int) { + return file_vtadmin_proto_rawDescGZIP(), []int{103} } -func (x *ReloadSchemasResponse_KeyspaceResult) GetKeyspace() *Keyspace { +func (x *ValidateSchemaKeyspaceRequest) GetClusterId() string { if x != nil { - return x.Keyspace + return x.ClusterId } - return nil + return "" } -func (x *ReloadSchemasResponse_KeyspaceResult) GetEvents() []*logutil.Event { +func (x *ValidateSchemaKeyspaceRequest) GetKeyspace() string { if x != nil { - return x.Events + return x.Keyspace } - return nil + return "" } -// ShardResult is a grouping of a Shard and any log events that occurred in -// that shard during a schema reload (usually associated with partial -// errors - ReloadSchemas requests are best-effort). -// -// It is only set when a ReloadSchemas request mandates KeyspaceShards mode -// (see ReloadSchemasRequest). -type ReloadSchemasResponse_ShardResult struct { +type ValidateShardRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Shard *Shard `protobuf:"bytes,1,opt,name=shard,proto3" json:"shard,omitempty"` - Events []*logutil.Event `protobuf:"bytes,2,rep,name=events,proto3" json:"events,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + Shard string `protobuf:"bytes,3,opt,name=shard,proto3" json:"shard,omitempty"` + PingTablets bool `protobuf:"varint,4,opt,name=ping_tablets,json=pingTablets,proto3" json:"ping_tablets,omitempty"` } -func (x *ReloadSchemasResponse_ShardResult) Reset() { - *x = ReloadSchemasResponse_ShardResult{} +func (x *ValidateShardRequest) Reset() { + *x = ValidateShardRequest{} if protoimpl.UnsafeEnabled { - mi := &file_vtadmin_proto_msgTypes[109] + mi := &file_vtadmin_proto_msgTypes[104] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ReloadSchemasResponse_ShardResult) String() string { +func (x *ValidateShardRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ReloadSchemasResponse_ShardResult) ProtoMessage() {} +func (*ValidateShardRequest) ProtoMessage() {} -func (x *ReloadSchemasResponse_ShardResult) ProtoReflect() protoreflect.Message { - mi := &file_vtadmin_proto_msgTypes[109] +func (x *ValidateShardRequest) ProtoReflect() protoreflect.Message { + mi := &file_vtadmin_proto_msgTypes[104] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6177,58 +6172,65 @@ func (x *ReloadSchemasResponse_ShardResult) ProtoReflect() protoreflect.Message return mi.MessageOf(x) } -// Deprecated: Use ReloadSchemasResponse_ShardResult.ProtoReflect.Descriptor instead. -func (*ReloadSchemasResponse_ShardResult) Descriptor() ([]byte, []int) { - return file_vtadmin_proto_rawDescGZIP(), []int{72, 1} +// Deprecated: Use ValidateShardRequest.ProtoReflect.Descriptor instead. +func (*ValidateShardRequest) Descriptor() ([]byte, []int) { + return file_vtadmin_proto_rawDescGZIP(), []int{104} } -func (x *ReloadSchemasResponse_ShardResult) GetShard() *Shard { +func (x *ValidateShardRequest) GetClusterId() string { + if x != nil { + return x.ClusterId + } + return "" +} + +func (x *ValidateShardRequest) GetKeyspace() string { + if x != nil { + return x.Keyspace + } + return "" +} + +func (x *ValidateShardRequest) GetShard() string { if x != nil { return x.Shard } - return nil + return "" } -func (x *ReloadSchemasResponse_ShardResult) GetEvents() []*logutil.Event { +func (x *ValidateShardRequest) GetPingTablets() bool { if x != nil { - return x.Events + return x.PingTablets } - return nil + return false } -// TabletResult is a grouping of a Tablet and the result of reloading that -// Tablet's schema. Result will either be the string "ok", or the error -// message from that tablet. Note ReloadSchemas is best-effort, so tablet's -// failing to reload is not treated as an overall failure. -// -// It is only set when a ReloadSchemas request mandates Tablets mode (see -// ReloadSchemasRequest). -type ReloadSchemasResponse_TabletResult struct { +type ValidateVersionKeyspaceRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Tablet *Tablet `protobuf:"bytes,1,opt,name=tablet,proto3" json:"tablet,omitempty"` - Result string `protobuf:"bytes,2,opt,name=result,proto3" json:"result,omitempty"` + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` } -func (x *ReloadSchemasResponse_TabletResult) Reset() { - *x = ReloadSchemasResponse_TabletResult{} +func (x *ValidateVersionKeyspaceRequest) Reset() { + *x = ValidateVersionKeyspaceRequest{} if protoimpl.UnsafeEnabled { - mi := &file_vtadmin_proto_msgTypes[110] + mi := &file_vtadmin_proto_msgTypes[105] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ReloadSchemasResponse_TabletResult) String() string { +func (x *ValidateVersionKeyspaceRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ReloadSchemasResponse_TabletResult) ProtoMessage() {} +func (*ValidateVersionKeyspaceRequest) ProtoMessage() {} -func (x *ReloadSchemasResponse_TabletResult) ProtoReflect() protoreflect.Message { - mi := &file_vtadmin_proto_msgTypes[110] +func (x *ValidateVersionKeyspaceRequest) ProtoReflect() protoreflect.Message { + mi := &file_vtadmin_proto_msgTypes[105] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6239,51 +6241,583 @@ func (x *ReloadSchemasResponse_TabletResult) ProtoReflect() protoreflect.Message return mi.MessageOf(x) } -// Deprecated: Use ReloadSchemasResponse_TabletResult.ProtoReflect.Descriptor instead. -func (*ReloadSchemasResponse_TabletResult) Descriptor() ([]byte, []int) { - return file_vtadmin_proto_rawDescGZIP(), []int{72, 2} +// Deprecated: Use ValidateVersionKeyspaceRequest.ProtoReflect.Descriptor instead. +func (*ValidateVersionKeyspaceRequest) Descriptor() ([]byte, []int) { + return file_vtadmin_proto_rawDescGZIP(), []int{105} } -func (x *ReloadSchemasResponse_TabletResult) GetTablet() *Tablet { +func (x *ValidateVersionKeyspaceRequest) GetClusterId() string { if x != nil { - return x.Tablet + return x.ClusterId } - return nil + return "" } -func (x *ReloadSchemasResponse_TabletResult) GetResult() string { +func (x *ValidateVersionKeyspaceRequest) GetKeyspace() string { if x != nil { - return x.Result + return x.Keyspace } return "" } -var File_vtadmin_proto protoreflect.FileDescriptor +type ValidateVersionShardRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -var file_vtadmin_proto_rawDesc = []byte{ - 0x0a, 0x0d, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, - 0x07, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x1a, 0x0d, 0x6c, 0x6f, 0x67, 0x75, 0x74, 0x69, - 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0e, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x63, 0x74, - 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 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, - 0x1a, 0x0e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x1a, 0x0d, 0x76, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, - 0x0f, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x22, 0x2d, 0x0a, 0x07, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, - 0x69, 0x0a, 0x0d, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, - 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, - 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x06, - 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, - 0x79, 0x73, 0x71, 0x6c, 0x63, 0x74, 0x6c, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x06, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x22, 0xd8, 0x01, 0x0a, 0x13, 0x43, - 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x65, 0x6c, 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, - 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, - 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x43, - 0x0a, 0x07, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + Shard string `protobuf:"bytes,3,opt,name=shard,proto3" json:"shard,omitempty"` +} + +func (x *ValidateVersionShardRequest) Reset() { + *x = ValidateVersionShardRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_vtadmin_proto_msgTypes[106] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ValidateVersionShardRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ValidateVersionShardRequest) ProtoMessage() {} + +func (x *ValidateVersionShardRequest) ProtoReflect() protoreflect.Message { + mi := &file_vtadmin_proto_msgTypes[106] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ValidateVersionShardRequest.ProtoReflect.Descriptor instead. +func (*ValidateVersionShardRequest) Descriptor() ([]byte, []int) { + return file_vtadmin_proto_rawDescGZIP(), []int{106} +} + +func (x *ValidateVersionShardRequest) GetClusterId() string { + if x != nil { + return x.ClusterId + } + return "" +} + +func (x *ValidateVersionShardRequest) GetKeyspace() string { + if x != nil { + return x.Keyspace + } + return "" +} + +func (x *ValidateVersionShardRequest) GetShard() string { + if x != nil { + return x.Shard + } + return "" +} + +type VTExplainRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Cluster string `protobuf:"bytes,1,opt,name=cluster,proto3" json:"cluster,omitempty"` + Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + Sql string `protobuf:"bytes,3,opt,name=sql,proto3" json:"sql,omitempty"` +} + +func (x *VTExplainRequest) Reset() { + *x = VTExplainRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_vtadmin_proto_msgTypes[107] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VTExplainRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VTExplainRequest) ProtoMessage() {} + +func (x *VTExplainRequest) ProtoReflect() protoreflect.Message { + mi := &file_vtadmin_proto_msgTypes[107] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VTExplainRequest.ProtoReflect.Descriptor instead. +func (*VTExplainRequest) Descriptor() ([]byte, []int) { + return file_vtadmin_proto_rawDescGZIP(), []int{107} +} + +func (x *VTExplainRequest) GetCluster() string { + if x != nil { + return x.Cluster + } + return "" +} + +func (x *VTExplainRequest) GetKeyspace() string { + if x != nil { + return x.Keyspace + } + return "" +} + +func (x *VTExplainRequest) GetSql() string { + if x != nil { + return x.Sql + } + return "" +} + +type VTExplainResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Response string `protobuf:"bytes,1,opt,name=response,proto3" json:"response,omitempty"` +} + +func (x *VTExplainResponse) Reset() { + *x = VTExplainResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_vtadmin_proto_msgTypes[108] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VTExplainResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VTExplainResponse) ProtoMessage() {} + +func (x *VTExplainResponse) ProtoReflect() protoreflect.Message { + mi := &file_vtadmin_proto_msgTypes[108] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VTExplainResponse.ProtoReflect.Descriptor instead. +func (*VTExplainResponse) Descriptor() ([]byte, []int) { + return file_vtadmin_proto_rawDescGZIP(), []int{108} +} + +func (x *VTExplainResponse) GetResponse() string { + if x != nil { + return x.Response + } + return "" +} + +type Schema_ShardTableSize struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RowCount uint64 `protobuf:"varint,1,opt,name=row_count,json=rowCount,proto3" json:"row_count,omitempty"` + DataLength uint64 `protobuf:"varint,2,opt,name=data_length,json=dataLength,proto3" json:"data_length,omitempty"` +} + +func (x *Schema_ShardTableSize) Reset() { + *x = Schema_ShardTableSize{} + if protoimpl.UnsafeEnabled { + mi := &file_vtadmin_proto_msgTypes[112] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Schema_ShardTableSize) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Schema_ShardTableSize) ProtoMessage() {} + +func (x *Schema_ShardTableSize) ProtoReflect() protoreflect.Message { + mi := &file_vtadmin_proto_msgTypes[112] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Schema_ShardTableSize.ProtoReflect.Descriptor instead. +func (*Schema_ShardTableSize) Descriptor() ([]byte, []int) { + return file_vtadmin_proto_rawDescGZIP(), []int{7, 1} +} + +func (x *Schema_ShardTableSize) GetRowCount() uint64 { + if x != nil { + return x.RowCount + } + return 0 +} + +func (x *Schema_ShardTableSize) GetDataLength() uint64 { + if x != nil { + return x.DataLength + } + return 0 +} + +// TableSize aggregates table size information across all shards containing +// in the given keyspace and cluster, as well as per-shard size information. +type Schema_TableSize struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RowCount uint64 `protobuf:"varint,1,opt,name=row_count,json=rowCount,proto3" json:"row_count,omitempty"` + DataLength uint64 `protobuf:"varint,2,opt,name=data_length,json=dataLength,proto3" json:"data_length,omitempty"` + ByShard map[string]*Schema_ShardTableSize `protobuf:"bytes,3,rep,name=by_shard,json=byShard,proto3" json:"by_shard,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (x *Schema_TableSize) Reset() { + *x = Schema_TableSize{} + if protoimpl.UnsafeEnabled { + mi := &file_vtadmin_proto_msgTypes[113] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Schema_TableSize) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Schema_TableSize) ProtoMessage() {} + +func (x *Schema_TableSize) ProtoReflect() protoreflect.Message { + mi := &file_vtadmin_proto_msgTypes[113] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Schema_TableSize.ProtoReflect.Descriptor instead. +func (*Schema_TableSize) Descriptor() ([]byte, []int) { + return file_vtadmin_proto_rawDescGZIP(), []int{7, 2} +} + +func (x *Schema_TableSize) GetRowCount() uint64 { + if x != nil { + return x.RowCount + } + return 0 +} + +func (x *Schema_TableSize) GetDataLength() uint64 { + if x != nil { + return x.DataLength + } + return 0 +} + +func (x *Schema_TableSize) GetByShard() map[string]*Schema_ShardTableSize { + if x != nil { + return x.ByShard + } + return nil +} + +type GetSchemaMigrationsRequest_ClusterRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` + Request *vtctldata.GetSchemaMigrationsRequest `protobuf:"bytes,2,opt,name=request,proto3" json:"request,omitempty"` +} + +func (x *GetSchemaMigrationsRequest_ClusterRequest) Reset() { + *x = GetSchemaMigrationsRequest_ClusterRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_vtadmin_proto_msgTypes[115] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetSchemaMigrationsRequest_ClusterRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetSchemaMigrationsRequest_ClusterRequest) ProtoMessage() {} + +func (x *GetSchemaMigrationsRequest_ClusterRequest) ProtoReflect() protoreflect.Message { + mi := &file_vtadmin_proto_msgTypes[115] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetSchemaMigrationsRequest_ClusterRequest.ProtoReflect.Descriptor instead. +func (*GetSchemaMigrationsRequest_ClusterRequest) Descriptor() ([]byte, []int) { + return file_vtadmin_proto_rawDescGZIP(), []int{47, 0} +} + +func (x *GetSchemaMigrationsRequest_ClusterRequest) GetClusterId() string { + if x != nil { + return x.ClusterId + } + return "" +} + +func (x *GetSchemaMigrationsRequest_ClusterRequest) GetRequest() *vtctldata.GetSchemaMigrationsRequest { + if x != nil { + return x.Request + } + return nil +} + +// KeyspaceResult is a grouping of a Keyspace and any log events that +// occurred in that keyspace during a schema reload (usually associated with +// partial errors - ReloadSchemas requests are best-effort). +// +// It is only set when a ReloadSchemas request mandates Keyspaces mode +// (see ReloadSchemasRequest). +type ReloadSchemasResponse_KeyspaceResult struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Keyspace *Keyspace `protobuf:"bytes,1,opt,name=keyspace,proto3" json:"keyspace,omitempty"` + Events []*logutil.Event `protobuf:"bytes,2,rep,name=events,proto3" json:"events,omitempty"` +} + +func (x *ReloadSchemasResponse_KeyspaceResult) Reset() { + *x = ReloadSchemasResponse_KeyspaceResult{} + if protoimpl.UnsafeEnabled { + mi := &file_vtadmin_proto_msgTypes[118] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ReloadSchemasResponse_KeyspaceResult) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReloadSchemasResponse_KeyspaceResult) ProtoMessage() {} + +func (x *ReloadSchemasResponse_KeyspaceResult) ProtoReflect() protoreflect.Message { + mi := &file_vtadmin_proto_msgTypes[118] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReloadSchemasResponse_KeyspaceResult.ProtoReflect.Descriptor instead. +func (*ReloadSchemasResponse_KeyspaceResult) Descriptor() ([]byte, []int) { + return file_vtadmin_proto_rawDescGZIP(), []int{80, 0} +} + +func (x *ReloadSchemasResponse_KeyspaceResult) GetKeyspace() *Keyspace { + if x != nil { + return x.Keyspace + } + return nil +} + +func (x *ReloadSchemasResponse_KeyspaceResult) GetEvents() []*logutil.Event { + if x != nil { + return x.Events + } + return nil +} + +// ShardResult is a grouping of a Shard and any log events that occurred in +// that shard during a schema reload (usually associated with partial +// errors - ReloadSchemas requests are best-effort). +// +// It is only set when a ReloadSchemas request mandates KeyspaceShards mode +// (see ReloadSchemasRequest). +type ReloadSchemasResponse_ShardResult struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Shard *Shard `protobuf:"bytes,1,opt,name=shard,proto3" json:"shard,omitempty"` + Events []*logutil.Event `protobuf:"bytes,2,rep,name=events,proto3" json:"events,omitempty"` +} + +func (x *ReloadSchemasResponse_ShardResult) Reset() { + *x = ReloadSchemasResponse_ShardResult{} + if protoimpl.UnsafeEnabled { + mi := &file_vtadmin_proto_msgTypes[119] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ReloadSchemasResponse_ShardResult) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReloadSchemasResponse_ShardResult) ProtoMessage() {} + +func (x *ReloadSchemasResponse_ShardResult) ProtoReflect() protoreflect.Message { + mi := &file_vtadmin_proto_msgTypes[119] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReloadSchemasResponse_ShardResult.ProtoReflect.Descriptor instead. +func (*ReloadSchemasResponse_ShardResult) Descriptor() ([]byte, []int) { + return file_vtadmin_proto_rawDescGZIP(), []int{80, 1} +} + +func (x *ReloadSchemasResponse_ShardResult) GetShard() *Shard { + if x != nil { + return x.Shard + } + return nil +} + +func (x *ReloadSchemasResponse_ShardResult) GetEvents() []*logutil.Event { + if x != nil { + return x.Events + } + return nil +} + +// TabletResult is a grouping of a Tablet and the result of reloading that +// Tablet's schema. Result will either be the string "ok", or the error +// message from that tablet. Note ReloadSchemas is best-effort, so tablet's +// failing to reload is not treated as an overall failure. +// +// It is only set when a ReloadSchemas request mandates Tablets mode (see +// ReloadSchemasRequest). +type ReloadSchemasResponse_TabletResult struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Tablet *Tablet `protobuf:"bytes,1,opt,name=tablet,proto3" json:"tablet,omitempty"` + Result string `protobuf:"bytes,2,opt,name=result,proto3" json:"result,omitempty"` +} + +func (x *ReloadSchemasResponse_TabletResult) Reset() { + *x = ReloadSchemasResponse_TabletResult{} + if protoimpl.UnsafeEnabled { + mi := &file_vtadmin_proto_msgTypes[120] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ReloadSchemasResponse_TabletResult) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReloadSchemasResponse_TabletResult) ProtoMessage() {} + +func (x *ReloadSchemasResponse_TabletResult) ProtoReflect() protoreflect.Message { + mi := &file_vtadmin_proto_msgTypes[120] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReloadSchemasResponse_TabletResult.ProtoReflect.Descriptor instead. +func (*ReloadSchemasResponse_TabletResult) Descriptor() ([]byte, []int) { + return file_vtadmin_proto_rawDescGZIP(), []int{80, 2} +} + +func (x *ReloadSchemasResponse_TabletResult) GetTablet() *Tablet { + if x != nil { + return x.Tablet + } + return nil +} + +func (x *ReloadSchemasResponse_TabletResult) GetResult() string { + if x != nil { + return x.Result + } + return "" +} + +var File_vtadmin_proto protoreflect.FileDescriptor + +var file_vtadmin_proto_rawDesc = []byte{ + 0x0a, 0x0d, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, + 0x07, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x1a, 0x0d, 0x6c, 0x6f, 0x67, 0x75, 0x74, 0x69, + 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0e, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x63, 0x74, + 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 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, + 0x1a, 0x0e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x1a, 0x0d, 0x76, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, + 0x0f, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x22, 0x2d, 0x0a, 0x07, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, + 0x69, 0x0a, 0x0d, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, + 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, + 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x06, + 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, + 0x79, 0x73, 0x71, 0x6c, 0x63, 0x74, 0x6c, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x06, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x22, 0xd8, 0x01, 0x0a, 0x13, 0x43, + 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x65, 0x6c, 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, + 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, + 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x43, + 0x0a, 0x07, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x65, 0x6c, 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x2e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x61, 0x6c, 0x69, 0x61, @@ -6374,947 +6908,1070 @@ var file_vtadmin_proto_rawDesc = []byte{ 0x34, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x5b, 0x0a, 0x05, 0x53, 0x68, 0x61, - 0x72, 0x64, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, - 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x26, - 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, - 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, - 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x22, 0x83, 0x01, 0x0a, 0x0a, 0x53, 0x72, 0x76, 0x56, 0x53, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x65, 0x6c, 0x6c, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x65, 0x6c, 0x6c, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, - 0x73, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, - 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, - 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x35, 0x0a, 0x0c, 0x73, 0x72, 0x76, 0x5f, 0x76, 0x5f, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x76, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x53, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x52, 0x0a, 0x73, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0xe1, 0x01, 0x0a, - 0x06, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, - 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, - 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, - 0x74, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x06, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, - 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x06, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x12, 0x32, 0x0a, - 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x76, - 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x2e, 0x53, 0x65, - 0x72, 0x76, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, - 0x65, 0x12, 0x12, 0x0a, 0x04, 0x46, 0x51, 0x44, 0x4e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x46, 0x51, 0x44, 0x4e, 0x22, 0x39, 0x0a, 0x0c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x6e, 0x67, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, - 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x45, 0x52, 0x56, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, - 0x0f, 0x0a, 0x0b, 0x4e, 0x4f, 0x54, 0x5f, 0x53, 0x45, 0x52, 0x56, 0x49, 0x4e, 0x47, 0x10, 0x02, - 0x22, 0x77, 0x0a, 0x07, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x2a, 0x0a, 0x07, 0x63, - 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, - 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, - 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x76, - 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, - 0x76, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, - 0x52, 0x07, 0x76, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x64, 0x0a, 0x06, 0x56, 0x74, 0x63, - 0x74, 0x6c, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, - 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x46, - 0x51, 0x44, 0x4e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x46, 0x51, 0x44, 0x4e, 0x22, - 0xaa, 0x01, 0x0a, 0x06, 0x56, 0x54, 0x47, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, - 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, - 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x6f, 0x6c, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x6f, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x65, - 0x6c, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x65, 0x6c, 0x6c, 0x12, 0x2a, - 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, - 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x6b, 0x65, - 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6b, - 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x46, 0x51, 0x44, 0x4e, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x46, 0x51, 0x44, 0x4e, 0x22, 0x83, 0x01, 0x0a, - 0x08, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x84, 0x01, 0x0a, 0x0f, 0x53, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, + 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, + 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x45, 0x0a, 0x10, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x5f, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x0f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x22, 0x5b, 0x0a, 0x05, 0x53, 0x68, 0x61, 0x72, 0x64, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, - 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x12, 0x2f, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, - 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x66, 0x6c, - 0x6f, 0x77, 0x22, 0x72, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, - 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, - 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x07, 0x6f, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x76, 0x74, - 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x65, - 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x6f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x47, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x2d, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x4b, 0x65, 0x79, - 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, - 0x6c, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x37, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, - 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x72, 0x0a, - 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, - 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, - 0x74, 0x61, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x22, 0x6e, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, + 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, + 0x2e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x22, 0x83, 0x01, + 0x0a, 0x0a, 0x53, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x12, 0x0a, 0x04, + 0x63, 0x65, 0x6c, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x65, 0x6c, 0x6c, + 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, + 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x35, 0x0a, 0x0c, + 0x73, 0x72, 0x76, 0x5f, 0x76, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x76, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x53, 0x72, 0x76, + 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x0a, 0x73, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x22, 0xe1, 0x01, 0x0a, 0x06, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x12, 0x2a, + 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, + 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x06, 0x74, 0x61, + 0x62, 0x6c, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x74, 0x6f, 0x70, + 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x06, 0x74, 0x61, + 0x62, 0x6c, 0x65, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x54, 0x61, + 0x62, 0x6c, 0x65, 0x74, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x46, 0x51, 0x44, 0x4e, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x46, 0x51, 0x44, 0x4e, 0x22, 0x39, 0x0a, 0x0c, + 0x53, 0x65, 0x72, 0x76, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0b, 0x0a, 0x07, + 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x45, 0x52, + 0x56, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x4e, 0x4f, 0x54, 0x5f, 0x53, 0x45, + 0x52, 0x56, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x22, 0x77, 0x0a, 0x07, 0x56, 0x53, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, + 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x76, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x76, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x4b, + 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x07, 0x76, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x22, 0x64, 0x0a, 0x06, 0x56, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, + 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, + 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, + 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, + 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x46, 0x51, 0x44, 0x4e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x46, 0x51, 0x44, 0x4e, 0x22, 0xaa, 0x01, 0x0a, 0x06, 0x56, 0x54, 0x47, 0x61, 0x74, + 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, + 0x04, 0x70, 0x6f, 0x6f, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x6f, + 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x65, 0x6c, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x63, 0x65, 0x6c, 0x6c, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, + 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, + 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, 0x05, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, + 0x12, 0x0a, 0x04, 0x46, 0x51, 0x44, 0x4e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x46, + 0x51, 0x44, 0x4e, 0x22, 0x83, 0x01, 0x0a, 0x08, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, + 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, + 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, + 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x2f, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, + 0x66, 0x6c, 0x6f, 0x77, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x76, 0x74, 0x63, + 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x52, + 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x22, 0x6c, 0x0a, 0x12, 0x41, 0x70, 0x70, + 0x6c, 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x37, + 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1d, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x41, 0x70, 0x70, 0x6c, + 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, + 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x80, 0x01, 0x0a, 0x1c, 0x43, 0x61, 0x6e, 0x63, + 0x65, 0x6c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, - 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, - 0x64, 0x61, 0x74, 0x61, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x22, 0x88, 0x01, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, - 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, - 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, - 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, - 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, - 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, - 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, - 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x22, 0x5a, 0x0a, 0x14, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x07, - 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, - 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, - 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x22, 0x82, 0x01, 0x0a, 0x1d, 0x45, 0x6d, 0x65, - 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x68, - 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, + 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x41, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, + 0x64, 0x61, 0x74, 0x61, 0x2e, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x53, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x82, 0x01, 0x0a, 0x1d, 0x43, + 0x6c, 0x65, 0x61, 0x6e, 0x75, 0x70, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, + 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x07, 0x72, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x76, + 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x75, 0x70, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, + 0x84, 0x01, 0x0a, 0x1e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, + 0x64, 0x12, 0x43, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x43, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x72, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x3a, + 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x20, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x47, 0x0a, 0x16, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, + 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x22, 0x6c, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, + 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, + 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, + 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x37, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x76, 0x74, 0x63, 0x74, + 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, + 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x22, 0x72, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x07, 0x6f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x76, 0x74, 0x63, - 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, - 0x52, 0x65, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xe8, 0x01, - 0x0a, 0x1e, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x46, 0x61, 0x69, 0x6c, 0x6f, - 0x76, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x07, 0x6f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x76, 0x74, 0x63, + 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x65, 0x79, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x6e, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, + 0x68, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, + 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x07, 0x6f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x76, + 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, + 0x68, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x88, 0x01, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, + 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, + 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, + 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, + 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x61, + 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, + 0x22, 0x5a, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, - 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, - 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x12, 0x40, - 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, - 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, - 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, - 0x0f, 0x70, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x64, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, - 0x12, 0x26, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x6c, 0x6f, 0x67, 0x75, 0x74, 0x69, 0x6c, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x9c, 0x01, 0x0a, 0x11, 0x46, 0x69, 0x6e, - 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, - 0x0a, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, - 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, - 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, - 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x50, 0x0a, 0x12, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, - 0x69, 0x7a, 0x65, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x22, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x4f, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x10, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, - 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xc2, 0x01, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x42, - 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, - 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x1c, - 0x0a, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, - 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x64, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x53, - 0x68, 0x61, 0x72, 0x64, 0x73, 0x12, 0x45, 0x0a, 0x0f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, - 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x61, - 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0e, 0x72, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x46, 0x0a, 0x12, - 0x47, 0x65, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x30, 0x0a, 0x07, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, - 0x75, 0x73, 0x74, 0x65, 0x72, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x07, 0x62, 0x61, 0x63, - 0x6b, 0x75, 0x70, 0x73, 0x22, 0x6b, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x43, 0x65, 0x6c, 0x6c, 0x49, - 0x6e, 0x66, 0x6f, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, - 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x14, 0x0a, 0x05, - 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x63, 0x65, 0x6c, - 0x6c, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x4f, 0x6e, 0x6c, - 0x79, 0x22, 0x4f, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x0a, 0x63, 0x65, 0x6c, - 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, + 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x22, 0x82, 0x01, 0x0a, + 0x1d, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, + 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, + 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x42, 0x0a, + 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, + 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x45, 0x6d, 0x65, 0x72, 0x67, + 0x65, 0x6e, 0x63, 0x79, 0x52, 0x65, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x68, 0x61, 0x72, + 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x22, 0xe8, 0x01, 0x0a, 0x1e, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x46, + 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, + 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, + 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x68, 0x61, + 0x72, 0x64, 0x12, 0x40, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x64, 0x5f, 0x70, + 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, + 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, + 0x69, 0x61, 0x73, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x64, 0x50, 0x72, 0x69, + 0x6d, 0x61, 0x72, 0x79, 0x12, 0x26, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x05, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6c, 0x6f, 0x67, 0x75, 0x74, 0x69, 0x6c, 0x2e, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x9c, 0x01, 0x0a, + 0x11, 0x46, 0x69, 0x6e, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, + 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, + 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x50, 0x0a, 0x12, 0x74, 0x61, 0x62, + 0x6c, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, + 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x69, + 0x7a, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x10, 0x74, 0x61, 0x62, 0x6c, 0x65, + 0x53, 0x69, 0x7a, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xc2, 0x01, 0x0a, 0x11, + 0x47, 0x65, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, + 0x64, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, + 0x12, 0x27, 0x0a, 0x0f, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x73, 0x68, 0x61, + 0x72, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x6b, 0x65, 0x79, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x73, 0x12, 0x45, 0x0a, 0x0f, 0x72, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x47, + 0x65, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x52, 0x0e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x22, 0x46, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x07, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, + 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, + 0x07, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x22, 0x6b, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x43, + 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, + 0x12, 0x14, 0x0a, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x5f, + 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, + 0x73, 0x4f, 0x6e, 0x6c, 0x79, 0x22, 0x4f, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x43, 0x65, 0x6c, 0x6c, + 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, + 0x0a, 0x63, 0x65, 0x6c, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x18, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, + 0x74, 0x65, 0x72, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x63, 0x65, 0x6c, + 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x22, 0x39, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x43, 0x65, 0x6c, + 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, + 0x73, 0x22, 0x51, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x43, 0x65, 0x6c, 0x6c, 0x73, 0x41, 0x6c, 0x69, + 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x07, + 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, - 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x63, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, - 0x6f, 0x73, 0x22, 0x39, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x43, 0x65, 0x6c, 0x6c, 0x73, 0x41, 0x6c, - 0x69, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, - 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x51, 0x0a, - 0x17, 0x47, 0x65, 0x74, 0x43, 0x65, 0x6c, 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x07, 0x61, 0x6c, 0x69, 0x61, - 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, - 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x65, 0x6c, 0x6c, 0x73, - 0x41, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x52, 0x07, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, - 0x22, 0x14, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x43, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, - 0x73, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, - 0x08, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, - 0x72, 0x52, 0x08, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x22, 0x62, 0x0a, 0x14, 0x47, - 0x65, 0x74, 0x46, 0x75, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, - 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, - 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x22, - 0x32, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x47, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, - 0x49, 0x64, 0x73, 0x22, 0x39, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x47, 0x61, 0x74, 0x65, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x05, 0x67, 0x61, 0x74, 0x65, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, - 0x2e, 0x56, 0x54, 0x47, 0x61, 0x74, 0x65, 0x52, 0x05, 0x67, 0x61, 0x74, 0x65, 0x73, 0x22, 0x4f, - 0x0a, 0x12, 0x47, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, - 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, - 0x36, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, + 0x65, 0x6c, 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x52, 0x07, 0x61, 0x6c, 0x69, + 0x61, 0x73, 0x65, 0x73, 0x22, 0x14, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x43, 0x0a, 0x13, 0x47, 0x65, + 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, + 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x08, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x22, + 0x62, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, + 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, + 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, + 0x69, 0x61, 0x73, 0x22, 0x32, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x47, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, - 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x47, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x4b, 0x65, - 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x2f, 0x0a, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x4b, 0x65, 0x79, - 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, - 0x22, 0xb5, 0x01, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, - 0x12, 0x14, 0x0a, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x50, 0x0a, 0x12, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, - 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, - 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x4f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x10, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x69, 0x7a, - 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x86, 0x01, 0x0a, 0x11, 0x47, 0x65, 0x74, - 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, - 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, - 0x50, 0x0a, 0x12, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6f, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x76, 0x74, - 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x54, - 0x61, 0x62, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, - 0x10, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x22, 0x3f, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x07, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, - 0x69, 0x6e, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x07, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x73, 0x22, 0x8d, 0x01, 0x0a, 0x23, 0x47, 0x65, 0x74, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, - 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, + 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x39, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x47, 0x61, + 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x05, 0x67, + 0x61, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x76, 0x74, 0x61, + 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x56, 0x54, 0x47, 0x61, 0x74, 0x65, 0x52, 0x05, 0x67, 0x61, 0x74, + 0x65, 0x73, 0x22, 0x4f, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, + 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, + 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x22, 0x36, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x6b, - 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, - 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x6b, 0x65, 0x79, - 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x0e, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x53, 0x68, 0x61, 0x72, - 0x64, 0x73, 0x22, 0x85, 0x01, 0x0a, 0x24, 0x47, 0x65, 0x74, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, - 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, 0x15, 0x72, - 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x76, 0x74, 0x61, - 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, - 0x64, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x14, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x68, 0x0a, 0x15, 0x47, 0x65, - 0x74, 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, - 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, - 0x0a, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x63, - 0x65, 0x6c, 0x6c, 0x73, 0x22, 0x4f, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x4b, 0x65, - 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, - 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, - 0x14, 0x0a, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, - 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x22, 0xd7, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, - 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x57, 0x0a, 0x0d, 0x73, 0x72, 0x76, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, - 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x72, 0x76, 0x4b, 0x65, - 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x73, 0x72, - 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x1a, 0x63, 0x0a, 0x11, 0x53, 0x72, - 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 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, 0x38, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x22, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x47, 0x65, 0x74, + 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x47, 0x0a, 0x14, 0x47, + 0x65, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, + 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x73, 0x22, 0xb5, 0x01, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, + 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, + 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x50, 0x0a, 0x12, 0x74, 0x61, + 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, + 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, + 0x69, 0x7a, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x10, 0x74, 0x61, 0x62, 0x6c, + 0x65, 0x53, 0x69, 0x7a, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x86, 0x01, 0x0a, + 0x11, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x49, 0x64, 0x73, 0x12, 0x50, 0x0a, 0x12, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x69, 0x7a, + 0x65, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x22, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x4f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x52, 0x10, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x4f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x3f, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x07, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x76, + 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x07, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x22, 0xed, 0x01, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x53, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x5d, 0x0a, 0x10, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x32, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x52, 0x0f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x73, 0x1a, 0x70, 0x0a, 0x0e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, + 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x3f, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, + 0x74, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x64, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x11, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, + 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x18, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x8d, 0x01, 0x0a, + 0x23, 0x47, 0x65, 0x74, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, + 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, + 0x73, 0x68, 0x61, 0x72, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x6b, 0x65, + 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x73, 0x22, 0x85, 0x01, 0x0a, + 0x24, 0x47, 0x65, 0x74, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, 0x15, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, + 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x14, + 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x73, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x68, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x4b, 0x65, + 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, + 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, + 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x65, 0x6c, 0x6c, + 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x22, 0x4f, + 0x0a, 0x16, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, + 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, + 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x65, 0x6c, + 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x22, + 0xd7, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x0d, 0x73, + 0x72, 0x76, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, - 0x49, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, - 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x65, 0x6c, 0x6c, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x65, 0x6c, 0x6c, 0x22, 0x4e, 0x0a, 0x15, 0x47, 0x65, - 0x74, 0x53, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x73, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x73, 0x1a, 0x63, 0x0a, 0x11, 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, + 0x61, 0x63, 0x65, 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, 0x38, 0x0a, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x76, 0x74, 0x63, + 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x49, 0x0a, 0x14, 0x47, 0x65, 0x74, + 0x53, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, + 0x12, 0x12, 0x0a, 0x04, 0x63, 0x65, 0x6c, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x63, 0x65, 0x6c, 0x6c, 0x22, 0x4e, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x56, 0x53, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, + 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x14, + 0x0a, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x63, + 0x65, 0x6c, 0x6c, 0x73, 0x22, 0x51, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x56, 0x53, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, + 0x0a, 0x0d, 0x73, 0x72, 0x76, 0x5f, 0x76, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, + 0x53, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x0b, 0x73, 0x72, 0x76, 0x56, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x22, 0x81, 0x01, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x53, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x4f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, + 0x74, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, + 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x73, 0x12, 0x3b, + 0x0a, 0x1a, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x6e, 0x6f, 0x6e, 0x5f, 0x73, 0x65, + 0x72, 0x76, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x17, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x4e, 0x6f, 0x6e, 0x53, 0x65, + 0x72, 0x76, 0x69, 0x6e, 0x67, 0x53, 0x68, 0x61, 0x72, 0x64, 0x73, 0x22, 0x60, 0x0a, 0x10, 0x47, + 0x65, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, + 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, + 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1f, 0x0a, 0x0b, + 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x34, 0x0a, + 0x11, 0x47, 0x65, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x49, 0x64, 0x73, 0x22, 0x3f, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x07, 0x74, 0x61, 0x62, + 0x6c, 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x76, 0x74, 0x61, + 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x07, 0x74, 0x61, 0x62, + 0x6c, 0x65, 0x74, 0x73, 0x22, 0x4b, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x54, 0x6f, 0x70, 0x6f, 0x6c, + 0x6f, 0x67, 0x79, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, + 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, + 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, + 0x68, 0x22, 0x4e, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, + 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x22, 0x35, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, + 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x44, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x56, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x2d, 0x0a, 0x09, 0x76, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x56, 0x53, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x52, 0x08, 0x76, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x22, 0x34, + 0x0a, 0x11, 0x47, 0x65, 0x74, 0x56, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, - 0x72, 0x49, 0x64, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x22, 0x51, 0x0a, 0x16, 0x47, 0x65, - 0x74, 0x53, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x0d, 0x73, 0x72, 0x76, 0x5f, 0x76, 0x5f, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x76, 0x74, - 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x52, 0x0b, 0x73, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x22, 0x81, 0x01, - 0x0a, 0x19, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x54, 0x61, 0x62, 0x6c, 0x65, - 0x53, 0x69, 0x7a, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x61, - 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x53, - 0x69, 0x7a, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x1a, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, - 0x6e, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x68, 0x61, 0x72, - 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, - 0x65, 0x4e, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x6e, 0x67, 0x53, 0x68, 0x61, 0x72, 0x64, - 0x73, 0x22, 0x60, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, - 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, - 0x61, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, - 0x49, 0x64, 0x73, 0x22, 0x34, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, - 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, - 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x3f, 0x0a, 0x12, 0x47, 0x65, 0x74, - 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x29, 0x0a, 0x07, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x0f, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, - 0x74, 0x52, 0x07, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x22, 0x4b, 0x0a, 0x16, 0x47, 0x65, - 0x74, 0x54, 0x6f, 0x70, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, - 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x22, 0x4e, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x56, 0x53, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, + 0x72, 0x49, 0x64, 0x73, 0x22, 0x3f, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x56, 0x74, 0x63, 0x74, 0x6c, + 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x07, 0x76, 0x74, + 0x63, 0x74, 0x6c, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x76, 0x74, + 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x56, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x52, 0x07, 0x76, 0x74, + 0x63, 0x74, 0x6c, 0x64, 0x73, 0x22, 0x84, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, + 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, - 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x35, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x56, 0x53, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, - 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x44, - 0x0a, 0x13, 0x47, 0x65, 0x74, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x09, 0x76, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, - 0x69, 0x6e, 0x2e, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x08, 0x76, 0x53, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x73, 0x22, 0x34, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x56, 0x74, 0x63, 0x74, 0x6c, - 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, - 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, - 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x3f, 0x0a, 0x12, 0x47, 0x65, - 0x74, 0x56, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x29, 0x0a, 0x07, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0f, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x56, 0x74, 0x63, 0x74, - 0x6c, 0x64, 0x52, 0x07, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x73, 0x22, 0x84, 0x01, 0x0a, 0x12, - 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x61, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x22, 0xa0, 0x01, 0x0a, + 0x13, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, + 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x6b, + 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, + 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x22, + 0xe1, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x67, 0x0a, 0x14, 0x77, 0x6f, 0x72, 0x6b, + 0x66, 0x6c, 0x6f, 0x77, 0x73, 0x5f, 0x62, 0x79, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, + 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x73, 0x42, + 0x79, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x12, 0x77, + 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x73, 0x42, 0x79, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, + 0x72, 0x1a, 0x60, 0x0a, 0x17, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x73, 0x42, 0x79, + 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2f, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, + 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x57, + 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x02, 0x38, 0x01, 0x22, 0x80, 0x01, 0x0a, 0x1c, 0x4c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x53, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, + 0x72, 0x49, 0x64, 0x12, 0x41, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, + 0x2e, 0x4c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x61, 0x0a, 0x11, 0x50, 0x69, 0x6e, 0x67, 0x54, 0x61, + 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x05, 0x61, + 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, + 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, + 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, + 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, + 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x58, 0x0a, 0x12, 0x50, 0x69, 0x6e, + 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, + 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, + 0x74, 0x65, 0x72, 0x22, 0x7e, 0x0a, 0x1b, 0x50, 0x6c, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x46, 0x61, + 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, - 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x12, 0x0a, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4f, 0x6e, - 0x6c, 0x79, 0x22, 0xa0, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, - 0x6f, 0x77, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, - 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x61, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x1c, 0x0a, 0x09, - 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x69, 0x67, - 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, 0x04, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x4b, 0x65, 0x79, 0x73, - 0x70, 0x61, 0x63, 0x65, 0x73, 0x22, 0xe1, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, - 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x67, - 0x0a, 0x14, 0x77, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x73, 0x5f, 0x62, 0x79, 0x5f, 0x63, - 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x76, - 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, - 0x6f, 0x77, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x57, 0x6f, 0x72, 0x6b, - 0x66, 0x6c, 0x6f, 0x77, 0x73, 0x42, 0x79, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x52, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x73, 0x42, 0x79, - 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x1a, 0x60, 0x0a, 0x17, 0x57, 0x6f, 0x72, 0x6b, 0x66, - 0x6c, 0x6f, 0x77, 0x73, 0x42, 0x79, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2f, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, - 0x75, 0x73, 0x74, 0x65, 0x72, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x73, 0x52, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x61, 0x0a, 0x11, 0x50, 0x69, 0x6e, - 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, - 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, - 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, - 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, - 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x58, 0x0a, 0x12, - 0x50, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x64, 0x12, 0x40, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x50, + 0x6c, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x68, + 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x22, 0xe6, 0x01, 0x0a, 0x1c, 0x50, 0x6c, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x46, + 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, + 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, + 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x68, 0x61, + 0x72, 0x64, 0x12, 0x40, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x64, 0x5f, 0x70, + 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, + 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, + 0x69, 0x61, 0x73, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x64, 0x50, 0x72, 0x69, + 0x6d, 0x61, 0x72, 0x79, 0x12, 0x26, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x05, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6c, 0x6f, 0x67, 0x75, 0x74, 0x69, 0x6c, 0x2e, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x93, 0x01, 0x0a, + 0x1b, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x47, 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, + 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, + 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, + 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x12, 0x23, 0x0a, + 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x50, 0x61, 0x72, 0x74, 0x69, + 0x61, 0x6c, 0x22, 0x36, 0x0a, 0x1c, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x4b, 0x65, 0x79, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, - 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, - 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, - 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x22, 0x7e, 0x0a, 0x1b, 0x50, 0x6c, 0x61, 0x6e, 0x6e, 0x65, - 0x64, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x40, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, - 0x61, 0x2e, 0x50, 0x6c, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x70, 0x61, 0x72, 0x65, 0x6e, - 0x74, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x6f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xe6, 0x01, 0x0a, 0x1c, 0x50, 0x6c, 0x61, 0x6e, 0x6e, - 0x65, 0x64, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, - 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, - 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, - 0x74, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, - 0x14, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x73, 0x68, 0x61, 0x72, 0x64, 0x12, 0x40, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, - 0x64, 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, - 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x64, - 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x26, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6c, 0x6f, 0x67, 0x75, 0x74, 0x69, - 0x6c, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, - 0x93, 0x01, 0x0a, 0x1b, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, - 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x65, - 0x6c, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, - 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, - 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x50, 0x61, - 0x72, 0x74, 0x69, 0x61, 0x6c, 0x22, 0x36, 0x0a, 0x1c, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, - 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x63, 0x0a, - 0x13, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, - 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, - 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, - 0x64, 0x73, 0x22, 0x5a, 0x0a, 0x14, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x53, 0x74, 0x61, - 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, - 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x22, 0x9f, - 0x02, 0x0a, 0x14, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x73, - 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, - 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x73, 0x12, 0x2f, - 0x0a, 0x07, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, - 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x07, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x12, - 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, - 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, - 0x63, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x77, 0x61, 0x69, 0x74, 0x50, - 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x63, 0x6c, 0x75, - 0x64, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0e, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, - 0x22, 0xad, 0x04, 0x0a, 0x15, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x58, 0x0a, 0x10, 0x6b, 0x65, - 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, - 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x52, 0x0f, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x73, 0x12, 0x4f, 0x0a, 0x0d, 0x73, 0x68, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x76, 0x74, - 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x68, 0x61, 0x72, - 0x64, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0c, 0x73, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x52, 0x0a, 0x0e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, - 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, - 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x54, 0x61, - 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0d, 0x74, 0x61, 0x62, 0x6c, - 0x65, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x1a, 0x67, 0x0a, 0x0e, 0x4b, 0x65, 0x79, - 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2d, 0x0a, 0x08, 0x6b, - 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, - 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, - 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x65, 0x76, - 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6c, 0x6f, 0x67, - 0x75, 0x74, 0x69, 0x6c, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x73, 0x1a, 0x5b, 0x0a, 0x0b, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x12, 0x24, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x68, 0x61, 0x72, 0x64, - 0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x12, 0x26, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x63, 0x0a, 0x13, 0x52, 0x65, + 0x66, 0x72, 0x65, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, + 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1f, + 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, + 0x5a, 0x0a, 0x14, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x22, 0x9f, 0x02, 0x0a, 0x14, + 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, + 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x73, + 0x68, 0x61, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x6b, 0x65, 0x79, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x73, 0x12, 0x2f, 0x0a, 0x07, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, + 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, + 0x69, 0x61, 0x73, 0x52, 0x07, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, + 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x20, 0x0a, + 0x0b, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x12, + 0x23, 0x0a, 0x0d, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x77, 0x61, 0x69, 0x74, 0x50, 0x6f, 0x73, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, + 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x69, + 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x22, 0xad, 0x04, + 0x0a, 0x15, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x58, 0x0a, 0x10, 0x6b, 0x65, 0x79, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x2d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x6c, 0x6f, + 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x52, 0x0f, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x73, 0x12, 0x4f, 0x0a, 0x0d, 0x73, 0x68, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, + 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0c, 0x73, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x73, 0x12, 0x52, 0x0a, 0x0e, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, 0x72, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x76, 0x74, 0x61, + 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, + 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0d, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x1a, 0x67, 0x0a, 0x0e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2d, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x76, 0x74, 0x61, + 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x08, 0x6b, + 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6c, 0x6f, 0x67, 0x75, 0x74, 0x69, 0x6c, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x1a, - 0x4f, 0x0a, 0x0c, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, - 0x27, 0x0a, 0x06, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x0f, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, - 0x52, 0x06, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x22, 0xdb, 0x01, 0x0a, 0x18, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, - 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, - 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x12, 0x23, - 0x0a, 0x0d, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x77, 0x61, 0x69, 0x74, 0x50, 0x6f, 0x73, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x70, - 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x69, 0x6e, - 0x63, 0x6c, 0x75, 0x64, 0x65, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x20, 0x0a, 0x0b, - 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x22, 0x43, - 0x0a, 0x19, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x68, - 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6c, 0x6f, - 0x67, 0x75, 0x74, 0x69, 0x6c, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x73, 0x22, 0x75, 0x0a, 0x25, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x61, - 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x05, - 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, - 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, - 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, - 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, - 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0xb7, 0x01, 0x0a, 0x26, 0x52, - 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x12, 0x2f, 0x0a, 0x07, 0x70, 0x72, 0x69, 0x6d, 0x61, - 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, + 0x5b, 0x0a, 0x0b, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x24, + 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, + 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x05, 0x73, + 0x68, 0x61, 0x72, 0x64, 0x12, 0x26, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6c, 0x6f, 0x67, 0x75, 0x74, 0x69, 0x6c, 0x2e, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x4f, 0x0a, 0x0c, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x27, 0x0a, 0x06, + 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x76, + 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x06, 0x74, + 0x61, 0x62, 0x6c, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xdb, 0x01, + 0x0a, 0x18, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x68, + 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, + 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x77, + 0x61, 0x69, 0x74, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x77, 0x61, 0x69, 0x74, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x70, 0x72, 0x69, 0x6d, + 0x61, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x69, 0x6e, 0x63, 0x6c, 0x75, + 0x64, 0x65, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, + 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, + 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x22, 0x43, 0x0a, 0x19, 0x52, + 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x68, 0x61, 0x72, 0x64, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6c, 0x6f, 0x67, 0x75, 0x74, + 0x69, 0x6c, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, + 0x22, 0x75, 0x0a, 0x25, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x61, 0x62, 0x6c, 0x65, + 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, + 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, - 0x07, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, - 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, - 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, - 0x73, 0x74, 0x65, 0x72, 0x22, 0x9e, 0x01, 0x0a, 0x19, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4b, - 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x43, 0x65, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, - 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x12, 0x0a, - 0x04, 0x63, 0x65, 0x6c, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x65, 0x6c, - 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x75, 0x72, - 0x73, 0x69, 0x76, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x72, 0x65, 0x63, 0x75, - 0x72, 0x73, 0x69, 0x76, 0x65, 0x22, 0x34, 0x0a, 0x1a, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4b, - 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x43, 0x65, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x65, 0x0a, 0x15, 0x52, - 0x75, 0x6e, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, - 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, - 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, - 0x64, 0x73, 0x22, 0x5c, 0x0a, 0x16, 0x52, 0x75, 0x6e, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, - 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, - 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, - 0x22, 0x62, 0x0a, 0x12, 0x53, 0x65, 0x74, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x6e, 0x6c, 0x79, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, - 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, - 0x69, 0x61, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, - 0x72, 0x49, 0x64, 0x73, 0x22, 0x15, 0x0a, 0x13, 0x53, 0x65, 0x74, 0x52, 0x65, 0x61, 0x64, 0x4f, - 0x6e, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x63, 0x0a, 0x13, 0x53, - 0x65, 0x74, 0x52, 0x65, 0x61, 0x64, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, - 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, - 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, - 0x22, 0x16, 0x0a, 0x14, 0x53, 0x65, 0x74, 0x52, 0x65, 0x61, 0x64, 0x57, 0x72, 0x69, 0x74, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x67, 0x0a, 0x17, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, - 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, - 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, - 0x73, 0x22, 0x5e, 0x0a, 0x18, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, + 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, + 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0xb7, 0x01, 0x0a, 0x26, 0x52, 0x65, 0x66, 0x72, + 0x65, 0x73, 0x68, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, + 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, + 0x68, 0x61, 0x72, 0x64, 0x12, 0x2f, 0x0a, 0x07, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, + 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x07, 0x70, 0x72, + 0x69, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, - 0x72, 0x22, 0x66, 0x0a, 0x16, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x05, 0x61, - 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, - 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, - 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, - 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, - 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x5d, 0x0a, 0x17, 0x53, 0x74, 0x6f, - 0x70, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x07, - 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, - 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, - 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x22, 0x6f, 0x0a, 0x1f, 0x54, 0x61, 0x62, 0x6c, - 0x65, 0x74, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x50, 0x72, 0x6f, 0x6d, - 0x6f, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x05, 0x61, - 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, - 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, - 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, - 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, - 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0xf0, 0x01, 0x0a, 0x20, 0x54, 0x61, - 0x62, 0x6c, 0x65, 0x74, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x50, 0x72, - 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, - 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, - 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, - 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, - 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x12, 0x36, 0x0a, 0x0b, - 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, - 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x0a, 0x6e, 0x65, 0x77, 0x50, 0x72, 0x69, - 0x6d, 0x61, 0x72, 0x79, 0x12, 0x36, 0x0a, 0x0b, 0x6f, 0x6c, 0x64, 0x5f, 0x70, 0x72, 0x69, 0x6d, - 0x61, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, - 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, - 0x52, 0x0a, 0x6f, 0x6c, 0x64, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x22, 0x71, 0x0a, 0x21, - 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x6c, 0x79, - 0x52, 0x65, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x72, 0x22, 0x9e, 0x01, 0x0a, 0x19, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4b, 0x65, 0x79, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x43, 0x65, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, + 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x65, + 0x6c, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x65, 0x6c, 0x6c, 0x12, 0x14, + 0x0a, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x66, + 0x6f, 0x72, 0x63, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, 0x76, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x69, + 0x76, 0x65, 0x22, 0x34, 0x0a, 0x1a, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4b, 0x65, 0x79, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x43, 0x65, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x7e, 0x0a, 0x1b, 0x52, 0x65, 0x74, 0x72, + 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, + 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x40, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, + 0x61, 0x74, 0x61, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, + 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, + 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x65, 0x0a, 0x15, 0x52, 0x75, 0x6e, 0x48, + 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, - 0x53, 0x0a, 0x0f, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, - 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, - 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, - 0x6c, 0x65, 0x74, 0x73, 0x22, 0x77, 0x0a, 0x17, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, - 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x5c, 0x0a, 0x16, 0x52, 0x75, 0x6e, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, + 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, + 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x22, 0x62, 0x0a, + 0x12, 0x53, 0x65, 0x74, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x6e, 0x6c, 0x79, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, + 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, + 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, + 0x73, 0x22, 0x15, 0x0a, 0x13, 0x53, 0x65, 0x74, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x6e, 0x6c, 0x79, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x63, 0x0a, 0x13, 0x53, 0x65, 0x74, 0x52, + 0x65, 0x61, 0x64, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, + 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, + 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1f, 0x0a, 0x0b, + 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x16, 0x0a, + 0x14, 0x53, 0x65, 0x74, 0x52, 0x65, 0x61, 0x64, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x67, 0x0a, 0x17, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, + 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1f, 0x0a, + 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x5e, + 0x0a, 0x18, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, + 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x22, 0x66, + 0x0a, 0x16, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, + 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, + 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, + 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x5d, 0x0a, 0x17, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x07, 0x63, 0x6c, 0x75, + 0x73, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x74, 0x61, + 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, 0x63, 0x6c, + 0x75, 0x73, 0x74, 0x65, 0x72, 0x22, 0x6f, 0x0a, 0x1f, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x45, + 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, + 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, + 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, + 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, + 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0xf0, 0x01, 0x0a, 0x20, 0x54, 0x61, 0x62, 0x6c, 0x65, + 0x74, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x50, 0x72, 0x6f, 0x6d, 0x6f, + 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2a, 0x0a, 0x07, 0x63, + 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, + 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x52, 0x07, + 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x12, 0x36, 0x0a, 0x0b, 0x6e, 0x65, 0x77, + 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, + 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, + 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x0a, 0x6e, 0x65, 0x77, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, + 0x79, 0x12, 0x36, 0x0a, 0x0b, 0x6f, 0x6c, 0x64, 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, + 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x0a, 0x6f, + 0x6c, 0x64, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x22, 0x71, 0x0a, 0x21, 0x54, 0x61, 0x62, + 0x6c, 0x65, 0x74, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x52, 0x65, 0x70, + 0x61, 0x72, 0x65, 0x6e, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, + 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, + 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, + 0x6c, 0x69, 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x63, + 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x53, 0x0a, 0x0f, + 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x21, + 0x0a, 0x0c, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, + 0x73, 0x22, 0x77, 0x0a, 0x17, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, + 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, + 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, + 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, + 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x69, 0x6e, 0x67, 0x5f, + 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, + 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x22, 0x5a, 0x0a, 0x1d, 0x56, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4b, 0x65, 0x79, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, + 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, + 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, + 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x8a, 0x01, 0x0a, 0x14, 0x56, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x69, - 0x6e, 0x67, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0b, 0x70, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x22, 0x5a, 0x0a, - 0x1d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4b, - 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, - 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, - 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x8a, 0x01, 0x0a, 0x14, 0x56, 0x61, - 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, - 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, - 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x68, - 0x61, 0x72, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x61, 0x62, 0x6c, - 0x65, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x69, 0x6e, 0x67, 0x54, - 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x22, 0x5b, 0x0a, 0x1e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, - 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, - 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, - 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x22, 0x6e, 0x0a, 0x1b, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x56, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, - 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, - 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x68, - 0x61, 0x72, 0x64, 0x22, 0x5a, 0x0a, 0x10, 0x56, 0x54, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, - 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, - 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x10, 0x0a, - 0x03, 0x73, 0x71, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x73, 0x71, 0x6c, 0x22, - 0x2f, 0x0a, 0x11, 0x56, 0x54, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x32, 0xd9, 0x21, 0x0a, 0x07, 0x56, 0x54, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x53, 0x0a, 0x0e, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x1e, - 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, - 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, - 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, - 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x00, 0x12, 0x4c, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, - 0x12, 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, - 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, - 0x55, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x12, 0x1e, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x21, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4f, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, - 0x53, 0x68, 0x61, 0x72, 0x64, 0x73, 0x12, 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, - 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, - 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x12, 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, - 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x6b, 0x0a, 0x16, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, - 0x6e, 0x63, 0x79, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, 0x64, - 0x12, 0x26, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x45, 0x6d, 0x65, 0x72, 0x67, - 0x65, 0x6e, 0x63, 0x79, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, - 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, + 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, + 0x61, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, + 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, + 0x65, 0x74, 0x73, 0x22, 0x5b, 0x0a, 0x1e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x56, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, + 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x22, 0x6e, 0x0a, 0x1b, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, + 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, + 0x61, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, + 0x22, 0x5a, 0x0a, 0x10, 0x56, 0x54, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1a, + 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x71, + 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x73, 0x71, 0x6c, 0x22, 0x2f, 0x0a, 0x11, + 0x56, 0x54, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xad, 0x27, + 0x0a, 0x07, 0x56, 0x54, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x12, 0x4c, 0x0a, 0x0b, 0x41, 0x70, 0x70, + 0x6c, 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, + 0x69, 0x6e, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, + 0x61, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x6a, 0x0a, 0x15, 0x43, 0x61, 0x6e, 0x63, 0x65, + 0x6c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x25, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x61, 0x6e, 0x63, 0x65, + 0x6c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, + 0x61, 0x74, 0x61, 0x2e, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x00, 0x12, 0x6d, 0x0a, 0x16, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x75, 0x70, 0x53, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x2e, + 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x75, 0x70, 0x53, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, + 0x61, 0x2e, 0x43, 0x6c, 0x65, 0x61, 0x6e, 0x75, 0x70, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, + 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x70, 0x0a, 0x17, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x2e, + 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, + 0x74, 0x61, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x00, 0x12, 0x53, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x65, + 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x1e, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, + 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, + 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4c, 0x0a, 0x0b, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x12, 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, + 0x69, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, + 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x55, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x1e, 0x2e, 0x76, 0x74, 0x61, 0x64, + 0x6d, 0x69, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x76, 0x74, 0x63, 0x74, + 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4f, + 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x73, 0x12, 0x1c, + 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, + 0x68, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x76, + 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, + 0x68, 0x61, 0x72, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, + 0x4d, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x12, + 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, + 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, + 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x6b, + 0x0a, 0x16, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x46, 0x61, 0x69, 0x6c, 0x6f, + 0x76, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, 0x64, 0x12, 0x26, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x45, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x46, 0x61, 0x69, 0x6c, - 0x6f, 0x76, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x00, 0x12, 0x3b, 0x0a, 0x0a, 0x46, 0x69, 0x6e, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x12, 0x1a, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x46, 0x69, 0x6e, 0x64, - 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0f, 0x2e, - 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x00, - 0x12, 0x47, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x12, 0x1a, - 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x61, 0x63, 0x6b, - 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x76, 0x74, 0x61, - 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x0c, 0x47, 0x65, 0x74, - 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x12, 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, - 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, - 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x56, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x43, - 0x65, 0x6c, 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x12, 0x1f, 0x2e, 0x76, 0x74, - 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x65, 0x6c, 0x6c, 0x73, 0x41, 0x6c, - 0x69, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x76, - 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x65, 0x6c, 0x6c, 0x73, 0x41, - 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, - 0x12, 0x4a, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x12, - 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, - 0x73, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x76, - 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, - 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x52, 0x0a, 0x0d, - 0x47, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x2e, - 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x6c, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x76, - 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x6c, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, - 0x12, 0x41, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x47, 0x61, 0x74, 0x65, 0x73, 0x12, 0x18, 0x2e, 0x76, - 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x61, 0x74, 0x65, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, - 0x2e, 0x47, 0x65, 0x74, 0x47, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, - 0x63, 0x65, 0x12, 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, - 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x11, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, - 0x63, 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x73, 0x12, 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, - 0x65, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, - 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x12, 0x19, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0f, 0x2e, 0x76, 0x74, - 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x00, 0x12, 0x47, - 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x12, 0x1a, 0x2e, 0x76, - 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, - 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x7d, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x53, 0x68, - 0x61, 0x72, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, - 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, - 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, - 0x47, 0x65, 0x74, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x56, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, - 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x1e, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, - 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, - 0x64, 0x61, 0x74, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x56, - 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, - 0x73, 0x12, 0x1f, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, - 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, - 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, - 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x1d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, - 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, - 0x2e, 0x53, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x00, 0x12, 0x53, 0x0a, - 0x0e, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x12, - 0x1e, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, - 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x1f, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, - 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x00, 0x12, 0x39, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x12, - 0x19, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x62, - 0x6c, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0f, 0x2e, 0x76, 0x74, 0x61, - 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x22, 0x00, 0x12, 0x47, 0x0a, - 0x0a, 0x47, 0x65, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x12, 0x1a, 0x2e, 0x76, 0x74, - 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, - 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x58, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x54, 0x6f, 0x70, - 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1f, 0x2e, 0x76, 0x74, 0x61, 0x64, - 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x6f, 0x70, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x50, - 0x61, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x76, 0x74, 0x63, - 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x6f, 0x70, 0x6f, 0x6c, 0x6f, - 0x67, 0x79, 0x50, 0x61, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, - 0x12, 0x3c, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x1a, - 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x53, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x76, 0x74, 0x61, - 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x00, 0x12, 0x4a, - 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x12, 0x1b, 0x2e, - 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x53, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x76, 0x74, 0x61, - 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x47, 0x0a, 0x0a, 0x47, 0x65, - 0x74, 0x56, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x73, 0x12, 0x1a, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, - 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, - 0x65, 0x74, 0x56, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, - 0x6f, 0x77, 0x12, 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, - 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x11, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, - 0x6f, 0x77, 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x66, - 0x6c, 0x6f, 0x77, 0x73, 0x12, 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, - 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, - 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x00, 0x12, 0x47, 0x0a, 0x0a, 0x50, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, - 0x74, 0x12, 0x1a, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x50, 0x69, 0x6e, 0x67, - 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, - 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x50, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, - 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x65, 0x0a, 0x14, - 0x50, 0x6c, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x53, - 0x68, 0x61, 0x72, 0x64, 0x12, 0x24, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x50, - 0x6c, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x68, - 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x76, 0x74, 0x61, - 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x50, 0x6c, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x46, 0x61, 0x69, 0x6c, - 0x6f, 0x76, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x00, 0x12, 0x65, 0x0a, 0x14, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x4b, 0x65, - 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x12, 0x24, 0x2e, 0x76, 0x74, - 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x4b, 0x65, 0x79, - 0x73, 0x70, 0x61, 0x63, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x25, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x62, 0x75, - 0x69, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x0c, 0x52, 0x65, - 0x66, 0x72, 0x65, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x2e, 0x76, 0x74, 0x61, - 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, - 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x83, 0x01, 0x0a, 0x1e, 0x52, 0x65, - 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x2e, 0x2e, 0x76, - 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x61, - 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x76, - 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x61, - 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, - 0x50, 0x0a, 0x0d, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, - 0x12, 0x1d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x6c, 0x6f, 0x61, - 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x1e, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, - 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x00, 0x12, 0x5c, 0x0a, 0x11, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x53, 0x68, 0x61, 0x72, 0x64, 0x12, 0x21, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, - 0x2e, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x68, 0x61, - 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x76, 0x74, 0x61, 0x64, - 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, - 0x5f, 0x0a, 0x12, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x43, 0x65, 0x6c, 0x6c, 0x12, 0x22, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, - 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x43, 0x65, - 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x76, 0x74, 0x61, 0x64, - 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, - 0x63, 0x65, 0x43, 0x65, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, - 0x12, 0x53, 0x0a, 0x0e, 0x52, 0x75, 0x6e, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, - 0x63, 0x6b, 0x12, 0x1e, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x75, 0x6e, - 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x75, 0x6e, - 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4a, 0x0a, 0x0b, 0x53, 0x65, 0x74, 0x52, 0x65, 0x61, 0x64, - 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, - 0x65, 0x74, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x6e, 0x6c, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x52, - 0x65, 0x61, 0x64, 0x4f, 0x6e, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x00, 0x12, 0x4d, 0x0a, 0x0c, 0x53, 0x65, 0x74, 0x52, 0x65, 0x61, 0x64, 0x57, 0x72, 0x69, 0x74, - 0x65, 0x12, 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x52, - 0x65, 0x61, 0x64, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x1d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x52, 0x65, 0x61, - 0x64, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, - 0x12, 0x59, 0x0a, 0x10, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, - 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, - 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x56, 0x0a, 0x0f, 0x53, - 0x74, 0x6f, 0x70, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, - 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x70, - 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x20, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, - 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x00, 0x12, 0x71, 0x0a, 0x18, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x45, 0x78, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x64, 0x12, - 0x28, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, - 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, - 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x76, 0x74, 0x61, 0x64, - 0x6d, 0x69, 0x6e, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, - 0x61, 0x6c, 0x6c, 0x79, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, - 0x74, 0x65, 0x12, 0x18, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x56, 0x61, 0x6c, - 0x69, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x76, - 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5b, 0x0a, 0x10, 0x56, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, - 0x20, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, - 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x23, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x56, 0x61, - 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x6d, 0x0a, 0x16, 0x56, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, - 0x63, 0x65, 0x12, 0x26, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x56, 0x61, 0x6c, + 0x6f, 0x76, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x27, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x45, 0x6d, 0x65, 0x72, 0x67, + 0x65, 0x6e, 0x63, 0x79, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, + 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3b, 0x0a, 0x0a, 0x46, + 0x69, 0x6e, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x1a, 0x2e, 0x76, 0x74, 0x61, 0x64, + 0x6d, 0x69, 0x6e, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0f, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x00, 0x12, 0x47, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x42, + 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x12, 0x1a, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, + 0x2e, 0x47, 0x65, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, + 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x00, 0x12, 0x4d, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, + 0x73, 0x12, 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x43, + 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x1d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x65, 0x6c, + 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, + 0x12, 0x56, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x43, 0x65, 0x6c, 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, + 0x73, 0x65, 0x73, 0x12, 0x1f, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, + 0x74, 0x43, 0x65, 0x6c, 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, + 0x65, 0x74, 0x43, 0x65, 0x6c, 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4a, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x43, + 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x12, 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, + 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, + 0x65, 0x74, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x00, 0x12, 0x52, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x6c, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, + 0x47, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, + 0x2e, 0x47, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x41, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x47, + 0x61, 0x74, 0x65, 0x73, 0x12, 0x18, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, + 0x65, 0x74, 0x47, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, + 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x61, 0x74, 0x65, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0b, 0x47, + 0x65, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x1b, 0x2e, 0x76, 0x74, 0x61, + 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, + 0x6e, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x0c, + 0x47, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0x1c, 0x2e, 0x76, + 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x76, 0x74, 0x61, + 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x09, 0x47, + 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x19, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, + 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x0f, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x22, 0x00, 0x12, 0x47, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x73, 0x12, 0x1a, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, + 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, + 0x62, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x23, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, + 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x76, 0x74, + 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, + 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x00, 0x12, 0x7d, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, + 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x12, 0x2c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, + 0x74, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x2d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, + 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, + 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x56, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x12, 0x1e, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, + 0x65, 0x74, 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, + 0x2e, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x56, 0x0a, 0x0f, 0x47, 0x65, + 0x74, 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0x1f, 0x2e, + 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x4b, 0x65, + 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, + 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x4b, + 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x12, 0x1d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, + 0x74, 0x53, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x72, 0x76, + 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x00, 0x12, 0x53, 0x0a, 0x0e, 0x47, 0x65, 0x74, + 0x53, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x12, 0x1e, 0x2e, 0x76, 0x74, + 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x76, 0x74, + 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, + 0x0a, 0x09, 0x47, 0x65, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x12, 0x19, 0x2e, 0x76, 0x74, + 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0f, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, + 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x22, 0x00, 0x12, 0x47, 0x0a, 0x0a, 0x47, 0x65, 0x74, + 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x12, 0x1a, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, + 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, + 0x74, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x58, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x54, 0x6f, 0x70, 0x6f, 0x6c, 0x6f, 0x67, + 0x79, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1f, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, + 0x47, 0x65, 0x74, 0x54, 0x6f, 0x70, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x50, 0x61, 0x74, 0x68, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, + 0x74, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x6f, 0x70, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x50, 0x61, + 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x0a, + 0x47, 0x65, 0x74, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x1a, 0x2e, 0x76, 0x74, 0x61, + 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, + 0x2e, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x00, 0x12, 0x4a, 0x0a, 0x0b, 0x47, 0x65, + 0x74, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x12, 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, + 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, + 0x2e, 0x47, 0x65, 0x74, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x47, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x56, 0x74, 0x63, + 0x74, 0x6c, 0x64, 0x73, 0x12, 0x1a, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, + 0x65, 0x74, 0x56, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x74, + 0x63, 0x74, 0x6c, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, + 0x3f, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x12, 0x1b, + 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, + 0x66, 0x6c, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x76, 0x74, + 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x22, 0x00, + 0x12, 0x4d, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x73, + 0x12, 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, + 0x72, 0x6b, 0x66, 0x6c, 0x6f, 0x77, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, + 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, + 0x66, 0x6c, 0x6f, 0x77, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, + 0x6a, 0x0a, 0x15, 0x4c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, + 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, + 0x69, 0x6e, 0x2e, 0x4c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, + 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x28, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x4c, 0x61, 0x75, 0x6e, + 0x63, 0x68, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x47, 0x0a, 0x0a, 0x50, + 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x12, 0x1a, 0x2e, 0x76, 0x74, 0x61, 0x64, + 0x6d, 0x69, 0x6e, 0x2e, 0x50, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, + 0x50, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x00, 0x12, 0x65, 0x0a, 0x14, 0x50, 0x6c, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x46, + 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, 0x64, 0x12, 0x24, 0x2e, 0x76, + 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x50, 0x6c, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x46, 0x61, + 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x50, 0x6c, 0x61, + 0x6e, 0x6e, 0x65, 0x64, 0x46, 0x61, 0x69, 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x68, 0x61, 0x72, + 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x65, 0x0a, 0x14, 0x52, + 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x47, 0x72, + 0x61, 0x70, 0x68, 0x12, 0x24, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, + 0x62, 0x75, 0x69, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x47, 0x72, 0x61, + 0x70, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x76, 0x74, 0x61, 0x64, + 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x0c, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x53, 0x74, 0x61, + 0x74, 0x65, 0x12, 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x66, + 0x72, 0x65, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x1d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, + 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x00, 0x12, 0x83, 0x01, 0x0a, 0x1e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x61, 0x62, + 0x6c, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x12, 0x2e, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, + 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, + 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x0d, 0x52, 0x65, 0x6c, 0x6f, 0x61, + 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x12, 0x1d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, + 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, + 0x6e, 0x2e, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x11, 0x52, 0x65, 0x6c, + 0x6f, 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x68, 0x61, 0x72, 0x64, 0x12, 0x21, + 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x22, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x6c, 0x6f, + 0x61, 0x64, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5f, 0x0a, 0x12, 0x52, 0x65, 0x6d, 0x6f, 0x76, + 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x43, 0x65, 0x6c, 0x6c, 0x12, 0x22, 0x2e, + 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x4b, 0x65, + 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x43, 0x65, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x23, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x43, 0x65, 0x6c, 0x6c, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x67, 0x0a, 0x14, 0x52, 0x65, 0x74, 0x72, + 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x24, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x79, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, + 0x74, 0x61, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x79, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4d, 0x69, + 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x00, 0x12, 0x53, 0x0a, 0x0e, 0x52, 0x75, 0x6e, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, + 0x65, 0x63, 0x6b, 0x12, 0x1e, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x75, + 0x6e, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x52, 0x75, + 0x6e, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4a, 0x0a, 0x0b, 0x53, 0x65, 0x74, 0x52, 0x65, 0x61, + 0x64, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x1b, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, + 0x53, 0x65, 0x74, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x6e, 0x6c, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x65, 0x74, + 0x52, 0x65, 0x61, 0x64, 0x4f, 0x6e, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x0c, 0x53, 0x65, 0x74, 0x52, 0x65, 0x61, 0x64, 0x57, 0x72, 0x69, + 0x74, 0x65, 0x12, 0x1c, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x65, 0x74, + 0x52, 0x65, 0x61, 0x64, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x1d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x52, 0x65, + 0x61, 0x64, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x00, 0x12, 0x59, 0x0a, 0x10, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, + 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, + 0x6e, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x56, 0x0a, 0x0f, + 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x1f, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x20, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x52, + 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x00, 0x12, 0x71, 0x0a, 0x18, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x45, 0x78, + 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x64, + 0x12, 0x28, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, + 0x74, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x50, 0x72, 0x6f, 0x6d, 0x6f, + 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x76, 0x74, 0x61, + 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x45, 0x78, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x50, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x08, 0x56, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x65, 0x12, 0x18, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x56, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, + 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5b, 0x0a, 0x10, + 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x12, 0x20, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x56, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x6d, 0x0a, 0x16, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4b, 0x65, 0x79, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x76, 0x74, 0x63, - 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x53, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x52, 0x0a, 0x0d, 0x56, 0x61, 0x6c, 0x69, 0x64, - 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x12, 0x1d, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, - 0x69, 0x6e, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, - 0x61, 0x74, 0x61, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, - 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x70, 0x0a, 0x17, 0x56, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x4b, 0x65, - 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x27, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, - 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x2a, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x56, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x73, 0x70, - 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x67, 0x0a, - 0x14, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x53, 0x68, 0x61, 0x72, 0x64, 0x12, 0x24, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, - 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, - 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x76, 0x74, + 0x61, 0x63, 0x65, 0x12, 0x26, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x56, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4b, 0x65, 0x79, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, - 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x09, 0x56, 0x54, 0x45, 0x78, 0x70, 0x6c, - 0x61, 0x69, 0x6e, 0x12, 0x19, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x56, 0x54, - 0x45, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, - 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x56, 0x54, 0x45, 0x78, 0x70, 0x6c, 0x61, - 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x26, 0x5a, 0x24, - 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, 0x76, 0x74, 0x61, - 0x64, 0x6d, 0x69, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x52, 0x0a, 0x0d, 0x56, 0x61, 0x6c, 0x69, + 0x64, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x12, 0x1d, 0x2e, 0x76, 0x74, 0x61, 0x64, + 0x6d, 0x69, 0x6e, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, 0x72, + 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, + 0x64, 0x61, 0x74, 0x61, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x53, 0x68, 0x61, + 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x70, 0x0a, 0x17, + 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x4b, + 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x27, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, + 0x6e, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x2a, 0x2e, 0x76, 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x56, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x67, + 0x0a, 0x14, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x12, 0x24, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, + 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x76, + 0x74, 0x63, 0x74, 0x6c, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x09, 0x56, 0x54, 0x45, 0x78, 0x70, + 0x6c, 0x61, 0x69, 0x6e, 0x12, 0x19, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x56, + 0x54, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x1a, 0x2e, 0x76, 0x74, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x2e, 0x56, 0x54, 0x45, 0x78, 0x70, 0x6c, + 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x26, 0x5a, + 0x24, 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, 0x76, 0x74, + 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -7330,361 +7987,410 @@ func file_vtadmin_proto_rawDescGZIP() []byte { } var file_vtadmin_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_vtadmin_proto_msgTypes = make([]protoimpl.MessageInfo, 111) +var file_vtadmin_proto_msgTypes = make([]protoimpl.MessageInfo, 121) var file_vtadmin_proto_goTypes = []interface{}{ - (Tablet_ServingState)(0), // 0: vtadmin.Tablet.ServingState - (*Cluster)(nil), // 1: vtadmin.Cluster - (*ClusterBackup)(nil), // 2: vtadmin.ClusterBackup - (*ClusterCellsAliases)(nil), // 3: vtadmin.ClusterCellsAliases - (*ClusterCellInfo)(nil), // 4: vtadmin.ClusterCellInfo - (*ClusterShardReplicationPosition)(nil), // 5: vtadmin.ClusterShardReplicationPosition - (*ClusterWorkflows)(nil), // 6: vtadmin.ClusterWorkflows - (*Keyspace)(nil), // 7: vtadmin.Keyspace - (*Schema)(nil), // 8: vtadmin.Schema - (*Shard)(nil), // 9: vtadmin.Shard - (*SrvVSchema)(nil), // 10: vtadmin.SrvVSchema - (*Tablet)(nil), // 11: vtadmin.Tablet - (*VSchema)(nil), // 12: vtadmin.VSchema - (*Vtctld)(nil), // 13: vtadmin.Vtctld - (*VTGate)(nil), // 14: vtadmin.VTGate - (*Workflow)(nil), // 15: vtadmin.Workflow - (*CreateKeyspaceRequest)(nil), // 16: vtadmin.CreateKeyspaceRequest - (*CreateKeyspaceResponse)(nil), // 17: vtadmin.CreateKeyspaceResponse - (*CreateShardRequest)(nil), // 18: vtadmin.CreateShardRequest - (*DeleteKeyspaceRequest)(nil), // 19: vtadmin.DeleteKeyspaceRequest - (*DeleteShardsRequest)(nil), // 20: vtadmin.DeleteShardsRequest - (*DeleteTabletRequest)(nil), // 21: vtadmin.DeleteTabletRequest - (*DeleteTabletResponse)(nil), // 22: vtadmin.DeleteTabletResponse - (*EmergencyFailoverShardRequest)(nil), // 23: vtadmin.EmergencyFailoverShardRequest - (*EmergencyFailoverShardResponse)(nil), // 24: vtadmin.EmergencyFailoverShardResponse - (*FindSchemaRequest)(nil), // 25: vtadmin.FindSchemaRequest - (*GetBackupsRequest)(nil), // 26: vtadmin.GetBackupsRequest - (*GetBackupsResponse)(nil), // 27: vtadmin.GetBackupsResponse - (*GetCellInfosRequest)(nil), // 28: vtadmin.GetCellInfosRequest - (*GetCellInfosResponse)(nil), // 29: vtadmin.GetCellInfosResponse - (*GetCellsAliasesRequest)(nil), // 30: vtadmin.GetCellsAliasesRequest - (*GetCellsAliasesResponse)(nil), // 31: vtadmin.GetCellsAliasesResponse - (*GetClustersRequest)(nil), // 32: vtadmin.GetClustersRequest - (*GetClustersResponse)(nil), // 33: vtadmin.GetClustersResponse - (*GetFullStatusRequest)(nil), // 34: vtadmin.GetFullStatusRequest - (*GetGatesRequest)(nil), // 35: vtadmin.GetGatesRequest - (*GetGatesResponse)(nil), // 36: vtadmin.GetGatesResponse - (*GetKeyspaceRequest)(nil), // 37: vtadmin.GetKeyspaceRequest - (*GetKeyspacesRequest)(nil), // 38: vtadmin.GetKeyspacesRequest - (*GetKeyspacesResponse)(nil), // 39: vtadmin.GetKeyspacesResponse - (*GetSchemaRequest)(nil), // 40: vtadmin.GetSchemaRequest - (*GetSchemasRequest)(nil), // 41: vtadmin.GetSchemasRequest - (*GetSchemasResponse)(nil), // 42: vtadmin.GetSchemasResponse - (*GetShardReplicationPositionsRequest)(nil), // 43: vtadmin.GetShardReplicationPositionsRequest - (*GetShardReplicationPositionsResponse)(nil), // 44: vtadmin.GetShardReplicationPositionsResponse - (*GetSrvKeyspaceRequest)(nil), // 45: vtadmin.GetSrvKeyspaceRequest - (*GetSrvKeyspacesRequest)(nil), // 46: vtadmin.GetSrvKeyspacesRequest - (*GetSrvKeyspacesResponse)(nil), // 47: vtadmin.GetSrvKeyspacesResponse - (*GetSrvVSchemaRequest)(nil), // 48: vtadmin.GetSrvVSchemaRequest - (*GetSrvVSchemasRequest)(nil), // 49: vtadmin.GetSrvVSchemasRequest - (*GetSrvVSchemasResponse)(nil), // 50: vtadmin.GetSrvVSchemasResponse - (*GetSchemaTableSizeOptions)(nil), // 51: vtadmin.GetSchemaTableSizeOptions - (*GetTabletRequest)(nil), // 52: vtadmin.GetTabletRequest - (*GetTabletsRequest)(nil), // 53: vtadmin.GetTabletsRequest - (*GetTabletsResponse)(nil), // 54: vtadmin.GetTabletsResponse - (*GetTopologyPathRequest)(nil), // 55: vtadmin.GetTopologyPathRequest - (*GetVSchemaRequest)(nil), // 56: vtadmin.GetVSchemaRequest - (*GetVSchemasRequest)(nil), // 57: vtadmin.GetVSchemasRequest - (*GetVSchemasResponse)(nil), // 58: vtadmin.GetVSchemasResponse - (*GetVtctldsRequest)(nil), // 59: vtadmin.GetVtctldsRequest - (*GetVtctldsResponse)(nil), // 60: vtadmin.GetVtctldsResponse - (*GetWorkflowRequest)(nil), // 61: vtadmin.GetWorkflowRequest - (*GetWorkflowsRequest)(nil), // 62: vtadmin.GetWorkflowsRequest - (*GetWorkflowsResponse)(nil), // 63: vtadmin.GetWorkflowsResponse - (*PingTabletRequest)(nil), // 64: vtadmin.PingTabletRequest - (*PingTabletResponse)(nil), // 65: vtadmin.PingTabletResponse - (*PlannedFailoverShardRequest)(nil), // 66: vtadmin.PlannedFailoverShardRequest - (*PlannedFailoverShardResponse)(nil), // 67: vtadmin.PlannedFailoverShardResponse - (*RebuildKeyspaceGraphRequest)(nil), // 68: vtadmin.RebuildKeyspaceGraphRequest - (*RebuildKeyspaceGraphResponse)(nil), // 69: vtadmin.RebuildKeyspaceGraphResponse - (*RefreshStateRequest)(nil), // 70: vtadmin.RefreshStateRequest - (*RefreshStateResponse)(nil), // 71: vtadmin.RefreshStateResponse - (*ReloadSchemasRequest)(nil), // 72: vtadmin.ReloadSchemasRequest - (*ReloadSchemasResponse)(nil), // 73: vtadmin.ReloadSchemasResponse - (*ReloadSchemaShardRequest)(nil), // 74: vtadmin.ReloadSchemaShardRequest - (*ReloadSchemaShardResponse)(nil), // 75: vtadmin.ReloadSchemaShardResponse - (*RefreshTabletReplicationSourceRequest)(nil), // 76: vtadmin.RefreshTabletReplicationSourceRequest - (*RefreshTabletReplicationSourceResponse)(nil), // 77: vtadmin.RefreshTabletReplicationSourceResponse - (*RemoveKeyspaceCellRequest)(nil), // 78: vtadmin.RemoveKeyspaceCellRequest - (*RemoveKeyspaceCellResponse)(nil), // 79: vtadmin.RemoveKeyspaceCellResponse - (*RunHealthCheckRequest)(nil), // 80: vtadmin.RunHealthCheckRequest - (*RunHealthCheckResponse)(nil), // 81: vtadmin.RunHealthCheckResponse - (*SetReadOnlyRequest)(nil), // 82: vtadmin.SetReadOnlyRequest - (*SetReadOnlyResponse)(nil), // 83: vtadmin.SetReadOnlyResponse - (*SetReadWriteRequest)(nil), // 84: vtadmin.SetReadWriteRequest - (*SetReadWriteResponse)(nil), // 85: vtadmin.SetReadWriteResponse - (*StartReplicationRequest)(nil), // 86: vtadmin.StartReplicationRequest - (*StartReplicationResponse)(nil), // 87: vtadmin.StartReplicationResponse - (*StopReplicationRequest)(nil), // 88: vtadmin.StopReplicationRequest - (*StopReplicationResponse)(nil), // 89: vtadmin.StopReplicationResponse - (*TabletExternallyPromotedRequest)(nil), // 90: vtadmin.TabletExternallyPromotedRequest - (*TabletExternallyPromotedResponse)(nil), // 91: vtadmin.TabletExternallyPromotedResponse - (*TabletExternallyReparentedRequest)(nil), // 92: vtadmin.TabletExternallyReparentedRequest - (*ValidateRequest)(nil), // 93: vtadmin.ValidateRequest - (*ValidateKeyspaceRequest)(nil), // 94: vtadmin.ValidateKeyspaceRequest - (*ValidateSchemaKeyspaceRequest)(nil), // 95: vtadmin.ValidateSchemaKeyspaceRequest - (*ValidateShardRequest)(nil), // 96: vtadmin.ValidateShardRequest - (*ValidateVersionKeyspaceRequest)(nil), // 97: vtadmin.ValidateVersionKeyspaceRequest - (*ValidateVersionShardRequest)(nil), // 98: vtadmin.ValidateVersionShardRequest - (*VTExplainRequest)(nil), // 99: vtadmin.VTExplainRequest - (*VTExplainResponse)(nil), // 100: vtadmin.VTExplainResponse - nil, // 101: vtadmin.ClusterCellsAliases.AliasesEntry - nil, // 102: vtadmin.Keyspace.ShardsEntry - nil, // 103: vtadmin.Schema.TableSizesEntry - (*Schema_ShardTableSize)(nil), // 104: vtadmin.Schema.ShardTableSize - (*Schema_TableSize)(nil), // 105: vtadmin.Schema.TableSize - nil, // 106: vtadmin.Schema.TableSize.ByShardEntry - nil, // 107: vtadmin.GetSrvKeyspacesResponse.SrvKeyspacesEntry - nil, // 108: vtadmin.GetWorkflowsResponse.WorkflowsByClusterEntry - (*ReloadSchemasResponse_KeyspaceResult)(nil), // 109: vtadmin.ReloadSchemasResponse.KeyspaceResult - (*ReloadSchemasResponse_ShardResult)(nil), // 110: vtadmin.ReloadSchemasResponse.ShardResult - (*ReloadSchemasResponse_TabletResult)(nil), // 111: vtadmin.ReloadSchemasResponse.TabletResult - (*mysqlctl.BackupInfo)(nil), // 112: mysqlctl.BackupInfo - (*topodata.CellInfo)(nil), // 113: topodata.CellInfo - (*vtctldata.ShardReplicationPositionsResponse)(nil), // 114: vtctldata.ShardReplicationPositionsResponse - (*vtctldata.Keyspace)(nil), // 115: vtctldata.Keyspace - (*tabletmanagerdata.TableDefinition)(nil), // 116: tabletmanagerdata.TableDefinition - (*vtctldata.Shard)(nil), // 117: vtctldata.Shard - (*vschema.SrvVSchema)(nil), // 118: vschema.SrvVSchema - (*topodata.Tablet)(nil), // 119: topodata.Tablet - (*vschema.Keyspace)(nil), // 120: vschema.Keyspace - (*vtctldata.Workflow)(nil), // 121: vtctldata.Workflow - (*vtctldata.CreateKeyspaceRequest)(nil), // 122: vtctldata.CreateKeyspaceRequest - (*vtctldata.CreateShardRequest)(nil), // 123: vtctldata.CreateShardRequest - (*vtctldata.DeleteKeyspaceRequest)(nil), // 124: vtctldata.DeleteKeyspaceRequest - (*vtctldata.DeleteShardsRequest)(nil), // 125: vtctldata.DeleteShardsRequest - (*topodata.TabletAlias)(nil), // 126: topodata.TabletAlias - (*vtctldata.EmergencyReparentShardRequest)(nil), // 127: vtctldata.EmergencyReparentShardRequest - (*logutil.Event)(nil), // 128: logutil.Event - (*vtctldata.GetBackupsRequest)(nil), // 129: vtctldata.GetBackupsRequest - (*vtctldata.PlannedReparentShardRequest)(nil), // 130: vtctldata.PlannedReparentShardRequest - (*topodata.CellsAlias)(nil), // 131: topodata.CellsAlias - (*vtctldata.GetSrvKeyspacesResponse)(nil), // 132: vtctldata.GetSrvKeyspacesResponse - (*vtctldata.CreateShardResponse)(nil), // 133: vtctldata.CreateShardResponse - (*vtctldata.DeleteKeyspaceResponse)(nil), // 134: vtctldata.DeleteKeyspaceResponse - (*vtctldata.DeleteShardsResponse)(nil), // 135: vtctldata.DeleteShardsResponse - (*vtctldata.GetFullStatusResponse)(nil), // 136: vtctldata.GetFullStatusResponse - (*vtctldata.GetTopologyPathResponse)(nil), // 137: vtctldata.GetTopologyPathResponse - (*vtctldata.ValidateResponse)(nil), // 138: vtctldata.ValidateResponse - (*vtctldata.ValidateKeyspaceResponse)(nil), // 139: vtctldata.ValidateKeyspaceResponse - (*vtctldata.ValidateSchemaKeyspaceResponse)(nil), // 140: vtctldata.ValidateSchemaKeyspaceResponse - (*vtctldata.ValidateShardResponse)(nil), // 141: vtctldata.ValidateShardResponse - (*vtctldata.ValidateVersionKeyspaceResponse)(nil), // 142: vtctldata.ValidateVersionKeyspaceResponse - (*vtctldata.ValidateVersionShardResponse)(nil), // 143: vtctldata.ValidateVersionShardResponse + (Tablet_ServingState)(0), // 0: vtadmin.Tablet.ServingState + (*Cluster)(nil), // 1: vtadmin.Cluster + (*ClusterBackup)(nil), // 2: vtadmin.ClusterBackup + (*ClusterCellsAliases)(nil), // 3: vtadmin.ClusterCellsAliases + (*ClusterCellInfo)(nil), // 4: vtadmin.ClusterCellInfo + (*ClusterShardReplicationPosition)(nil), // 5: vtadmin.ClusterShardReplicationPosition + (*ClusterWorkflows)(nil), // 6: vtadmin.ClusterWorkflows + (*Keyspace)(nil), // 7: vtadmin.Keyspace + (*Schema)(nil), // 8: vtadmin.Schema + (*SchemaMigration)(nil), // 9: vtadmin.SchemaMigration + (*Shard)(nil), // 10: vtadmin.Shard + (*SrvVSchema)(nil), // 11: vtadmin.SrvVSchema + (*Tablet)(nil), // 12: vtadmin.Tablet + (*VSchema)(nil), // 13: vtadmin.VSchema + (*Vtctld)(nil), // 14: vtadmin.Vtctld + (*VTGate)(nil), // 15: vtadmin.VTGate + (*Workflow)(nil), // 16: vtadmin.Workflow + (*ApplySchemaRequest)(nil), // 17: vtadmin.ApplySchemaRequest + (*CancelSchemaMigrationRequest)(nil), // 18: vtadmin.CancelSchemaMigrationRequest + (*CleanupSchemaMigrationRequest)(nil), // 19: vtadmin.CleanupSchemaMigrationRequest + (*CompleteSchemaMigrationRequest)(nil), // 20: vtadmin.CompleteSchemaMigrationRequest + (*CreateKeyspaceRequest)(nil), // 21: vtadmin.CreateKeyspaceRequest + (*CreateKeyspaceResponse)(nil), // 22: vtadmin.CreateKeyspaceResponse + (*CreateShardRequest)(nil), // 23: vtadmin.CreateShardRequest + (*DeleteKeyspaceRequest)(nil), // 24: vtadmin.DeleteKeyspaceRequest + (*DeleteShardsRequest)(nil), // 25: vtadmin.DeleteShardsRequest + (*DeleteTabletRequest)(nil), // 26: vtadmin.DeleteTabletRequest + (*DeleteTabletResponse)(nil), // 27: vtadmin.DeleteTabletResponse + (*EmergencyFailoverShardRequest)(nil), // 28: vtadmin.EmergencyFailoverShardRequest + (*EmergencyFailoverShardResponse)(nil), // 29: vtadmin.EmergencyFailoverShardResponse + (*FindSchemaRequest)(nil), // 30: vtadmin.FindSchemaRequest + (*GetBackupsRequest)(nil), // 31: vtadmin.GetBackupsRequest + (*GetBackupsResponse)(nil), // 32: vtadmin.GetBackupsResponse + (*GetCellInfosRequest)(nil), // 33: vtadmin.GetCellInfosRequest + (*GetCellInfosResponse)(nil), // 34: vtadmin.GetCellInfosResponse + (*GetCellsAliasesRequest)(nil), // 35: vtadmin.GetCellsAliasesRequest + (*GetCellsAliasesResponse)(nil), // 36: vtadmin.GetCellsAliasesResponse + (*GetClustersRequest)(nil), // 37: vtadmin.GetClustersRequest + (*GetClustersResponse)(nil), // 38: vtadmin.GetClustersResponse + (*GetFullStatusRequest)(nil), // 39: vtadmin.GetFullStatusRequest + (*GetGatesRequest)(nil), // 40: vtadmin.GetGatesRequest + (*GetGatesResponse)(nil), // 41: vtadmin.GetGatesResponse + (*GetKeyspaceRequest)(nil), // 42: vtadmin.GetKeyspaceRequest + (*GetKeyspacesRequest)(nil), // 43: vtadmin.GetKeyspacesRequest + (*GetKeyspacesResponse)(nil), // 44: vtadmin.GetKeyspacesResponse + (*GetSchemaRequest)(nil), // 45: vtadmin.GetSchemaRequest + (*GetSchemasRequest)(nil), // 46: vtadmin.GetSchemasRequest + (*GetSchemasResponse)(nil), // 47: vtadmin.GetSchemasResponse + (*GetSchemaMigrationsRequest)(nil), // 48: vtadmin.GetSchemaMigrationsRequest + (*GetSchemaMigrationsResponse)(nil), // 49: vtadmin.GetSchemaMigrationsResponse + (*GetShardReplicationPositionsRequest)(nil), // 50: vtadmin.GetShardReplicationPositionsRequest + (*GetShardReplicationPositionsResponse)(nil), // 51: vtadmin.GetShardReplicationPositionsResponse + (*GetSrvKeyspaceRequest)(nil), // 52: vtadmin.GetSrvKeyspaceRequest + (*GetSrvKeyspacesRequest)(nil), // 53: vtadmin.GetSrvKeyspacesRequest + (*GetSrvKeyspacesResponse)(nil), // 54: vtadmin.GetSrvKeyspacesResponse + (*GetSrvVSchemaRequest)(nil), // 55: vtadmin.GetSrvVSchemaRequest + (*GetSrvVSchemasRequest)(nil), // 56: vtadmin.GetSrvVSchemasRequest + (*GetSrvVSchemasResponse)(nil), // 57: vtadmin.GetSrvVSchemasResponse + (*GetSchemaTableSizeOptions)(nil), // 58: vtadmin.GetSchemaTableSizeOptions + (*GetTabletRequest)(nil), // 59: vtadmin.GetTabletRequest + (*GetTabletsRequest)(nil), // 60: vtadmin.GetTabletsRequest + (*GetTabletsResponse)(nil), // 61: vtadmin.GetTabletsResponse + (*GetTopologyPathRequest)(nil), // 62: vtadmin.GetTopologyPathRequest + (*GetVSchemaRequest)(nil), // 63: vtadmin.GetVSchemaRequest + (*GetVSchemasRequest)(nil), // 64: vtadmin.GetVSchemasRequest + (*GetVSchemasResponse)(nil), // 65: vtadmin.GetVSchemasResponse + (*GetVtctldsRequest)(nil), // 66: vtadmin.GetVtctldsRequest + (*GetVtctldsResponse)(nil), // 67: vtadmin.GetVtctldsResponse + (*GetWorkflowRequest)(nil), // 68: vtadmin.GetWorkflowRequest + (*GetWorkflowsRequest)(nil), // 69: vtadmin.GetWorkflowsRequest + (*GetWorkflowsResponse)(nil), // 70: vtadmin.GetWorkflowsResponse + (*LaunchSchemaMigrationRequest)(nil), // 71: vtadmin.LaunchSchemaMigrationRequest + (*PingTabletRequest)(nil), // 72: vtadmin.PingTabletRequest + (*PingTabletResponse)(nil), // 73: vtadmin.PingTabletResponse + (*PlannedFailoverShardRequest)(nil), // 74: vtadmin.PlannedFailoverShardRequest + (*PlannedFailoverShardResponse)(nil), // 75: vtadmin.PlannedFailoverShardResponse + (*RebuildKeyspaceGraphRequest)(nil), // 76: vtadmin.RebuildKeyspaceGraphRequest + (*RebuildKeyspaceGraphResponse)(nil), // 77: vtadmin.RebuildKeyspaceGraphResponse + (*RefreshStateRequest)(nil), // 78: vtadmin.RefreshStateRequest + (*RefreshStateResponse)(nil), // 79: vtadmin.RefreshStateResponse + (*ReloadSchemasRequest)(nil), // 80: vtadmin.ReloadSchemasRequest + (*ReloadSchemasResponse)(nil), // 81: vtadmin.ReloadSchemasResponse + (*ReloadSchemaShardRequest)(nil), // 82: vtadmin.ReloadSchemaShardRequest + (*ReloadSchemaShardResponse)(nil), // 83: vtadmin.ReloadSchemaShardResponse + (*RefreshTabletReplicationSourceRequest)(nil), // 84: vtadmin.RefreshTabletReplicationSourceRequest + (*RefreshTabletReplicationSourceResponse)(nil), // 85: vtadmin.RefreshTabletReplicationSourceResponse + (*RemoveKeyspaceCellRequest)(nil), // 86: vtadmin.RemoveKeyspaceCellRequest + (*RemoveKeyspaceCellResponse)(nil), // 87: vtadmin.RemoveKeyspaceCellResponse + (*RetrySchemaMigrationRequest)(nil), // 88: vtadmin.RetrySchemaMigrationRequest + (*RunHealthCheckRequest)(nil), // 89: vtadmin.RunHealthCheckRequest + (*RunHealthCheckResponse)(nil), // 90: vtadmin.RunHealthCheckResponse + (*SetReadOnlyRequest)(nil), // 91: vtadmin.SetReadOnlyRequest + (*SetReadOnlyResponse)(nil), // 92: vtadmin.SetReadOnlyResponse + (*SetReadWriteRequest)(nil), // 93: vtadmin.SetReadWriteRequest + (*SetReadWriteResponse)(nil), // 94: vtadmin.SetReadWriteResponse + (*StartReplicationRequest)(nil), // 95: vtadmin.StartReplicationRequest + (*StartReplicationResponse)(nil), // 96: vtadmin.StartReplicationResponse + (*StopReplicationRequest)(nil), // 97: vtadmin.StopReplicationRequest + (*StopReplicationResponse)(nil), // 98: vtadmin.StopReplicationResponse + (*TabletExternallyPromotedRequest)(nil), // 99: vtadmin.TabletExternallyPromotedRequest + (*TabletExternallyPromotedResponse)(nil), // 100: vtadmin.TabletExternallyPromotedResponse + (*TabletExternallyReparentedRequest)(nil), // 101: vtadmin.TabletExternallyReparentedRequest + (*ValidateRequest)(nil), // 102: vtadmin.ValidateRequest + (*ValidateKeyspaceRequest)(nil), // 103: vtadmin.ValidateKeyspaceRequest + (*ValidateSchemaKeyspaceRequest)(nil), // 104: vtadmin.ValidateSchemaKeyspaceRequest + (*ValidateShardRequest)(nil), // 105: vtadmin.ValidateShardRequest + (*ValidateVersionKeyspaceRequest)(nil), // 106: vtadmin.ValidateVersionKeyspaceRequest + (*ValidateVersionShardRequest)(nil), // 107: vtadmin.ValidateVersionShardRequest + (*VTExplainRequest)(nil), // 108: vtadmin.VTExplainRequest + (*VTExplainResponse)(nil), // 109: vtadmin.VTExplainResponse + nil, // 110: vtadmin.ClusterCellsAliases.AliasesEntry + nil, // 111: vtadmin.Keyspace.ShardsEntry + nil, // 112: vtadmin.Schema.TableSizesEntry + (*Schema_ShardTableSize)(nil), // 113: vtadmin.Schema.ShardTableSize + (*Schema_TableSize)(nil), // 114: vtadmin.Schema.TableSize + nil, // 115: vtadmin.Schema.TableSize.ByShardEntry + (*GetSchemaMigrationsRequest_ClusterRequest)(nil), // 116: vtadmin.GetSchemaMigrationsRequest.ClusterRequest + nil, // 117: vtadmin.GetSrvKeyspacesResponse.SrvKeyspacesEntry + nil, // 118: vtadmin.GetWorkflowsResponse.WorkflowsByClusterEntry + (*ReloadSchemasResponse_KeyspaceResult)(nil), // 119: vtadmin.ReloadSchemasResponse.KeyspaceResult + (*ReloadSchemasResponse_ShardResult)(nil), // 120: vtadmin.ReloadSchemasResponse.ShardResult + (*ReloadSchemasResponse_TabletResult)(nil), // 121: vtadmin.ReloadSchemasResponse.TabletResult + (*mysqlctl.BackupInfo)(nil), // 122: mysqlctl.BackupInfo + (*topodata.CellInfo)(nil), // 123: topodata.CellInfo + (*vtctldata.ShardReplicationPositionsResponse)(nil), // 124: vtctldata.ShardReplicationPositionsResponse + (*vtctldata.Keyspace)(nil), // 125: vtctldata.Keyspace + (*tabletmanagerdata.TableDefinition)(nil), // 126: tabletmanagerdata.TableDefinition + (*vtctldata.SchemaMigration)(nil), // 127: vtctldata.SchemaMigration + (*vtctldata.Shard)(nil), // 128: vtctldata.Shard + (*vschema.SrvVSchema)(nil), // 129: vschema.SrvVSchema + (*topodata.Tablet)(nil), // 130: topodata.Tablet + (*vschema.Keyspace)(nil), // 131: vschema.Keyspace + (*vtctldata.Workflow)(nil), // 132: vtctldata.Workflow + (*vtctldata.ApplySchemaRequest)(nil), // 133: vtctldata.ApplySchemaRequest + (*vtctldata.CancelSchemaMigrationRequest)(nil), // 134: vtctldata.CancelSchemaMigrationRequest + (*vtctldata.CleanupSchemaMigrationRequest)(nil), // 135: vtctldata.CleanupSchemaMigrationRequest + (*vtctldata.CompleteSchemaMigrationRequest)(nil), // 136: vtctldata.CompleteSchemaMigrationRequest + (*vtctldata.CreateKeyspaceRequest)(nil), // 137: vtctldata.CreateKeyspaceRequest + (*vtctldata.CreateShardRequest)(nil), // 138: vtctldata.CreateShardRequest + (*vtctldata.DeleteKeyspaceRequest)(nil), // 139: vtctldata.DeleteKeyspaceRequest + (*vtctldata.DeleteShardsRequest)(nil), // 140: vtctldata.DeleteShardsRequest + (*topodata.TabletAlias)(nil), // 141: topodata.TabletAlias + (*vtctldata.EmergencyReparentShardRequest)(nil), // 142: vtctldata.EmergencyReparentShardRequest + (*logutil.Event)(nil), // 143: logutil.Event + (*vtctldata.GetBackupsRequest)(nil), // 144: vtctldata.GetBackupsRequest + (*vtctldata.LaunchSchemaMigrationRequest)(nil), // 145: vtctldata.LaunchSchemaMigrationRequest + (*vtctldata.PlannedReparentShardRequest)(nil), // 146: vtctldata.PlannedReparentShardRequest + (*vtctldata.RetrySchemaMigrationRequest)(nil), // 147: vtctldata.RetrySchemaMigrationRequest + (*topodata.CellsAlias)(nil), // 148: topodata.CellsAlias + (*vtctldata.GetSchemaMigrationsRequest)(nil), // 149: vtctldata.GetSchemaMigrationsRequest + (*vtctldata.GetSrvKeyspacesResponse)(nil), // 150: vtctldata.GetSrvKeyspacesResponse + (*vtctldata.ApplySchemaResponse)(nil), // 151: vtctldata.ApplySchemaResponse + (*vtctldata.CancelSchemaMigrationResponse)(nil), // 152: vtctldata.CancelSchemaMigrationResponse + (*vtctldata.CleanupSchemaMigrationResponse)(nil), // 153: vtctldata.CleanupSchemaMigrationResponse + (*vtctldata.CompleteSchemaMigrationResponse)(nil), // 154: vtctldata.CompleteSchemaMigrationResponse + (*vtctldata.CreateShardResponse)(nil), // 155: vtctldata.CreateShardResponse + (*vtctldata.DeleteKeyspaceResponse)(nil), // 156: vtctldata.DeleteKeyspaceResponse + (*vtctldata.DeleteShardsResponse)(nil), // 157: vtctldata.DeleteShardsResponse + (*vtctldata.GetFullStatusResponse)(nil), // 158: vtctldata.GetFullStatusResponse + (*vtctldata.GetTopologyPathResponse)(nil), // 159: vtctldata.GetTopologyPathResponse + (*vtctldata.LaunchSchemaMigrationResponse)(nil), // 160: vtctldata.LaunchSchemaMigrationResponse + (*vtctldata.RetrySchemaMigrationResponse)(nil), // 161: vtctldata.RetrySchemaMigrationResponse + (*vtctldata.ValidateResponse)(nil), // 162: vtctldata.ValidateResponse + (*vtctldata.ValidateKeyspaceResponse)(nil), // 163: vtctldata.ValidateKeyspaceResponse + (*vtctldata.ValidateSchemaKeyspaceResponse)(nil), // 164: vtctldata.ValidateSchemaKeyspaceResponse + (*vtctldata.ValidateShardResponse)(nil), // 165: vtctldata.ValidateShardResponse + (*vtctldata.ValidateVersionKeyspaceResponse)(nil), // 166: vtctldata.ValidateVersionKeyspaceResponse + (*vtctldata.ValidateVersionShardResponse)(nil), // 167: vtctldata.ValidateVersionShardResponse } var file_vtadmin_proto_depIdxs = []int32{ 1, // 0: vtadmin.ClusterBackup.cluster:type_name -> vtadmin.Cluster - 112, // 1: vtadmin.ClusterBackup.backup:type_name -> mysqlctl.BackupInfo + 122, // 1: vtadmin.ClusterBackup.backup:type_name -> mysqlctl.BackupInfo 1, // 2: vtadmin.ClusterCellsAliases.cluster:type_name -> vtadmin.Cluster - 101, // 3: vtadmin.ClusterCellsAliases.aliases:type_name -> vtadmin.ClusterCellsAliases.AliasesEntry + 110, // 3: vtadmin.ClusterCellsAliases.aliases:type_name -> vtadmin.ClusterCellsAliases.AliasesEntry 1, // 4: vtadmin.ClusterCellInfo.cluster:type_name -> vtadmin.Cluster - 113, // 5: vtadmin.ClusterCellInfo.cell_info:type_name -> topodata.CellInfo + 123, // 5: vtadmin.ClusterCellInfo.cell_info:type_name -> topodata.CellInfo 1, // 6: vtadmin.ClusterShardReplicationPosition.cluster:type_name -> vtadmin.Cluster - 114, // 7: vtadmin.ClusterShardReplicationPosition.position_info:type_name -> vtctldata.ShardReplicationPositionsResponse - 15, // 8: vtadmin.ClusterWorkflows.workflows:type_name -> vtadmin.Workflow + 124, // 7: vtadmin.ClusterShardReplicationPosition.position_info:type_name -> vtctldata.ShardReplicationPositionsResponse + 16, // 8: vtadmin.ClusterWorkflows.workflows:type_name -> vtadmin.Workflow 1, // 9: vtadmin.Keyspace.cluster:type_name -> vtadmin.Cluster - 115, // 10: vtadmin.Keyspace.keyspace:type_name -> vtctldata.Keyspace - 102, // 11: vtadmin.Keyspace.shards:type_name -> vtadmin.Keyspace.ShardsEntry + 125, // 10: vtadmin.Keyspace.keyspace:type_name -> vtctldata.Keyspace + 111, // 11: vtadmin.Keyspace.shards:type_name -> vtadmin.Keyspace.ShardsEntry 1, // 12: vtadmin.Schema.cluster:type_name -> vtadmin.Cluster - 116, // 13: vtadmin.Schema.table_definitions:type_name -> tabletmanagerdata.TableDefinition - 103, // 14: vtadmin.Schema.table_sizes:type_name -> vtadmin.Schema.TableSizesEntry - 1, // 15: vtadmin.Shard.cluster:type_name -> vtadmin.Cluster - 117, // 16: vtadmin.Shard.shard:type_name -> vtctldata.Shard - 1, // 17: vtadmin.SrvVSchema.cluster:type_name -> vtadmin.Cluster - 118, // 18: vtadmin.SrvVSchema.srv_v_schema:type_name -> vschema.SrvVSchema - 1, // 19: vtadmin.Tablet.cluster:type_name -> vtadmin.Cluster - 119, // 20: vtadmin.Tablet.tablet:type_name -> topodata.Tablet - 0, // 21: vtadmin.Tablet.state:type_name -> vtadmin.Tablet.ServingState - 1, // 22: vtadmin.VSchema.cluster:type_name -> vtadmin.Cluster - 120, // 23: vtadmin.VSchema.v_schema:type_name -> vschema.Keyspace - 1, // 24: vtadmin.Vtctld.cluster:type_name -> vtadmin.Cluster - 1, // 25: vtadmin.VTGate.cluster:type_name -> vtadmin.Cluster - 1, // 26: vtadmin.Workflow.cluster:type_name -> vtadmin.Cluster - 121, // 27: vtadmin.Workflow.workflow:type_name -> vtctldata.Workflow - 122, // 28: vtadmin.CreateKeyspaceRequest.options:type_name -> vtctldata.CreateKeyspaceRequest - 7, // 29: vtadmin.CreateKeyspaceResponse.keyspace:type_name -> vtadmin.Keyspace - 123, // 30: vtadmin.CreateShardRequest.options:type_name -> vtctldata.CreateShardRequest - 124, // 31: vtadmin.DeleteKeyspaceRequest.options:type_name -> vtctldata.DeleteKeyspaceRequest - 125, // 32: vtadmin.DeleteShardsRequest.options:type_name -> vtctldata.DeleteShardsRequest - 126, // 33: vtadmin.DeleteTabletRequest.alias:type_name -> topodata.TabletAlias - 1, // 34: vtadmin.DeleteTabletResponse.cluster:type_name -> vtadmin.Cluster - 127, // 35: vtadmin.EmergencyFailoverShardRequest.options:type_name -> vtctldata.EmergencyReparentShardRequest - 1, // 36: vtadmin.EmergencyFailoverShardResponse.cluster:type_name -> vtadmin.Cluster - 126, // 37: vtadmin.EmergencyFailoverShardResponse.promoted_primary:type_name -> topodata.TabletAlias - 128, // 38: vtadmin.EmergencyFailoverShardResponse.events:type_name -> logutil.Event - 51, // 39: vtadmin.FindSchemaRequest.table_size_options:type_name -> vtadmin.GetSchemaTableSizeOptions - 129, // 40: vtadmin.GetBackupsRequest.request_options:type_name -> vtctldata.GetBackupsRequest - 2, // 41: vtadmin.GetBackupsResponse.backups:type_name -> vtadmin.ClusterBackup - 4, // 42: vtadmin.GetCellInfosResponse.cell_infos:type_name -> vtadmin.ClusterCellInfo - 3, // 43: vtadmin.GetCellsAliasesResponse.aliases:type_name -> vtadmin.ClusterCellsAliases - 1, // 44: vtadmin.GetClustersResponse.clusters:type_name -> vtadmin.Cluster - 126, // 45: vtadmin.GetFullStatusRequest.alias:type_name -> topodata.TabletAlias - 14, // 46: vtadmin.GetGatesResponse.gates:type_name -> vtadmin.VTGate - 7, // 47: vtadmin.GetKeyspacesResponse.keyspaces:type_name -> vtadmin.Keyspace - 51, // 48: vtadmin.GetSchemaRequest.table_size_options:type_name -> vtadmin.GetSchemaTableSizeOptions - 51, // 49: vtadmin.GetSchemasRequest.table_size_options:type_name -> vtadmin.GetSchemaTableSizeOptions - 8, // 50: vtadmin.GetSchemasResponse.schemas:type_name -> vtadmin.Schema - 5, // 51: vtadmin.GetShardReplicationPositionsResponse.replication_positions:type_name -> vtadmin.ClusterShardReplicationPosition - 107, // 52: vtadmin.GetSrvKeyspacesResponse.srv_keyspaces:type_name -> vtadmin.GetSrvKeyspacesResponse.SrvKeyspacesEntry - 10, // 53: vtadmin.GetSrvVSchemasResponse.srv_v_schemas:type_name -> vtadmin.SrvVSchema - 126, // 54: vtadmin.GetTabletRequest.alias:type_name -> topodata.TabletAlias - 11, // 55: vtadmin.GetTabletsResponse.tablets:type_name -> vtadmin.Tablet - 12, // 56: vtadmin.GetVSchemasResponse.v_schemas:type_name -> vtadmin.VSchema - 13, // 57: vtadmin.GetVtctldsResponse.vtctlds:type_name -> vtadmin.Vtctld - 108, // 58: vtadmin.GetWorkflowsResponse.workflows_by_cluster:type_name -> vtadmin.GetWorkflowsResponse.WorkflowsByClusterEntry - 126, // 59: vtadmin.PingTabletRequest.alias:type_name -> topodata.TabletAlias - 1, // 60: vtadmin.PingTabletResponse.cluster:type_name -> vtadmin.Cluster - 130, // 61: vtadmin.PlannedFailoverShardRequest.options:type_name -> vtctldata.PlannedReparentShardRequest - 1, // 62: vtadmin.PlannedFailoverShardResponse.cluster:type_name -> vtadmin.Cluster - 126, // 63: vtadmin.PlannedFailoverShardResponse.promoted_primary:type_name -> topodata.TabletAlias - 128, // 64: vtadmin.PlannedFailoverShardResponse.events:type_name -> logutil.Event - 126, // 65: vtadmin.RefreshStateRequest.alias:type_name -> topodata.TabletAlias - 1, // 66: vtadmin.RefreshStateResponse.cluster:type_name -> vtadmin.Cluster - 126, // 67: vtadmin.ReloadSchemasRequest.tablets:type_name -> topodata.TabletAlias - 109, // 68: vtadmin.ReloadSchemasResponse.keyspace_results:type_name -> vtadmin.ReloadSchemasResponse.KeyspaceResult - 110, // 69: vtadmin.ReloadSchemasResponse.shard_results:type_name -> vtadmin.ReloadSchemasResponse.ShardResult - 111, // 70: vtadmin.ReloadSchemasResponse.tablet_results:type_name -> vtadmin.ReloadSchemasResponse.TabletResult - 128, // 71: vtadmin.ReloadSchemaShardResponse.events:type_name -> logutil.Event - 126, // 72: vtadmin.RefreshTabletReplicationSourceRequest.alias:type_name -> topodata.TabletAlias - 126, // 73: vtadmin.RefreshTabletReplicationSourceResponse.primary:type_name -> topodata.TabletAlias - 1, // 74: vtadmin.RefreshTabletReplicationSourceResponse.cluster:type_name -> vtadmin.Cluster - 126, // 75: vtadmin.RunHealthCheckRequest.alias:type_name -> topodata.TabletAlias - 1, // 76: vtadmin.RunHealthCheckResponse.cluster:type_name -> vtadmin.Cluster - 126, // 77: vtadmin.SetReadOnlyRequest.alias:type_name -> topodata.TabletAlias - 126, // 78: vtadmin.SetReadWriteRequest.alias:type_name -> topodata.TabletAlias - 126, // 79: vtadmin.StartReplicationRequest.alias:type_name -> topodata.TabletAlias - 1, // 80: vtadmin.StartReplicationResponse.cluster:type_name -> vtadmin.Cluster - 126, // 81: vtadmin.StopReplicationRequest.alias:type_name -> topodata.TabletAlias - 1, // 82: vtadmin.StopReplicationResponse.cluster:type_name -> vtadmin.Cluster - 126, // 83: vtadmin.TabletExternallyPromotedRequest.alias:type_name -> topodata.TabletAlias - 1, // 84: vtadmin.TabletExternallyPromotedResponse.cluster:type_name -> vtadmin.Cluster - 126, // 85: vtadmin.TabletExternallyPromotedResponse.new_primary:type_name -> topodata.TabletAlias - 126, // 86: vtadmin.TabletExternallyPromotedResponse.old_primary:type_name -> topodata.TabletAlias - 126, // 87: vtadmin.TabletExternallyReparentedRequest.alias:type_name -> topodata.TabletAlias - 131, // 88: vtadmin.ClusterCellsAliases.AliasesEntry.value:type_name -> topodata.CellsAlias - 117, // 89: vtadmin.Keyspace.ShardsEntry.value:type_name -> vtctldata.Shard - 105, // 90: vtadmin.Schema.TableSizesEntry.value:type_name -> vtadmin.Schema.TableSize - 106, // 91: vtadmin.Schema.TableSize.by_shard:type_name -> vtadmin.Schema.TableSize.ByShardEntry - 104, // 92: vtadmin.Schema.TableSize.ByShardEntry.value:type_name -> vtadmin.Schema.ShardTableSize - 132, // 93: vtadmin.GetSrvKeyspacesResponse.SrvKeyspacesEntry.value:type_name -> vtctldata.GetSrvKeyspacesResponse - 6, // 94: vtadmin.GetWorkflowsResponse.WorkflowsByClusterEntry.value:type_name -> vtadmin.ClusterWorkflows - 7, // 95: vtadmin.ReloadSchemasResponse.KeyspaceResult.keyspace:type_name -> vtadmin.Keyspace - 128, // 96: vtadmin.ReloadSchemasResponse.KeyspaceResult.events:type_name -> logutil.Event - 9, // 97: vtadmin.ReloadSchemasResponse.ShardResult.shard:type_name -> vtadmin.Shard - 128, // 98: vtadmin.ReloadSchemasResponse.ShardResult.events:type_name -> logutil.Event - 11, // 99: vtadmin.ReloadSchemasResponse.TabletResult.tablet:type_name -> vtadmin.Tablet - 16, // 100: vtadmin.VTAdmin.CreateKeyspace:input_type -> vtadmin.CreateKeyspaceRequest - 18, // 101: vtadmin.VTAdmin.CreateShard:input_type -> vtadmin.CreateShardRequest - 19, // 102: vtadmin.VTAdmin.DeleteKeyspace:input_type -> vtadmin.DeleteKeyspaceRequest - 20, // 103: vtadmin.VTAdmin.DeleteShards:input_type -> vtadmin.DeleteShardsRequest - 21, // 104: vtadmin.VTAdmin.DeleteTablet:input_type -> vtadmin.DeleteTabletRequest - 23, // 105: vtadmin.VTAdmin.EmergencyFailoverShard:input_type -> vtadmin.EmergencyFailoverShardRequest - 25, // 106: vtadmin.VTAdmin.FindSchema:input_type -> vtadmin.FindSchemaRequest - 26, // 107: vtadmin.VTAdmin.GetBackups:input_type -> vtadmin.GetBackupsRequest - 28, // 108: vtadmin.VTAdmin.GetCellInfos:input_type -> vtadmin.GetCellInfosRequest - 30, // 109: vtadmin.VTAdmin.GetCellsAliases:input_type -> vtadmin.GetCellsAliasesRequest - 32, // 110: vtadmin.VTAdmin.GetClusters:input_type -> vtadmin.GetClustersRequest - 34, // 111: vtadmin.VTAdmin.GetFullStatus:input_type -> vtadmin.GetFullStatusRequest - 35, // 112: vtadmin.VTAdmin.GetGates:input_type -> vtadmin.GetGatesRequest - 37, // 113: vtadmin.VTAdmin.GetKeyspace:input_type -> vtadmin.GetKeyspaceRequest - 38, // 114: vtadmin.VTAdmin.GetKeyspaces:input_type -> vtadmin.GetKeyspacesRequest - 40, // 115: vtadmin.VTAdmin.GetSchema:input_type -> vtadmin.GetSchemaRequest - 41, // 116: vtadmin.VTAdmin.GetSchemas:input_type -> vtadmin.GetSchemasRequest - 43, // 117: vtadmin.VTAdmin.GetShardReplicationPositions:input_type -> vtadmin.GetShardReplicationPositionsRequest - 45, // 118: vtadmin.VTAdmin.GetSrvKeyspace:input_type -> vtadmin.GetSrvKeyspaceRequest - 46, // 119: vtadmin.VTAdmin.GetSrvKeyspaces:input_type -> vtadmin.GetSrvKeyspacesRequest - 48, // 120: vtadmin.VTAdmin.GetSrvVSchema:input_type -> vtadmin.GetSrvVSchemaRequest - 49, // 121: vtadmin.VTAdmin.GetSrvVSchemas:input_type -> vtadmin.GetSrvVSchemasRequest - 52, // 122: vtadmin.VTAdmin.GetTablet:input_type -> vtadmin.GetTabletRequest - 53, // 123: vtadmin.VTAdmin.GetTablets:input_type -> vtadmin.GetTabletsRequest - 55, // 124: vtadmin.VTAdmin.GetTopologyPath:input_type -> vtadmin.GetTopologyPathRequest - 56, // 125: vtadmin.VTAdmin.GetVSchema:input_type -> vtadmin.GetVSchemaRequest - 57, // 126: vtadmin.VTAdmin.GetVSchemas:input_type -> vtadmin.GetVSchemasRequest - 59, // 127: vtadmin.VTAdmin.GetVtctlds:input_type -> vtadmin.GetVtctldsRequest - 61, // 128: vtadmin.VTAdmin.GetWorkflow:input_type -> vtadmin.GetWorkflowRequest - 62, // 129: vtadmin.VTAdmin.GetWorkflows:input_type -> vtadmin.GetWorkflowsRequest - 64, // 130: vtadmin.VTAdmin.PingTablet:input_type -> vtadmin.PingTabletRequest - 66, // 131: vtadmin.VTAdmin.PlannedFailoverShard:input_type -> vtadmin.PlannedFailoverShardRequest - 68, // 132: vtadmin.VTAdmin.RebuildKeyspaceGraph:input_type -> vtadmin.RebuildKeyspaceGraphRequest - 70, // 133: vtadmin.VTAdmin.RefreshState:input_type -> vtadmin.RefreshStateRequest - 76, // 134: vtadmin.VTAdmin.RefreshTabletReplicationSource:input_type -> vtadmin.RefreshTabletReplicationSourceRequest - 72, // 135: vtadmin.VTAdmin.ReloadSchemas:input_type -> vtadmin.ReloadSchemasRequest - 74, // 136: vtadmin.VTAdmin.ReloadSchemaShard:input_type -> vtadmin.ReloadSchemaShardRequest - 78, // 137: vtadmin.VTAdmin.RemoveKeyspaceCell:input_type -> vtadmin.RemoveKeyspaceCellRequest - 80, // 138: vtadmin.VTAdmin.RunHealthCheck:input_type -> vtadmin.RunHealthCheckRequest - 82, // 139: vtadmin.VTAdmin.SetReadOnly:input_type -> vtadmin.SetReadOnlyRequest - 84, // 140: vtadmin.VTAdmin.SetReadWrite:input_type -> vtadmin.SetReadWriteRequest - 86, // 141: vtadmin.VTAdmin.StartReplication:input_type -> vtadmin.StartReplicationRequest - 88, // 142: vtadmin.VTAdmin.StopReplication:input_type -> vtadmin.StopReplicationRequest - 90, // 143: vtadmin.VTAdmin.TabletExternallyPromoted:input_type -> vtadmin.TabletExternallyPromotedRequest - 93, // 144: vtadmin.VTAdmin.Validate:input_type -> vtadmin.ValidateRequest - 94, // 145: vtadmin.VTAdmin.ValidateKeyspace:input_type -> vtadmin.ValidateKeyspaceRequest - 95, // 146: vtadmin.VTAdmin.ValidateSchemaKeyspace:input_type -> vtadmin.ValidateSchemaKeyspaceRequest - 96, // 147: vtadmin.VTAdmin.ValidateShard:input_type -> vtadmin.ValidateShardRequest - 97, // 148: vtadmin.VTAdmin.ValidateVersionKeyspace:input_type -> vtadmin.ValidateVersionKeyspaceRequest - 98, // 149: vtadmin.VTAdmin.ValidateVersionShard:input_type -> vtadmin.ValidateVersionShardRequest - 99, // 150: vtadmin.VTAdmin.VTExplain:input_type -> vtadmin.VTExplainRequest - 17, // 151: vtadmin.VTAdmin.CreateKeyspace:output_type -> vtadmin.CreateKeyspaceResponse - 133, // 152: vtadmin.VTAdmin.CreateShard:output_type -> vtctldata.CreateShardResponse - 134, // 153: vtadmin.VTAdmin.DeleteKeyspace:output_type -> vtctldata.DeleteKeyspaceResponse - 135, // 154: vtadmin.VTAdmin.DeleteShards:output_type -> vtctldata.DeleteShardsResponse - 22, // 155: vtadmin.VTAdmin.DeleteTablet:output_type -> vtadmin.DeleteTabletResponse - 24, // 156: vtadmin.VTAdmin.EmergencyFailoverShard:output_type -> vtadmin.EmergencyFailoverShardResponse - 8, // 157: vtadmin.VTAdmin.FindSchema:output_type -> vtadmin.Schema - 27, // 158: vtadmin.VTAdmin.GetBackups:output_type -> vtadmin.GetBackupsResponse - 29, // 159: vtadmin.VTAdmin.GetCellInfos:output_type -> vtadmin.GetCellInfosResponse - 31, // 160: vtadmin.VTAdmin.GetCellsAliases:output_type -> vtadmin.GetCellsAliasesResponse - 33, // 161: vtadmin.VTAdmin.GetClusters:output_type -> vtadmin.GetClustersResponse - 136, // 162: vtadmin.VTAdmin.GetFullStatus:output_type -> vtctldata.GetFullStatusResponse - 36, // 163: vtadmin.VTAdmin.GetGates:output_type -> vtadmin.GetGatesResponse - 7, // 164: vtadmin.VTAdmin.GetKeyspace:output_type -> vtadmin.Keyspace - 39, // 165: vtadmin.VTAdmin.GetKeyspaces:output_type -> vtadmin.GetKeyspacesResponse - 8, // 166: vtadmin.VTAdmin.GetSchema:output_type -> vtadmin.Schema - 42, // 167: vtadmin.VTAdmin.GetSchemas:output_type -> vtadmin.GetSchemasResponse - 44, // 168: vtadmin.VTAdmin.GetShardReplicationPositions:output_type -> vtadmin.GetShardReplicationPositionsResponse - 132, // 169: vtadmin.VTAdmin.GetSrvKeyspace:output_type -> vtctldata.GetSrvKeyspacesResponse - 47, // 170: vtadmin.VTAdmin.GetSrvKeyspaces:output_type -> vtadmin.GetSrvKeyspacesResponse - 10, // 171: vtadmin.VTAdmin.GetSrvVSchema:output_type -> vtadmin.SrvVSchema - 50, // 172: vtadmin.VTAdmin.GetSrvVSchemas:output_type -> vtadmin.GetSrvVSchemasResponse - 11, // 173: vtadmin.VTAdmin.GetTablet:output_type -> vtadmin.Tablet - 54, // 174: vtadmin.VTAdmin.GetTablets:output_type -> vtadmin.GetTabletsResponse - 137, // 175: vtadmin.VTAdmin.GetTopologyPath:output_type -> vtctldata.GetTopologyPathResponse - 12, // 176: vtadmin.VTAdmin.GetVSchema:output_type -> vtadmin.VSchema - 58, // 177: vtadmin.VTAdmin.GetVSchemas:output_type -> vtadmin.GetVSchemasResponse - 60, // 178: vtadmin.VTAdmin.GetVtctlds:output_type -> vtadmin.GetVtctldsResponse - 15, // 179: vtadmin.VTAdmin.GetWorkflow:output_type -> vtadmin.Workflow - 63, // 180: vtadmin.VTAdmin.GetWorkflows:output_type -> vtadmin.GetWorkflowsResponse - 65, // 181: vtadmin.VTAdmin.PingTablet:output_type -> vtadmin.PingTabletResponse - 67, // 182: vtadmin.VTAdmin.PlannedFailoverShard:output_type -> vtadmin.PlannedFailoverShardResponse - 69, // 183: vtadmin.VTAdmin.RebuildKeyspaceGraph:output_type -> vtadmin.RebuildKeyspaceGraphResponse - 71, // 184: vtadmin.VTAdmin.RefreshState:output_type -> vtadmin.RefreshStateResponse - 77, // 185: vtadmin.VTAdmin.RefreshTabletReplicationSource:output_type -> vtadmin.RefreshTabletReplicationSourceResponse - 73, // 186: vtadmin.VTAdmin.ReloadSchemas:output_type -> vtadmin.ReloadSchemasResponse - 75, // 187: vtadmin.VTAdmin.ReloadSchemaShard:output_type -> vtadmin.ReloadSchemaShardResponse - 79, // 188: vtadmin.VTAdmin.RemoveKeyspaceCell:output_type -> vtadmin.RemoveKeyspaceCellResponse - 81, // 189: vtadmin.VTAdmin.RunHealthCheck:output_type -> vtadmin.RunHealthCheckResponse - 83, // 190: vtadmin.VTAdmin.SetReadOnly:output_type -> vtadmin.SetReadOnlyResponse - 85, // 191: vtadmin.VTAdmin.SetReadWrite:output_type -> vtadmin.SetReadWriteResponse - 87, // 192: vtadmin.VTAdmin.StartReplication:output_type -> vtadmin.StartReplicationResponse - 89, // 193: vtadmin.VTAdmin.StopReplication:output_type -> vtadmin.StopReplicationResponse - 91, // 194: vtadmin.VTAdmin.TabletExternallyPromoted:output_type -> vtadmin.TabletExternallyPromotedResponse - 138, // 195: vtadmin.VTAdmin.Validate:output_type -> vtctldata.ValidateResponse - 139, // 196: vtadmin.VTAdmin.ValidateKeyspace:output_type -> vtctldata.ValidateKeyspaceResponse - 140, // 197: vtadmin.VTAdmin.ValidateSchemaKeyspace:output_type -> vtctldata.ValidateSchemaKeyspaceResponse - 141, // 198: vtadmin.VTAdmin.ValidateShard:output_type -> vtctldata.ValidateShardResponse - 142, // 199: vtadmin.VTAdmin.ValidateVersionKeyspace:output_type -> vtctldata.ValidateVersionKeyspaceResponse - 143, // 200: vtadmin.VTAdmin.ValidateVersionShard:output_type -> vtctldata.ValidateVersionShardResponse - 100, // 201: vtadmin.VTAdmin.VTExplain:output_type -> vtadmin.VTExplainResponse - 151, // [151:202] is the sub-list for method output_type - 100, // [100:151] 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 + 126, // 13: vtadmin.Schema.table_definitions:type_name -> tabletmanagerdata.TableDefinition + 112, // 14: vtadmin.Schema.table_sizes:type_name -> vtadmin.Schema.TableSizesEntry + 1, // 15: vtadmin.SchemaMigration.cluster:type_name -> vtadmin.Cluster + 127, // 16: vtadmin.SchemaMigration.schema_migration:type_name -> vtctldata.SchemaMigration + 1, // 17: vtadmin.Shard.cluster:type_name -> vtadmin.Cluster + 128, // 18: vtadmin.Shard.shard:type_name -> vtctldata.Shard + 1, // 19: vtadmin.SrvVSchema.cluster:type_name -> vtadmin.Cluster + 129, // 20: vtadmin.SrvVSchema.srv_v_schema:type_name -> vschema.SrvVSchema + 1, // 21: vtadmin.Tablet.cluster:type_name -> vtadmin.Cluster + 130, // 22: vtadmin.Tablet.tablet:type_name -> topodata.Tablet + 0, // 23: vtadmin.Tablet.state:type_name -> vtadmin.Tablet.ServingState + 1, // 24: vtadmin.VSchema.cluster:type_name -> vtadmin.Cluster + 131, // 25: vtadmin.VSchema.v_schema:type_name -> vschema.Keyspace + 1, // 26: vtadmin.Vtctld.cluster:type_name -> vtadmin.Cluster + 1, // 27: vtadmin.VTGate.cluster:type_name -> vtadmin.Cluster + 1, // 28: vtadmin.Workflow.cluster:type_name -> vtadmin.Cluster + 132, // 29: vtadmin.Workflow.workflow:type_name -> vtctldata.Workflow + 133, // 30: vtadmin.ApplySchemaRequest.request:type_name -> vtctldata.ApplySchemaRequest + 134, // 31: vtadmin.CancelSchemaMigrationRequest.request:type_name -> vtctldata.CancelSchemaMigrationRequest + 135, // 32: vtadmin.CleanupSchemaMigrationRequest.request:type_name -> vtctldata.CleanupSchemaMigrationRequest + 136, // 33: vtadmin.CompleteSchemaMigrationRequest.request:type_name -> vtctldata.CompleteSchemaMigrationRequest + 137, // 34: vtadmin.CreateKeyspaceRequest.options:type_name -> vtctldata.CreateKeyspaceRequest + 7, // 35: vtadmin.CreateKeyspaceResponse.keyspace:type_name -> vtadmin.Keyspace + 138, // 36: vtadmin.CreateShardRequest.options:type_name -> vtctldata.CreateShardRequest + 139, // 37: vtadmin.DeleteKeyspaceRequest.options:type_name -> vtctldata.DeleteKeyspaceRequest + 140, // 38: vtadmin.DeleteShardsRequest.options:type_name -> vtctldata.DeleteShardsRequest + 141, // 39: vtadmin.DeleteTabletRequest.alias:type_name -> topodata.TabletAlias + 1, // 40: vtadmin.DeleteTabletResponse.cluster:type_name -> vtadmin.Cluster + 142, // 41: vtadmin.EmergencyFailoverShardRequest.options:type_name -> vtctldata.EmergencyReparentShardRequest + 1, // 42: vtadmin.EmergencyFailoverShardResponse.cluster:type_name -> vtadmin.Cluster + 141, // 43: vtadmin.EmergencyFailoverShardResponse.promoted_primary:type_name -> topodata.TabletAlias + 143, // 44: vtadmin.EmergencyFailoverShardResponse.events:type_name -> logutil.Event + 58, // 45: vtadmin.FindSchemaRequest.table_size_options:type_name -> vtadmin.GetSchemaTableSizeOptions + 144, // 46: vtadmin.GetBackupsRequest.request_options:type_name -> vtctldata.GetBackupsRequest + 2, // 47: vtadmin.GetBackupsResponse.backups:type_name -> vtadmin.ClusterBackup + 4, // 48: vtadmin.GetCellInfosResponse.cell_infos:type_name -> vtadmin.ClusterCellInfo + 3, // 49: vtadmin.GetCellsAliasesResponse.aliases:type_name -> vtadmin.ClusterCellsAliases + 1, // 50: vtadmin.GetClustersResponse.clusters:type_name -> vtadmin.Cluster + 141, // 51: vtadmin.GetFullStatusRequest.alias:type_name -> topodata.TabletAlias + 15, // 52: vtadmin.GetGatesResponse.gates:type_name -> vtadmin.VTGate + 7, // 53: vtadmin.GetKeyspacesResponse.keyspaces:type_name -> vtadmin.Keyspace + 58, // 54: vtadmin.GetSchemaRequest.table_size_options:type_name -> vtadmin.GetSchemaTableSizeOptions + 58, // 55: vtadmin.GetSchemasRequest.table_size_options:type_name -> vtadmin.GetSchemaTableSizeOptions + 8, // 56: vtadmin.GetSchemasResponse.schemas:type_name -> vtadmin.Schema + 116, // 57: vtadmin.GetSchemaMigrationsRequest.cluster_requests:type_name -> vtadmin.GetSchemaMigrationsRequest.ClusterRequest + 9, // 58: vtadmin.GetSchemaMigrationsResponse.schema_migrations:type_name -> vtadmin.SchemaMigration + 5, // 59: vtadmin.GetShardReplicationPositionsResponse.replication_positions:type_name -> vtadmin.ClusterShardReplicationPosition + 117, // 60: vtadmin.GetSrvKeyspacesResponse.srv_keyspaces:type_name -> vtadmin.GetSrvKeyspacesResponse.SrvKeyspacesEntry + 11, // 61: vtadmin.GetSrvVSchemasResponse.srv_v_schemas:type_name -> vtadmin.SrvVSchema + 141, // 62: vtadmin.GetTabletRequest.alias:type_name -> topodata.TabletAlias + 12, // 63: vtadmin.GetTabletsResponse.tablets:type_name -> vtadmin.Tablet + 13, // 64: vtadmin.GetVSchemasResponse.v_schemas:type_name -> vtadmin.VSchema + 14, // 65: vtadmin.GetVtctldsResponse.vtctlds:type_name -> vtadmin.Vtctld + 118, // 66: vtadmin.GetWorkflowsResponse.workflows_by_cluster:type_name -> vtadmin.GetWorkflowsResponse.WorkflowsByClusterEntry + 145, // 67: vtadmin.LaunchSchemaMigrationRequest.request:type_name -> vtctldata.LaunchSchemaMigrationRequest + 141, // 68: vtadmin.PingTabletRequest.alias:type_name -> topodata.TabletAlias + 1, // 69: vtadmin.PingTabletResponse.cluster:type_name -> vtadmin.Cluster + 146, // 70: vtadmin.PlannedFailoverShardRequest.options:type_name -> vtctldata.PlannedReparentShardRequest + 1, // 71: vtadmin.PlannedFailoverShardResponse.cluster:type_name -> vtadmin.Cluster + 141, // 72: vtadmin.PlannedFailoverShardResponse.promoted_primary:type_name -> topodata.TabletAlias + 143, // 73: vtadmin.PlannedFailoverShardResponse.events:type_name -> logutil.Event + 141, // 74: vtadmin.RefreshStateRequest.alias:type_name -> topodata.TabletAlias + 1, // 75: vtadmin.RefreshStateResponse.cluster:type_name -> vtadmin.Cluster + 141, // 76: vtadmin.ReloadSchemasRequest.tablets:type_name -> topodata.TabletAlias + 119, // 77: vtadmin.ReloadSchemasResponse.keyspace_results:type_name -> vtadmin.ReloadSchemasResponse.KeyspaceResult + 120, // 78: vtadmin.ReloadSchemasResponse.shard_results:type_name -> vtadmin.ReloadSchemasResponse.ShardResult + 121, // 79: vtadmin.ReloadSchemasResponse.tablet_results:type_name -> vtadmin.ReloadSchemasResponse.TabletResult + 143, // 80: vtadmin.ReloadSchemaShardResponse.events:type_name -> logutil.Event + 141, // 81: vtadmin.RefreshTabletReplicationSourceRequest.alias:type_name -> topodata.TabletAlias + 141, // 82: vtadmin.RefreshTabletReplicationSourceResponse.primary:type_name -> topodata.TabletAlias + 1, // 83: vtadmin.RefreshTabletReplicationSourceResponse.cluster:type_name -> vtadmin.Cluster + 147, // 84: vtadmin.RetrySchemaMigrationRequest.request:type_name -> vtctldata.RetrySchemaMigrationRequest + 141, // 85: vtadmin.RunHealthCheckRequest.alias:type_name -> topodata.TabletAlias + 1, // 86: vtadmin.RunHealthCheckResponse.cluster:type_name -> vtadmin.Cluster + 141, // 87: vtadmin.SetReadOnlyRequest.alias:type_name -> topodata.TabletAlias + 141, // 88: vtadmin.SetReadWriteRequest.alias:type_name -> topodata.TabletAlias + 141, // 89: vtadmin.StartReplicationRequest.alias:type_name -> topodata.TabletAlias + 1, // 90: vtadmin.StartReplicationResponse.cluster:type_name -> vtadmin.Cluster + 141, // 91: vtadmin.StopReplicationRequest.alias:type_name -> topodata.TabletAlias + 1, // 92: vtadmin.StopReplicationResponse.cluster:type_name -> vtadmin.Cluster + 141, // 93: vtadmin.TabletExternallyPromotedRequest.alias:type_name -> topodata.TabletAlias + 1, // 94: vtadmin.TabletExternallyPromotedResponse.cluster:type_name -> vtadmin.Cluster + 141, // 95: vtadmin.TabletExternallyPromotedResponse.new_primary:type_name -> topodata.TabletAlias + 141, // 96: vtadmin.TabletExternallyPromotedResponse.old_primary:type_name -> topodata.TabletAlias + 141, // 97: vtadmin.TabletExternallyReparentedRequest.alias:type_name -> topodata.TabletAlias + 148, // 98: vtadmin.ClusterCellsAliases.AliasesEntry.value:type_name -> topodata.CellsAlias + 128, // 99: vtadmin.Keyspace.ShardsEntry.value:type_name -> vtctldata.Shard + 114, // 100: vtadmin.Schema.TableSizesEntry.value:type_name -> vtadmin.Schema.TableSize + 115, // 101: vtadmin.Schema.TableSize.by_shard:type_name -> vtadmin.Schema.TableSize.ByShardEntry + 113, // 102: vtadmin.Schema.TableSize.ByShardEntry.value:type_name -> vtadmin.Schema.ShardTableSize + 149, // 103: vtadmin.GetSchemaMigrationsRequest.ClusterRequest.request:type_name -> vtctldata.GetSchemaMigrationsRequest + 150, // 104: vtadmin.GetSrvKeyspacesResponse.SrvKeyspacesEntry.value:type_name -> vtctldata.GetSrvKeyspacesResponse + 6, // 105: vtadmin.GetWorkflowsResponse.WorkflowsByClusterEntry.value:type_name -> vtadmin.ClusterWorkflows + 7, // 106: vtadmin.ReloadSchemasResponse.KeyspaceResult.keyspace:type_name -> vtadmin.Keyspace + 143, // 107: vtadmin.ReloadSchemasResponse.KeyspaceResult.events:type_name -> logutil.Event + 10, // 108: vtadmin.ReloadSchemasResponse.ShardResult.shard:type_name -> vtadmin.Shard + 143, // 109: vtadmin.ReloadSchemasResponse.ShardResult.events:type_name -> logutil.Event + 12, // 110: vtadmin.ReloadSchemasResponse.TabletResult.tablet:type_name -> vtadmin.Tablet + 17, // 111: vtadmin.VTAdmin.ApplySchema:input_type -> vtadmin.ApplySchemaRequest + 18, // 112: vtadmin.VTAdmin.CancelSchemaMigration:input_type -> vtadmin.CancelSchemaMigrationRequest + 19, // 113: vtadmin.VTAdmin.CleanupSchemaMigration:input_type -> vtadmin.CleanupSchemaMigrationRequest + 20, // 114: vtadmin.VTAdmin.CompleteSchemaMigration:input_type -> vtadmin.CompleteSchemaMigrationRequest + 21, // 115: vtadmin.VTAdmin.CreateKeyspace:input_type -> vtadmin.CreateKeyspaceRequest + 23, // 116: vtadmin.VTAdmin.CreateShard:input_type -> vtadmin.CreateShardRequest + 24, // 117: vtadmin.VTAdmin.DeleteKeyspace:input_type -> vtadmin.DeleteKeyspaceRequest + 25, // 118: vtadmin.VTAdmin.DeleteShards:input_type -> vtadmin.DeleteShardsRequest + 26, // 119: vtadmin.VTAdmin.DeleteTablet:input_type -> vtadmin.DeleteTabletRequest + 28, // 120: vtadmin.VTAdmin.EmergencyFailoverShard:input_type -> vtadmin.EmergencyFailoverShardRequest + 30, // 121: vtadmin.VTAdmin.FindSchema:input_type -> vtadmin.FindSchemaRequest + 31, // 122: vtadmin.VTAdmin.GetBackups:input_type -> vtadmin.GetBackupsRequest + 33, // 123: vtadmin.VTAdmin.GetCellInfos:input_type -> vtadmin.GetCellInfosRequest + 35, // 124: vtadmin.VTAdmin.GetCellsAliases:input_type -> vtadmin.GetCellsAliasesRequest + 37, // 125: vtadmin.VTAdmin.GetClusters:input_type -> vtadmin.GetClustersRequest + 39, // 126: vtadmin.VTAdmin.GetFullStatus:input_type -> vtadmin.GetFullStatusRequest + 40, // 127: vtadmin.VTAdmin.GetGates:input_type -> vtadmin.GetGatesRequest + 42, // 128: vtadmin.VTAdmin.GetKeyspace:input_type -> vtadmin.GetKeyspaceRequest + 43, // 129: vtadmin.VTAdmin.GetKeyspaces:input_type -> vtadmin.GetKeyspacesRequest + 45, // 130: vtadmin.VTAdmin.GetSchema:input_type -> vtadmin.GetSchemaRequest + 46, // 131: vtadmin.VTAdmin.GetSchemas:input_type -> vtadmin.GetSchemasRequest + 48, // 132: vtadmin.VTAdmin.GetSchemaMigrations:input_type -> vtadmin.GetSchemaMigrationsRequest + 50, // 133: vtadmin.VTAdmin.GetShardReplicationPositions:input_type -> vtadmin.GetShardReplicationPositionsRequest + 52, // 134: vtadmin.VTAdmin.GetSrvKeyspace:input_type -> vtadmin.GetSrvKeyspaceRequest + 53, // 135: vtadmin.VTAdmin.GetSrvKeyspaces:input_type -> vtadmin.GetSrvKeyspacesRequest + 55, // 136: vtadmin.VTAdmin.GetSrvVSchema:input_type -> vtadmin.GetSrvVSchemaRequest + 56, // 137: vtadmin.VTAdmin.GetSrvVSchemas:input_type -> vtadmin.GetSrvVSchemasRequest + 59, // 138: vtadmin.VTAdmin.GetTablet:input_type -> vtadmin.GetTabletRequest + 60, // 139: vtadmin.VTAdmin.GetTablets:input_type -> vtadmin.GetTabletsRequest + 62, // 140: vtadmin.VTAdmin.GetTopologyPath:input_type -> vtadmin.GetTopologyPathRequest + 63, // 141: vtadmin.VTAdmin.GetVSchema:input_type -> vtadmin.GetVSchemaRequest + 64, // 142: vtadmin.VTAdmin.GetVSchemas:input_type -> vtadmin.GetVSchemasRequest + 66, // 143: vtadmin.VTAdmin.GetVtctlds:input_type -> vtadmin.GetVtctldsRequest + 68, // 144: vtadmin.VTAdmin.GetWorkflow:input_type -> vtadmin.GetWorkflowRequest + 69, // 145: vtadmin.VTAdmin.GetWorkflows:input_type -> vtadmin.GetWorkflowsRequest + 71, // 146: vtadmin.VTAdmin.LaunchSchemaMigration:input_type -> vtadmin.LaunchSchemaMigrationRequest + 72, // 147: vtadmin.VTAdmin.PingTablet:input_type -> vtadmin.PingTabletRequest + 74, // 148: vtadmin.VTAdmin.PlannedFailoverShard:input_type -> vtadmin.PlannedFailoverShardRequest + 76, // 149: vtadmin.VTAdmin.RebuildKeyspaceGraph:input_type -> vtadmin.RebuildKeyspaceGraphRequest + 78, // 150: vtadmin.VTAdmin.RefreshState:input_type -> vtadmin.RefreshStateRequest + 84, // 151: vtadmin.VTAdmin.RefreshTabletReplicationSource:input_type -> vtadmin.RefreshTabletReplicationSourceRequest + 80, // 152: vtadmin.VTAdmin.ReloadSchemas:input_type -> vtadmin.ReloadSchemasRequest + 82, // 153: vtadmin.VTAdmin.ReloadSchemaShard:input_type -> vtadmin.ReloadSchemaShardRequest + 86, // 154: vtadmin.VTAdmin.RemoveKeyspaceCell:input_type -> vtadmin.RemoveKeyspaceCellRequest + 88, // 155: vtadmin.VTAdmin.RetrySchemaMigration:input_type -> vtadmin.RetrySchemaMigrationRequest + 89, // 156: vtadmin.VTAdmin.RunHealthCheck:input_type -> vtadmin.RunHealthCheckRequest + 91, // 157: vtadmin.VTAdmin.SetReadOnly:input_type -> vtadmin.SetReadOnlyRequest + 93, // 158: vtadmin.VTAdmin.SetReadWrite:input_type -> vtadmin.SetReadWriteRequest + 95, // 159: vtadmin.VTAdmin.StartReplication:input_type -> vtadmin.StartReplicationRequest + 97, // 160: vtadmin.VTAdmin.StopReplication:input_type -> vtadmin.StopReplicationRequest + 99, // 161: vtadmin.VTAdmin.TabletExternallyPromoted:input_type -> vtadmin.TabletExternallyPromotedRequest + 102, // 162: vtadmin.VTAdmin.Validate:input_type -> vtadmin.ValidateRequest + 103, // 163: vtadmin.VTAdmin.ValidateKeyspace:input_type -> vtadmin.ValidateKeyspaceRequest + 104, // 164: vtadmin.VTAdmin.ValidateSchemaKeyspace:input_type -> vtadmin.ValidateSchemaKeyspaceRequest + 105, // 165: vtadmin.VTAdmin.ValidateShard:input_type -> vtadmin.ValidateShardRequest + 106, // 166: vtadmin.VTAdmin.ValidateVersionKeyspace:input_type -> vtadmin.ValidateVersionKeyspaceRequest + 107, // 167: vtadmin.VTAdmin.ValidateVersionShard:input_type -> vtadmin.ValidateVersionShardRequest + 108, // 168: vtadmin.VTAdmin.VTExplain:input_type -> vtadmin.VTExplainRequest + 151, // 169: vtadmin.VTAdmin.ApplySchema:output_type -> vtctldata.ApplySchemaResponse + 152, // 170: vtadmin.VTAdmin.CancelSchemaMigration:output_type -> vtctldata.CancelSchemaMigrationResponse + 153, // 171: vtadmin.VTAdmin.CleanupSchemaMigration:output_type -> vtctldata.CleanupSchemaMigrationResponse + 154, // 172: vtadmin.VTAdmin.CompleteSchemaMigration:output_type -> vtctldata.CompleteSchemaMigrationResponse + 22, // 173: vtadmin.VTAdmin.CreateKeyspace:output_type -> vtadmin.CreateKeyspaceResponse + 155, // 174: vtadmin.VTAdmin.CreateShard:output_type -> vtctldata.CreateShardResponse + 156, // 175: vtadmin.VTAdmin.DeleteKeyspace:output_type -> vtctldata.DeleteKeyspaceResponse + 157, // 176: vtadmin.VTAdmin.DeleteShards:output_type -> vtctldata.DeleteShardsResponse + 27, // 177: vtadmin.VTAdmin.DeleteTablet:output_type -> vtadmin.DeleteTabletResponse + 29, // 178: vtadmin.VTAdmin.EmergencyFailoverShard:output_type -> vtadmin.EmergencyFailoverShardResponse + 8, // 179: vtadmin.VTAdmin.FindSchema:output_type -> vtadmin.Schema + 32, // 180: vtadmin.VTAdmin.GetBackups:output_type -> vtadmin.GetBackupsResponse + 34, // 181: vtadmin.VTAdmin.GetCellInfos:output_type -> vtadmin.GetCellInfosResponse + 36, // 182: vtadmin.VTAdmin.GetCellsAliases:output_type -> vtadmin.GetCellsAliasesResponse + 38, // 183: vtadmin.VTAdmin.GetClusters:output_type -> vtadmin.GetClustersResponse + 158, // 184: vtadmin.VTAdmin.GetFullStatus:output_type -> vtctldata.GetFullStatusResponse + 41, // 185: vtadmin.VTAdmin.GetGates:output_type -> vtadmin.GetGatesResponse + 7, // 186: vtadmin.VTAdmin.GetKeyspace:output_type -> vtadmin.Keyspace + 44, // 187: vtadmin.VTAdmin.GetKeyspaces:output_type -> vtadmin.GetKeyspacesResponse + 8, // 188: vtadmin.VTAdmin.GetSchema:output_type -> vtadmin.Schema + 47, // 189: vtadmin.VTAdmin.GetSchemas:output_type -> vtadmin.GetSchemasResponse + 49, // 190: vtadmin.VTAdmin.GetSchemaMigrations:output_type -> vtadmin.GetSchemaMigrationsResponse + 51, // 191: vtadmin.VTAdmin.GetShardReplicationPositions:output_type -> vtadmin.GetShardReplicationPositionsResponse + 150, // 192: vtadmin.VTAdmin.GetSrvKeyspace:output_type -> vtctldata.GetSrvKeyspacesResponse + 54, // 193: vtadmin.VTAdmin.GetSrvKeyspaces:output_type -> vtadmin.GetSrvKeyspacesResponse + 11, // 194: vtadmin.VTAdmin.GetSrvVSchema:output_type -> vtadmin.SrvVSchema + 57, // 195: vtadmin.VTAdmin.GetSrvVSchemas:output_type -> vtadmin.GetSrvVSchemasResponse + 12, // 196: vtadmin.VTAdmin.GetTablet:output_type -> vtadmin.Tablet + 61, // 197: vtadmin.VTAdmin.GetTablets:output_type -> vtadmin.GetTabletsResponse + 159, // 198: vtadmin.VTAdmin.GetTopologyPath:output_type -> vtctldata.GetTopologyPathResponse + 13, // 199: vtadmin.VTAdmin.GetVSchema:output_type -> vtadmin.VSchema + 65, // 200: vtadmin.VTAdmin.GetVSchemas:output_type -> vtadmin.GetVSchemasResponse + 67, // 201: vtadmin.VTAdmin.GetVtctlds:output_type -> vtadmin.GetVtctldsResponse + 16, // 202: vtadmin.VTAdmin.GetWorkflow:output_type -> vtadmin.Workflow + 70, // 203: vtadmin.VTAdmin.GetWorkflows:output_type -> vtadmin.GetWorkflowsResponse + 160, // 204: vtadmin.VTAdmin.LaunchSchemaMigration:output_type -> vtctldata.LaunchSchemaMigrationResponse + 73, // 205: vtadmin.VTAdmin.PingTablet:output_type -> vtadmin.PingTabletResponse + 75, // 206: vtadmin.VTAdmin.PlannedFailoverShard:output_type -> vtadmin.PlannedFailoverShardResponse + 77, // 207: vtadmin.VTAdmin.RebuildKeyspaceGraph:output_type -> vtadmin.RebuildKeyspaceGraphResponse + 79, // 208: vtadmin.VTAdmin.RefreshState:output_type -> vtadmin.RefreshStateResponse + 85, // 209: vtadmin.VTAdmin.RefreshTabletReplicationSource:output_type -> vtadmin.RefreshTabletReplicationSourceResponse + 81, // 210: vtadmin.VTAdmin.ReloadSchemas:output_type -> vtadmin.ReloadSchemasResponse + 83, // 211: vtadmin.VTAdmin.ReloadSchemaShard:output_type -> vtadmin.ReloadSchemaShardResponse + 87, // 212: vtadmin.VTAdmin.RemoveKeyspaceCell:output_type -> vtadmin.RemoveKeyspaceCellResponse + 161, // 213: vtadmin.VTAdmin.RetrySchemaMigration:output_type -> vtctldata.RetrySchemaMigrationResponse + 90, // 214: vtadmin.VTAdmin.RunHealthCheck:output_type -> vtadmin.RunHealthCheckResponse + 92, // 215: vtadmin.VTAdmin.SetReadOnly:output_type -> vtadmin.SetReadOnlyResponse + 94, // 216: vtadmin.VTAdmin.SetReadWrite:output_type -> vtadmin.SetReadWriteResponse + 96, // 217: vtadmin.VTAdmin.StartReplication:output_type -> vtadmin.StartReplicationResponse + 98, // 218: vtadmin.VTAdmin.StopReplication:output_type -> vtadmin.StopReplicationResponse + 100, // 219: vtadmin.VTAdmin.TabletExternallyPromoted:output_type -> vtadmin.TabletExternallyPromotedResponse + 162, // 220: vtadmin.VTAdmin.Validate:output_type -> vtctldata.ValidateResponse + 163, // 221: vtadmin.VTAdmin.ValidateKeyspace:output_type -> vtctldata.ValidateKeyspaceResponse + 164, // 222: vtadmin.VTAdmin.ValidateSchemaKeyspace:output_type -> vtctldata.ValidateSchemaKeyspaceResponse + 165, // 223: vtadmin.VTAdmin.ValidateShard:output_type -> vtctldata.ValidateShardResponse + 166, // 224: vtadmin.VTAdmin.ValidateVersionKeyspace:output_type -> vtctldata.ValidateVersionKeyspaceResponse + 167, // 225: vtadmin.VTAdmin.ValidateVersionShard:output_type -> vtctldata.ValidateVersionShardResponse + 109, // 226: vtadmin.VTAdmin.VTExplain:output_type -> vtadmin.VTExplainResponse + 169, // [169:227] is the sub-list for method output_type + 111, // [111:169] is the sub-list for method input_type + 111, // [111:111] is the sub-list for extension type_name + 111, // [111:111] is the sub-list for extension extendee + 0, // [0:111] is the sub-list for field type_name } func init() { file_vtadmin_proto_init() } @@ -7765,8 +8471,68 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Keyspace); i { + file_vtadmin_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Keyspace); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vtadmin_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Schema); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vtadmin_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SchemaMigration); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vtadmin_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Shard); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vtadmin_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SrvVSchema); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vtadmin_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Tablet); i { case 0: return &v.state case 1: @@ -7777,8 +8543,8 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Schema); i { + file_vtadmin_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VSchema); i { case 0: return &v.state case 1: @@ -7789,8 +8555,8 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Shard); i { + file_vtadmin_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Vtctld); i { case 0: return &v.state case 1: @@ -7801,8 +8567,8 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SrvVSchema); i { + file_vtadmin_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VTGate); i { case 0: return &v.state case 1: @@ -7813,8 +8579,8 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Tablet); i { + file_vtadmin_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Workflow); i { case 0: return &v.state case 1: @@ -7825,8 +8591,8 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*VSchema); i { + file_vtadmin_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ApplySchemaRequest); i { case 0: return &v.state case 1: @@ -7837,8 +8603,8 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Vtctld); i { + file_vtadmin_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CancelSchemaMigrationRequest); i { case 0: return &v.state case 1: @@ -7849,8 +8615,8 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*VTGate); i { + file_vtadmin_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CleanupSchemaMigrationRequest); i { case 0: return &v.state case 1: @@ -7861,8 +8627,8 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Workflow); i { + file_vtadmin_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CompleteSchemaMigrationRequest); i { case 0: return &v.state case 1: @@ -7873,7 +8639,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CreateKeyspaceRequest); i { case 0: return &v.state @@ -7885,7 +8651,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CreateKeyspaceResponse); i { case 0: return &v.state @@ -7897,7 +8663,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CreateShardRequest); i { case 0: return &v.state @@ -7909,7 +8675,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DeleteKeyspaceRequest); i { case 0: return &v.state @@ -7921,7 +8687,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DeleteShardsRequest); i { case 0: return &v.state @@ -7933,7 +8699,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DeleteTabletRequest); i { case 0: return &v.state @@ -7945,7 +8711,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DeleteTabletResponse); i { case 0: return &v.state @@ -7957,7 +8723,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EmergencyFailoverShardRequest); i { case 0: return &v.state @@ -7969,7 +8735,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EmergencyFailoverShardResponse); i { case 0: return &v.state @@ -7981,7 +8747,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FindSchemaRequest); i { case 0: return &v.state @@ -7993,7 +8759,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetBackupsRequest); i { case 0: return &v.state @@ -8005,7 +8771,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetBackupsResponse); i { case 0: return &v.state @@ -8017,7 +8783,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetCellInfosRequest); i { case 0: return &v.state @@ -8029,7 +8795,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetCellInfosResponse); i { case 0: return &v.state @@ -8041,7 +8807,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetCellsAliasesRequest); i { case 0: return &v.state @@ -8053,7 +8819,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetCellsAliasesResponse); i { case 0: return &v.state @@ -8065,7 +8831,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetClustersRequest); i { case 0: return &v.state @@ -8077,7 +8843,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetClustersResponse); i { case 0: return &v.state @@ -8089,7 +8855,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetFullStatusRequest); i { case 0: return &v.state @@ -8101,7 +8867,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetGatesRequest); i { case 0: return &v.state @@ -8113,7 +8879,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetGatesResponse); i { case 0: return &v.state @@ -8125,7 +8891,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetKeyspaceRequest); i { case 0: return &v.state @@ -8137,7 +8903,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetKeyspacesRequest); i { case 0: return &v.state @@ -8149,7 +8915,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetKeyspacesResponse); i { case 0: return &v.state @@ -8161,7 +8927,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetSchemaRequest); i { case 0: return &v.state @@ -8173,7 +8939,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetSchemasRequest); i { case 0: return &v.state @@ -8185,7 +8951,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetSchemasResponse); i { case 0: return &v.state @@ -8197,7 +8963,31 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetSchemaMigrationsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vtadmin_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetSchemaMigrationsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vtadmin_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetShardReplicationPositionsRequest); i { case 0: return &v.state @@ -8209,7 +8999,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetShardReplicationPositionsResponse); i { case 0: return &v.state @@ -8221,7 +9011,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetSrvKeyspaceRequest); i { case 0: return &v.state @@ -8233,7 +9023,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetSrvKeyspacesRequest); i { case 0: return &v.state @@ -8245,7 +9035,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetSrvKeyspacesResponse); i { case 0: return &v.state @@ -8257,7 +9047,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetSrvVSchemaRequest); i { case 0: return &v.state @@ -8269,7 +9059,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetSrvVSchemasRequest); i { case 0: return &v.state @@ -8281,7 +9071,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetSrvVSchemasResponse); i { case 0: return &v.state @@ -8293,7 +9083,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetSchemaTableSizeOptions); i { case 0: return &v.state @@ -8305,7 +9095,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetTabletRequest); i { case 0: return &v.state @@ -8317,7 +9107,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetTabletsRequest); i { case 0: return &v.state @@ -8329,7 +9119,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetTabletsResponse); i { case 0: return &v.state @@ -8341,7 +9131,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetTopologyPathRequest); i { case 0: return &v.state @@ -8353,7 +9143,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetVSchemaRequest); i { case 0: return &v.state @@ -8365,7 +9155,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetVSchemasRequest); i { case 0: return &v.state @@ -8377,7 +9167,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetVSchemasResponse); i { case 0: return &v.state @@ -8389,7 +9179,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetVtctldsRequest); i { case 0: return &v.state @@ -8401,7 +9191,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetVtctldsResponse); i { case 0: return &v.state @@ -8413,7 +9203,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetWorkflowRequest); i { case 0: return &v.state @@ -8425,7 +9215,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetWorkflowsRequest); i { case 0: return &v.state @@ -8437,7 +9227,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetWorkflowsResponse); i { case 0: return &v.state @@ -8449,7 +9239,19 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LaunchSchemaMigrationRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vtadmin_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PingTabletRequest); i { case 0: return &v.state @@ -8461,7 +9263,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PingTabletResponse); i { case 0: return &v.state @@ -8473,7 +9275,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PlannedFailoverShardRequest); i { case 0: return &v.state @@ -8485,7 +9287,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PlannedFailoverShardResponse); i { case 0: return &v.state @@ -8497,7 +9299,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RebuildKeyspaceGraphRequest); i { case 0: return &v.state @@ -8509,7 +9311,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RebuildKeyspaceGraphResponse); i { case 0: return &v.state @@ -8521,7 +9323,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RefreshStateRequest); i { case 0: return &v.state @@ -8533,7 +9335,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RefreshStateResponse); i { case 0: return &v.state @@ -8545,7 +9347,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ReloadSchemasRequest); i { case 0: return &v.state @@ -8557,7 +9359,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ReloadSchemasResponse); i { case 0: return &v.state @@ -8569,7 +9371,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ReloadSchemaShardRequest); i { case 0: return &v.state @@ -8581,7 +9383,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ReloadSchemaShardResponse); i { case 0: return &v.state @@ -8593,7 +9395,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RefreshTabletReplicationSourceRequest); i { case 0: return &v.state @@ -8605,7 +9407,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RefreshTabletReplicationSourceResponse); i { case 0: return &v.state @@ -8617,7 +9419,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveKeyspaceCellRequest); i { case 0: return &v.state @@ -8629,7 +9431,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveKeyspaceCellResponse); i { case 0: return &v.state @@ -8641,7 +9443,19 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RetrySchemaMigrationRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vtadmin_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RunHealthCheckRequest); i { case 0: return &v.state @@ -8653,7 +9467,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RunHealthCheckResponse); i { case 0: return &v.state @@ -8665,7 +9479,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetReadOnlyRequest); i { case 0: return &v.state @@ -8677,7 +9491,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetReadOnlyResponse); i { case 0: return &v.state @@ -8689,7 +9503,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetReadWriteRequest); i { case 0: return &v.state @@ -8701,7 +9515,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetReadWriteResponse); i { case 0: return &v.state @@ -8713,7 +9527,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StartReplicationRequest); i { case 0: return &v.state @@ -8725,7 +9539,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StartReplicationResponse); i { case 0: return &v.state @@ -8737,7 +9551,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StopReplicationRequest); i { case 0: return &v.state @@ -8749,7 +9563,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StopReplicationResponse); i { case 0: return &v.state @@ -8761,7 +9575,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TabletExternallyPromotedRequest); i { case 0: return &v.state @@ -8773,7 +9587,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TabletExternallyPromotedResponse); i { case 0: return &v.state @@ -8785,7 +9599,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TabletExternallyReparentedRequest); i { case 0: return &v.state @@ -8797,7 +9611,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ValidateRequest); i { case 0: return &v.state @@ -8809,7 +9623,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ValidateKeyspaceRequest); i { case 0: return &v.state @@ -8821,7 +9635,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ValidateSchemaKeyspaceRequest); i { case 0: return &v.state @@ -8833,7 +9647,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ValidateShardRequest); i { case 0: return &v.state @@ -8845,7 +9659,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ValidateVersionKeyspaceRequest); i { case 0: return &v.state @@ -8857,7 +9671,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ValidateVersionShardRequest); i { case 0: return &v.state @@ -8869,7 +9683,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*VTExplainRequest); i { case 0: return &v.state @@ -8881,7 +9695,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*VTExplainResponse); i { case 0: return &v.state @@ -8893,7 +9707,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Schema_ShardTableSize); i { case 0: return &v.state @@ -8905,7 +9719,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Schema_TableSize); i { case 0: return &v.state @@ -8917,7 +9731,19 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetSchemaMigrationsRequest_ClusterRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_vtadmin_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ReloadSchemasResponse_KeyspaceResult); i { case 0: return &v.state @@ -8929,7 +9755,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ReloadSchemasResponse_ShardResult); i { case 0: return &v.state @@ -8941,7 +9767,7 @@ func file_vtadmin_proto_init() { return nil } } - file_vtadmin_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { + file_vtadmin_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ReloadSchemasResponse_TabletResult); i { case 0: return &v.state @@ -8960,7 +9786,7 @@ func file_vtadmin_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_vtadmin_proto_rawDesc, NumEnums: 1, - NumMessages: 111, + NumMessages: 121, NumExtensions: 0, NumServices: 1, }, diff --git a/go/vt/proto/vtadmin/vtadmin_grpc.pb.go b/go/vt/proto/vtadmin/vtadmin_grpc.pb.go index e0e2ce2f44f..1e377d0659f 100644 --- a/go/vt/proto/vtadmin/vtadmin_grpc.pb.go +++ b/go/vt/proto/vtadmin/vtadmin_grpc.pb.go @@ -23,6 +23,17 @@ const _ = grpc.SupportPackageIsVersion7 // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type VTAdminClient interface { + // ApplySchema applies a schema to a keyspace in the given cluster. + ApplySchema(ctx context.Context, in *ApplySchemaRequest, opts ...grpc.CallOption) (*vtctldata.ApplySchemaResponse, error) + // CancelSchemaMigration cancels one or all schema migrations in the given + // cluster, terminating any running ones as needed. + CancelSchemaMigration(ctx context.Context, in *CancelSchemaMigrationRequest, opts ...grpc.CallOption) (*vtctldata.CancelSchemaMigrationResponse, error) + // CleanupSchemaMigration marks a schema migration in the given cluster as + // ready for artifact cleanup. + CleanupSchemaMigration(ctx context.Context, in *CleanupSchemaMigrationRequest, opts ...grpc.CallOption) (*vtctldata.CleanupSchemaMigrationResponse, error) + // CompleteSchemaMigration completes one or all migrations in the given + // cluster executed with --postpone-completion. + CompleteSchemaMigration(ctx context.Context, in *CompleteSchemaMigrationRequest, opts ...grpc.CallOption) (*vtctldata.CompleteSchemaMigrationResponse, error) // CreateKeyspace creates a new keyspace in the given cluster. CreateKeyspace(ctx context.Context, in *CreateKeyspaceRequest, opts ...grpc.CallOption) (*CreateKeyspaceResponse, error) // CreateShard creates a new shard in the given cluster and keyspace. @@ -67,6 +78,13 @@ type VTAdminClient interface { GetSchema(ctx context.Context, in *GetSchemaRequest, opts ...grpc.CallOption) (*Schema, error) // GetSchemas returns all schemas across the specified clusters. GetSchemas(ctx context.Context, in *GetSchemasRequest, opts ...grpc.CallOption) (*GetSchemasResponse, error) + // GetSchemaMigrations returns one or more online schema migrations for the + // set of keyspaces (or all keyspaces) in the given clusters, analagous to + // repeated executions of `SHOW VITESS_MIGRATIONS`. + // + // Different fields in the request message result in different behaviors. + // See the documentation on vtctldata.GetSchemaMigrationsRequest for details. + GetSchemaMigrations(ctx context.Context, in *GetSchemaMigrationsRequest, opts ...grpc.CallOption) (*GetSchemaMigrationsResponse, error) // GetShardReplicationPositions returns shard replication positions grouped // by cluster. GetShardReplicationPositions(ctx context.Context, in *GetShardReplicationPositionsRequest, opts ...grpc.CallOption) (*GetShardReplicationPositionsResponse, error) @@ -98,6 +116,9 @@ type VTAdminClient interface { GetWorkflow(ctx context.Context, in *GetWorkflowRequest, opts ...grpc.CallOption) (*Workflow, error) // GetWorkflows returns the Workflows for all specified clusters. GetWorkflows(ctx context.Context, in *GetWorkflowsRequest, opts ...grpc.CallOption) (*GetWorkflowsResponse, error) + // LaunchSchemaMigration launches one or all migrations in the given + // cluster executed with --postpone-launch. + LaunchSchemaMigration(ctx context.Context, in *LaunchSchemaMigrationRequest, opts ...grpc.CallOption) (*vtctldata.LaunchSchemaMigrationResponse, error) // PingTablet checks that the specified tablet is awake and responding to // RPCs. This command can be blocked by other in-flight operations. PingTablet(ctx context.Context, in *PingTabletRequest, opts ...grpc.CallOption) (*PingTabletResponse, error) @@ -124,6 +145,9 @@ type VTAdminClient interface { ReloadSchemaShard(ctx context.Context, in *ReloadSchemaShardRequest, opts ...grpc.CallOption) (*ReloadSchemaShardResponse, error) // RemoveKeyspaceCell removes the cell from the Cells list for all shards in the keyspace, and the SrvKeyspace for that keyspace in that cell. RemoveKeyspaceCell(ctx context.Context, in *RemoveKeyspaceCellRequest, opts ...grpc.CallOption) (*RemoveKeyspaceCellResponse, error) + // RetrySchemaMigration marks a given schema migration in the given cluster + // for retry. + RetrySchemaMigration(ctx context.Context, in *RetrySchemaMigrationRequest, opts ...grpc.CallOption) (*vtctldata.RetrySchemaMigrationResponse, error) // RunHealthCheck runs a healthcheck on the tablet. RunHealthCheck(ctx context.Context, in *RunHealthCheckRequest, opts ...grpc.CallOption) (*RunHealthCheckResponse, error) // SetReadOnly sets the tablet to read-only mode. @@ -176,6 +200,42 @@ func NewVTAdminClient(cc grpc.ClientConnInterface) VTAdminClient { return &vTAdminClient{cc} } +func (c *vTAdminClient) ApplySchema(ctx context.Context, in *ApplySchemaRequest, opts ...grpc.CallOption) (*vtctldata.ApplySchemaResponse, error) { + out := new(vtctldata.ApplySchemaResponse) + err := c.cc.Invoke(ctx, "/vtadmin.VTAdmin/ApplySchema", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *vTAdminClient) CancelSchemaMigration(ctx context.Context, in *CancelSchemaMigrationRequest, opts ...grpc.CallOption) (*vtctldata.CancelSchemaMigrationResponse, error) { + out := new(vtctldata.CancelSchemaMigrationResponse) + err := c.cc.Invoke(ctx, "/vtadmin.VTAdmin/CancelSchemaMigration", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *vTAdminClient) CleanupSchemaMigration(ctx context.Context, in *CleanupSchemaMigrationRequest, opts ...grpc.CallOption) (*vtctldata.CleanupSchemaMigrationResponse, error) { + out := new(vtctldata.CleanupSchemaMigrationResponse) + err := c.cc.Invoke(ctx, "/vtadmin.VTAdmin/CleanupSchemaMigration", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *vTAdminClient) CompleteSchemaMigration(ctx context.Context, in *CompleteSchemaMigrationRequest, opts ...grpc.CallOption) (*vtctldata.CompleteSchemaMigrationResponse, error) { + out := new(vtctldata.CompleteSchemaMigrationResponse) + err := c.cc.Invoke(ctx, "/vtadmin.VTAdmin/CompleteSchemaMigration", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *vTAdminClient) CreateKeyspace(ctx context.Context, in *CreateKeyspaceRequest, opts ...grpc.CallOption) (*CreateKeyspaceResponse, error) { out := new(CreateKeyspaceResponse) err := c.cc.Invoke(ctx, "/vtadmin.VTAdmin/CreateKeyspace", in, out, opts...) @@ -329,6 +389,15 @@ func (c *vTAdminClient) GetSchemas(ctx context.Context, in *GetSchemasRequest, o return out, nil } +func (c *vTAdminClient) GetSchemaMigrations(ctx context.Context, in *GetSchemaMigrationsRequest, opts ...grpc.CallOption) (*GetSchemaMigrationsResponse, error) { + out := new(GetSchemaMigrationsResponse) + err := c.cc.Invoke(ctx, "/vtadmin.VTAdmin/GetSchemaMigrations", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *vTAdminClient) GetShardReplicationPositions(ctx context.Context, in *GetShardReplicationPositionsRequest, opts ...grpc.CallOption) (*GetShardReplicationPositionsResponse, error) { out := new(GetShardReplicationPositionsResponse) err := c.cc.Invoke(ctx, "/vtadmin.VTAdmin/GetShardReplicationPositions", in, out, opts...) @@ -446,6 +515,15 @@ func (c *vTAdminClient) GetWorkflows(ctx context.Context, in *GetWorkflowsReques return out, nil } +func (c *vTAdminClient) LaunchSchemaMigration(ctx context.Context, in *LaunchSchemaMigrationRequest, opts ...grpc.CallOption) (*vtctldata.LaunchSchemaMigrationResponse, error) { + out := new(vtctldata.LaunchSchemaMigrationResponse) + err := c.cc.Invoke(ctx, "/vtadmin.VTAdmin/LaunchSchemaMigration", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *vTAdminClient) PingTablet(ctx context.Context, in *PingTabletRequest, opts ...grpc.CallOption) (*PingTabletResponse, error) { out := new(PingTabletResponse) err := c.cc.Invoke(ctx, "/vtadmin.VTAdmin/PingTablet", in, out, opts...) @@ -518,6 +596,15 @@ func (c *vTAdminClient) RemoveKeyspaceCell(ctx context.Context, in *RemoveKeyspa return out, nil } +func (c *vTAdminClient) RetrySchemaMigration(ctx context.Context, in *RetrySchemaMigrationRequest, opts ...grpc.CallOption) (*vtctldata.RetrySchemaMigrationResponse, error) { + out := new(vtctldata.RetrySchemaMigrationResponse) + err := c.cc.Invoke(ctx, "/vtadmin.VTAdmin/RetrySchemaMigration", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *vTAdminClient) RunHealthCheck(ctx context.Context, in *RunHealthCheckRequest, opts ...grpc.CallOption) (*RunHealthCheckResponse, error) { out := new(RunHealthCheckResponse) err := c.cc.Invoke(ctx, "/vtadmin.VTAdmin/RunHealthCheck", in, out, opts...) @@ -639,6 +726,17 @@ func (c *vTAdminClient) VTExplain(ctx context.Context, in *VTExplainRequest, opt // All implementations must embed UnimplementedVTAdminServer // for forward compatibility type VTAdminServer interface { + // ApplySchema applies a schema to a keyspace in the given cluster. + ApplySchema(context.Context, *ApplySchemaRequest) (*vtctldata.ApplySchemaResponse, error) + // CancelSchemaMigration cancels one or all schema migrations in the given + // cluster, terminating any running ones as needed. + CancelSchemaMigration(context.Context, *CancelSchemaMigrationRequest) (*vtctldata.CancelSchemaMigrationResponse, error) + // CleanupSchemaMigration marks a schema migration in the given cluster as + // ready for artifact cleanup. + CleanupSchemaMigration(context.Context, *CleanupSchemaMigrationRequest) (*vtctldata.CleanupSchemaMigrationResponse, error) + // CompleteSchemaMigration completes one or all migrations in the given + // cluster executed with --postpone-completion. + CompleteSchemaMigration(context.Context, *CompleteSchemaMigrationRequest) (*vtctldata.CompleteSchemaMigrationResponse, error) // CreateKeyspace creates a new keyspace in the given cluster. CreateKeyspace(context.Context, *CreateKeyspaceRequest) (*CreateKeyspaceResponse, error) // CreateShard creates a new shard in the given cluster and keyspace. @@ -683,6 +781,13 @@ type VTAdminServer interface { GetSchema(context.Context, *GetSchemaRequest) (*Schema, error) // GetSchemas returns all schemas across the specified clusters. GetSchemas(context.Context, *GetSchemasRequest) (*GetSchemasResponse, error) + // GetSchemaMigrations returns one or more online schema migrations for the + // set of keyspaces (or all keyspaces) in the given clusters, analagous to + // repeated executions of `SHOW VITESS_MIGRATIONS`. + // + // Different fields in the request message result in different behaviors. + // See the documentation on vtctldata.GetSchemaMigrationsRequest for details. + GetSchemaMigrations(context.Context, *GetSchemaMigrationsRequest) (*GetSchemaMigrationsResponse, error) // GetShardReplicationPositions returns shard replication positions grouped // by cluster. GetShardReplicationPositions(context.Context, *GetShardReplicationPositionsRequest) (*GetShardReplicationPositionsResponse, error) @@ -714,6 +819,9 @@ type VTAdminServer interface { GetWorkflow(context.Context, *GetWorkflowRequest) (*Workflow, error) // GetWorkflows returns the Workflows for all specified clusters. GetWorkflows(context.Context, *GetWorkflowsRequest) (*GetWorkflowsResponse, error) + // LaunchSchemaMigration launches one or all migrations in the given + // cluster executed with --postpone-launch. + LaunchSchemaMigration(context.Context, *LaunchSchemaMigrationRequest) (*vtctldata.LaunchSchemaMigrationResponse, error) // PingTablet checks that the specified tablet is awake and responding to // RPCs. This command can be blocked by other in-flight operations. PingTablet(context.Context, *PingTabletRequest) (*PingTabletResponse, error) @@ -740,6 +848,9 @@ type VTAdminServer interface { ReloadSchemaShard(context.Context, *ReloadSchemaShardRequest) (*ReloadSchemaShardResponse, error) // RemoveKeyspaceCell removes the cell from the Cells list for all shards in the keyspace, and the SrvKeyspace for that keyspace in that cell. RemoveKeyspaceCell(context.Context, *RemoveKeyspaceCellRequest) (*RemoveKeyspaceCellResponse, error) + // RetrySchemaMigration marks a given schema migration in the given cluster + // for retry. + RetrySchemaMigration(context.Context, *RetrySchemaMigrationRequest) (*vtctldata.RetrySchemaMigrationResponse, error) // RunHealthCheck runs a healthcheck on the tablet. RunHealthCheck(context.Context, *RunHealthCheckRequest) (*RunHealthCheckResponse, error) // SetReadOnly sets the tablet to read-only mode. @@ -789,6 +900,18 @@ type VTAdminServer interface { type UnimplementedVTAdminServer struct { } +func (UnimplementedVTAdminServer) ApplySchema(context.Context, *ApplySchemaRequest) (*vtctldata.ApplySchemaResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ApplySchema not implemented") +} +func (UnimplementedVTAdminServer) CancelSchemaMigration(context.Context, *CancelSchemaMigrationRequest) (*vtctldata.CancelSchemaMigrationResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method CancelSchemaMigration not implemented") +} +func (UnimplementedVTAdminServer) CleanupSchemaMigration(context.Context, *CleanupSchemaMigrationRequest) (*vtctldata.CleanupSchemaMigrationResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method CleanupSchemaMigration not implemented") +} +func (UnimplementedVTAdminServer) CompleteSchemaMigration(context.Context, *CompleteSchemaMigrationRequest) (*vtctldata.CompleteSchemaMigrationResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method CompleteSchemaMigration not implemented") +} func (UnimplementedVTAdminServer) CreateKeyspace(context.Context, *CreateKeyspaceRequest) (*CreateKeyspaceResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method CreateKeyspace not implemented") } @@ -840,6 +963,9 @@ func (UnimplementedVTAdminServer) GetSchema(context.Context, *GetSchemaRequest) func (UnimplementedVTAdminServer) GetSchemas(context.Context, *GetSchemasRequest) (*GetSchemasResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method GetSchemas not implemented") } +func (UnimplementedVTAdminServer) GetSchemaMigrations(context.Context, *GetSchemaMigrationsRequest) (*GetSchemaMigrationsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetSchemaMigrations not implemented") +} func (UnimplementedVTAdminServer) GetShardReplicationPositions(context.Context, *GetShardReplicationPositionsRequest) (*GetShardReplicationPositionsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method GetShardReplicationPositions not implemented") } @@ -879,6 +1005,9 @@ func (UnimplementedVTAdminServer) GetWorkflow(context.Context, *GetWorkflowReque func (UnimplementedVTAdminServer) GetWorkflows(context.Context, *GetWorkflowsRequest) (*GetWorkflowsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method GetWorkflows not implemented") } +func (UnimplementedVTAdminServer) LaunchSchemaMigration(context.Context, *LaunchSchemaMigrationRequest) (*vtctldata.LaunchSchemaMigrationResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method LaunchSchemaMigration not implemented") +} func (UnimplementedVTAdminServer) PingTablet(context.Context, *PingTabletRequest) (*PingTabletResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method PingTablet not implemented") } @@ -903,6 +1032,9 @@ func (UnimplementedVTAdminServer) ReloadSchemaShard(context.Context, *ReloadSche func (UnimplementedVTAdminServer) RemoveKeyspaceCell(context.Context, *RemoveKeyspaceCellRequest) (*RemoveKeyspaceCellResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method RemoveKeyspaceCell not implemented") } +func (UnimplementedVTAdminServer) RetrySchemaMigration(context.Context, *RetrySchemaMigrationRequest) (*vtctldata.RetrySchemaMigrationResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method RetrySchemaMigration not implemented") +} func (UnimplementedVTAdminServer) RunHealthCheck(context.Context, *RunHealthCheckRequest) (*RunHealthCheckResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method RunHealthCheck not implemented") } @@ -955,6 +1087,78 @@ func RegisterVTAdminServer(s grpc.ServiceRegistrar, srv VTAdminServer) { s.RegisterService(&VTAdmin_ServiceDesc, srv) } +func _VTAdmin_ApplySchema_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ApplySchemaRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(VTAdminServer).ApplySchema(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/vtadmin.VTAdmin/ApplySchema", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(VTAdminServer).ApplySchema(ctx, req.(*ApplySchemaRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _VTAdmin_CancelSchemaMigration_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CancelSchemaMigrationRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(VTAdminServer).CancelSchemaMigration(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/vtadmin.VTAdmin/CancelSchemaMigration", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(VTAdminServer).CancelSchemaMigration(ctx, req.(*CancelSchemaMigrationRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _VTAdmin_CleanupSchemaMigration_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CleanupSchemaMigrationRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(VTAdminServer).CleanupSchemaMigration(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/vtadmin.VTAdmin/CleanupSchemaMigration", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(VTAdminServer).CleanupSchemaMigration(ctx, req.(*CleanupSchemaMigrationRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _VTAdmin_CompleteSchemaMigration_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CompleteSchemaMigrationRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(VTAdminServer).CompleteSchemaMigration(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/vtadmin.VTAdmin/CompleteSchemaMigration", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(VTAdminServer).CompleteSchemaMigration(ctx, req.(*CompleteSchemaMigrationRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _VTAdmin_CreateKeyspace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(CreateKeyspaceRequest) if err := dec(in); err != nil { @@ -1261,6 +1465,24 @@ func _VTAdmin_GetSchemas_Handler(srv interface{}, ctx context.Context, dec func( return interceptor(ctx, in, info, handler) } +func _VTAdmin_GetSchemaMigrations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetSchemaMigrationsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(VTAdminServer).GetSchemaMigrations(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/vtadmin.VTAdmin/GetSchemaMigrations", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(VTAdminServer).GetSchemaMigrations(ctx, req.(*GetSchemaMigrationsRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _VTAdmin_GetShardReplicationPositions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(GetShardReplicationPositionsRequest) if err := dec(in); err != nil { @@ -1495,6 +1717,24 @@ func _VTAdmin_GetWorkflows_Handler(srv interface{}, ctx context.Context, dec fun return interceptor(ctx, in, info, handler) } +func _VTAdmin_LaunchSchemaMigration_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(LaunchSchemaMigrationRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(VTAdminServer).LaunchSchemaMigration(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/vtadmin.VTAdmin/LaunchSchemaMigration", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(VTAdminServer).LaunchSchemaMigration(ctx, req.(*LaunchSchemaMigrationRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _VTAdmin_PingTablet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(PingTabletRequest) if err := dec(in); err != nil { @@ -1639,6 +1879,24 @@ func _VTAdmin_RemoveKeyspaceCell_Handler(srv interface{}, ctx context.Context, d return interceptor(ctx, in, info, handler) } +func _VTAdmin_RetrySchemaMigration_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(RetrySchemaMigrationRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(VTAdminServer).RetrySchemaMigration(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/vtadmin.VTAdmin/RetrySchemaMigration", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(VTAdminServer).RetrySchemaMigration(ctx, req.(*RetrySchemaMigrationRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _VTAdmin_RunHealthCheck_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(RunHealthCheckRequest) if err := dec(in); err != nil { @@ -1880,6 +2138,22 @@ var VTAdmin_ServiceDesc = grpc.ServiceDesc{ ServiceName: "vtadmin.VTAdmin", HandlerType: (*VTAdminServer)(nil), Methods: []grpc.MethodDesc{ + { + MethodName: "ApplySchema", + Handler: _VTAdmin_ApplySchema_Handler, + }, + { + MethodName: "CancelSchemaMigration", + Handler: _VTAdmin_CancelSchemaMigration_Handler, + }, + { + MethodName: "CleanupSchemaMigration", + Handler: _VTAdmin_CleanupSchemaMigration_Handler, + }, + { + MethodName: "CompleteSchemaMigration", + Handler: _VTAdmin_CompleteSchemaMigration_Handler, + }, { MethodName: "CreateKeyspace", Handler: _VTAdmin_CreateKeyspace_Handler, @@ -1948,6 +2222,10 @@ var VTAdmin_ServiceDesc = grpc.ServiceDesc{ MethodName: "GetSchemas", Handler: _VTAdmin_GetSchemas_Handler, }, + { + MethodName: "GetSchemaMigrations", + Handler: _VTAdmin_GetSchemaMigrations_Handler, + }, { MethodName: "GetShardReplicationPositions", Handler: _VTAdmin_GetShardReplicationPositions_Handler, @@ -2000,6 +2278,10 @@ var VTAdmin_ServiceDesc = grpc.ServiceDesc{ MethodName: "GetWorkflows", Handler: _VTAdmin_GetWorkflows_Handler, }, + { + MethodName: "LaunchSchemaMigration", + Handler: _VTAdmin_LaunchSchemaMigration_Handler, + }, { MethodName: "PingTablet", Handler: _VTAdmin_PingTablet_Handler, @@ -2032,6 +2314,10 @@ var VTAdmin_ServiceDesc = grpc.ServiceDesc{ MethodName: "RemoveKeyspaceCell", Handler: _VTAdmin_RemoveKeyspaceCell_Handler, }, + { + MethodName: "RetrySchemaMigration", + Handler: _VTAdmin_RetrySchemaMigration_Handler, + }, { MethodName: "RunHealthCheck", Handler: _VTAdmin_RunHealthCheck_Handler, diff --git a/go/vt/proto/vtadmin/vtadmin_vtproto.pb.go b/go/vt/proto/vtadmin/vtadmin_vtproto.pb.go index 644bb866a14..ce506cb7215 100644 --- a/go/vt/proto/vtadmin/vtadmin_vtproto.pb.go +++ b/go/vt/proto/vtadmin/vtadmin_vtproto.pb.go @@ -261,6 +261,25 @@ func (m *Schema) CloneMessageVT() proto.Message { return m.CloneVT() } +func (m *SchemaMigration) CloneVT() *SchemaMigration { + if m == nil { + return (*SchemaMigration)(nil) + } + r := &SchemaMigration{ + Cluster: m.Cluster.CloneVT(), + SchemaMigration: m.SchemaMigration.CloneVT(), + } + if len(m.unknownFields) > 0 { + r.unknownFields = make([]byte, len(m.unknownFields)) + copy(r.unknownFields, m.unknownFields) + } + return r +} + +func (m *SchemaMigration) CloneMessageVT() proto.Message { + return m.CloneVT() +} + func (m *Shard) CloneVT() *Shard { if m == nil { return (*Shard)(nil) @@ -408,6 +427,82 @@ func (m *Workflow) CloneMessageVT() proto.Message { return m.CloneVT() } +func (m *ApplySchemaRequest) CloneVT() *ApplySchemaRequest { + if m == nil { + return (*ApplySchemaRequest)(nil) + } + r := &ApplySchemaRequest{ + ClusterId: m.ClusterId, + Request: m.Request.CloneVT(), + } + if len(m.unknownFields) > 0 { + r.unknownFields = make([]byte, len(m.unknownFields)) + copy(r.unknownFields, m.unknownFields) + } + return r +} + +func (m *ApplySchemaRequest) CloneMessageVT() proto.Message { + return m.CloneVT() +} + +func (m *CancelSchemaMigrationRequest) CloneVT() *CancelSchemaMigrationRequest { + if m == nil { + return (*CancelSchemaMigrationRequest)(nil) + } + r := &CancelSchemaMigrationRequest{ + ClusterId: m.ClusterId, + Request: m.Request.CloneVT(), + } + if len(m.unknownFields) > 0 { + r.unknownFields = make([]byte, len(m.unknownFields)) + copy(r.unknownFields, m.unknownFields) + } + return r +} + +func (m *CancelSchemaMigrationRequest) CloneMessageVT() proto.Message { + return m.CloneVT() +} + +func (m *CleanupSchemaMigrationRequest) CloneVT() *CleanupSchemaMigrationRequest { + if m == nil { + return (*CleanupSchemaMigrationRequest)(nil) + } + r := &CleanupSchemaMigrationRequest{ + ClusterId: m.ClusterId, + Request: m.Request.CloneVT(), + } + if len(m.unknownFields) > 0 { + r.unknownFields = make([]byte, len(m.unknownFields)) + copy(r.unknownFields, m.unknownFields) + } + return r +} + +func (m *CleanupSchemaMigrationRequest) CloneMessageVT() proto.Message { + return m.CloneVT() +} + +func (m *CompleteSchemaMigrationRequest) CloneVT() *CompleteSchemaMigrationRequest { + if m == nil { + return (*CompleteSchemaMigrationRequest)(nil) + } + r := &CompleteSchemaMigrationRequest{ + ClusterId: m.ClusterId, + Request: m.Request.CloneVT(), + } + if len(m.unknownFields) > 0 { + r.unknownFields = make([]byte, len(m.unknownFields)) + copy(r.unknownFields, m.unknownFields) + } + return r +} + +func (m *CompleteSchemaMigrationRequest) CloneMessageVT() proto.Message { + return m.CloneVT() +} + func (m *CreateKeyspaceRequest) CloneVT() *CreateKeyspaceRequest { if m == nil { return (*CreateKeyspaceRequest)(nil) @@ -999,6 +1094,71 @@ func (m *GetSchemasResponse) CloneMessageVT() proto.Message { return m.CloneVT() } +func (m *GetSchemaMigrationsRequest_ClusterRequest) CloneVT() *GetSchemaMigrationsRequest_ClusterRequest { + if m == nil { + return (*GetSchemaMigrationsRequest_ClusterRequest)(nil) + } + r := &GetSchemaMigrationsRequest_ClusterRequest{ + ClusterId: m.ClusterId, + Request: m.Request.CloneVT(), + } + if len(m.unknownFields) > 0 { + r.unknownFields = make([]byte, len(m.unknownFields)) + copy(r.unknownFields, m.unknownFields) + } + return r +} + +func (m *GetSchemaMigrationsRequest_ClusterRequest) CloneMessageVT() proto.Message { + return m.CloneVT() +} + +func (m *GetSchemaMigrationsRequest) CloneVT() *GetSchemaMigrationsRequest { + if m == nil { + return (*GetSchemaMigrationsRequest)(nil) + } + r := &GetSchemaMigrationsRequest{} + if rhs := m.ClusterRequests; rhs != nil { + tmpContainer := make([]*GetSchemaMigrationsRequest_ClusterRequest, len(rhs)) + for k, v := range rhs { + tmpContainer[k] = v.CloneVT() + } + r.ClusterRequests = tmpContainer + } + if len(m.unknownFields) > 0 { + r.unknownFields = make([]byte, len(m.unknownFields)) + copy(r.unknownFields, m.unknownFields) + } + return r +} + +func (m *GetSchemaMigrationsRequest) CloneMessageVT() proto.Message { + return m.CloneVT() +} + +func (m *GetSchemaMigrationsResponse) CloneVT() *GetSchemaMigrationsResponse { + if m == nil { + return (*GetSchemaMigrationsResponse)(nil) + } + r := &GetSchemaMigrationsResponse{} + if rhs := m.SchemaMigrations; rhs != nil { + tmpContainer := make([]*SchemaMigration, len(rhs)) + for k, v := range rhs { + tmpContainer[k] = v.CloneVT() + } + r.SchemaMigrations = tmpContainer + } + if len(m.unknownFields) > 0 { + r.unknownFields = make([]byte, len(m.unknownFields)) + copy(r.unknownFields, m.unknownFields) + } + return r +} + +func (m *GetSchemaMigrationsResponse) CloneMessageVT() proto.Message { + return m.CloneVT() +} + func (m *GetShardReplicationPositionsRequest) CloneVT() *GetShardReplicationPositionsRequest { if m == nil { return (*GetShardReplicationPositionsRequest)(nil) @@ -1483,6 +1643,25 @@ func (m *GetWorkflowsResponse) CloneMessageVT() proto.Message { return m.CloneVT() } +func (m *LaunchSchemaMigrationRequest) CloneVT() *LaunchSchemaMigrationRequest { + if m == nil { + return (*LaunchSchemaMigrationRequest)(nil) + } + r := &LaunchSchemaMigrationRequest{ + ClusterId: m.ClusterId, + Request: m.Request.CloneVT(), + } + if len(m.unknownFields) > 0 { + r.unknownFields = make([]byte, len(m.unknownFields)) + copy(r.unknownFields, m.unknownFields) + } + return r +} + +func (m *LaunchSchemaMigrationRequest) CloneMessageVT() proto.Message { + return m.CloneVT() +} + func (m *PingTabletRequest) CloneVT() *PingTabletRequest { if m == nil { return (*PingTabletRequest)(nil) @@ -1935,6 +2114,25 @@ func (m *RemoveKeyspaceCellResponse) CloneMessageVT() proto.Message { return m.CloneVT() } +func (m *RetrySchemaMigrationRequest) CloneVT() *RetrySchemaMigrationRequest { + if m == nil { + return (*RetrySchemaMigrationRequest)(nil) + } + r := &RetrySchemaMigrationRequest{ + ClusterId: m.ClusterId, + Request: m.Request.CloneVT(), + } + if len(m.unknownFields) > 0 { + r.unknownFields = make([]byte, len(m.unknownFields)) + copy(r.unknownFields, m.unknownFields) + } + return r +} + +func (m *RetrySchemaMigrationRequest) CloneMessageVT() proto.Message { + return m.CloneVT() +} + func (m *RunHealthCheckRequest) CloneVT() *RunHealthCheckRequest { if m == nil { return (*RunHealthCheckRequest)(nil) @@ -2976,6 +3174,59 @@ func (m *Schema) MarshalToSizedBufferVT(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *SchemaMigration) 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 *SchemaMigration) MarshalToVT(dAtA []byte) (int, error) { + size := m.SizeVT() + return m.MarshalToSizedBufferVT(dAtA[:size]) +} + +func (m *SchemaMigration) 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 m.SchemaMigration != nil { + size, err := m.SchemaMigration.MarshalToSizedBufferVT(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarint(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0x12 + } + if m.Cluster != nil { + size, err := m.Cluster.MarshalToSizedBufferVT(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarint(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func (m *Shard) MarshalVT() (dAtA []byte, err error) { if m == nil { return nil, nil @@ -3411,7 +3662,7 @@ func (m *Workflow) MarshalToSizedBufferVT(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *CreateKeyspaceRequest) MarshalVT() (dAtA []byte, err error) { +func (m *ApplySchemaRequest) MarshalVT() (dAtA []byte, err error) { if m == nil { return nil, nil } @@ -3424,12 +3675,12 @@ func (m *CreateKeyspaceRequest) MarshalVT() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *CreateKeyspaceRequest) MarshalToVT(dAtA []byte) (int, error) { +func (m *ApplySchemaRequest) MarshalToVT(dAtA []byte) (int, error) { size := m.SizeVT() return m.MarshalToSizedBufferVT(dAtA[:size]) } -func (m *CreateKeyspaceRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { +func (m *ApplySchemaRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { if m == nil { return 0, nil } @@ -3441,8 +3692,8 @@ func (m *CreateKeyspaceRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) i -= len(m.unknownFields) copy(dAtA[i:], m.unknownFields) } - if m.Options != nil { - size, err := m.Options.MarshalToSizedBufferVT(dAtA[:i]) + if m.Request != nil { + size, err := m.Request.MarshalToSizedBufferVT(dAtA[:i]) if err != nil { return 0, err } @@ -3461,7 +3712,7 @@ func (m *CreateKeyspaceRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) return len(dAtA) - i, nil } -func (m *CreateKeyspaceResponse) MarshalVT() (dAtA []byte, err error) { +func (m *CancelSchemaMigrationRequest) MarshalVT() (dAtA []byte, err error) { if m == nil { return nil, nil } @@ -3474,12 +3725,12 @@ func (m *CreateKeyspaceResponse) MarshalVT() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *CreateKeyspaceResponse) MarshalToVT(dAtA []byte) (int, error) { +func (m *CancelSchemaMigrationRequest) MarshalToVT(dAtA []byte) (int, error) { size := m.SizeVT() return m.MarshalToSizedBufferVT(dAtA[:size]) } -func (m *CreateKeyspaceResponse) MarshalToSizedBufferVT(dAtA []byte) (int, error) { +func (m *CancelSchemaMigrationRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { if m == nil { return 0, nil } @@ -3491,20 +3742,27 @@ func (m *CreateKeyspaceResponse) MarshalToSizedBufferVT(dAtA []byte) (int, error i -= len(m.unknownFields) copy(dAtA[i:], m.unknownFields) } - if m.Keyspace != nil { - size, err := m.Keyspace.MarshalToSizedBufferVT(dAtA[:i]) + if m.Request != nil { + size, err := m.Request.MarshalToSizedBufferVT(dAtA[:i]) if err != nil { return 0, err } i -= size i = encodeVarint(dAtA, i, uint64(size)) i-- + dAtA[i] = 0x12 + } + if len(m.ClusterId) > 0 { + i -= len(m.ClusterId) + copy(dAtA[i:], m.ClusterId) + i = encodeVarint(dAtA, i, uint64(len(m.ClusterId))) + i-- dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *CreateShardRequest) MarshalVT() (dAtA []byte, err error) { +func (m *CleanupSchemaMigrationRequest) MarshalVT() (dAtA []byte, err error) { if m == nil { return nil, nil } @@ -3517,12 +3775,12 @@ func (m *CreateShardRequest) MarshalVT() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *CreateShardRequest) MarshalToVT(dAtA []byte) (int, error) { +func (m *CleanupSchemaMigrationRequest) MarshalToVT(dAtA []byte) (int, error) { size := m.SizeVT() return m.MarshalToSizedBufferVT(dAtA[:size]) } -func (m *CreateShardRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { +func (m *CleanupSchemaMigrationRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { if m == nil { return 0, nil } @@ -3534,8 +3792,8 @@ func (m *CreateShardRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { i -= len(m.unknownFields) copy(dAtA[i:], m.unknownFields) } - if m.Options != nil { - size, err := m.Options.MarshalToSizedBufferVT(dAtA[:i]) + if m.Request != nil { + size, err := m.Request.MarshalToSizedBufferVT(dAtA[:i]) if err != nil { return 0, err } @@ -3554,7 +3812,7 @@ func (m *CreateShardRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *DeleteKeyspaceRequest) MarshalVT() (dAtA []byte, err error) { +func (m *CompleteSchemaMigrationRequest) MarshalVT() (dAtA []byte, err error) { if m == nil { return nil, nil } @@ -3567,12 +3825,12 @@ func (m *DeleteKeyspaceRequest) MarshalVT() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *DeleteKeyspaceRequest) MarshalToVT(dAtA []byte) (int, error) { +func (m *CompleteSchemaMigrationRequest) MarshalToVT(dAtA []byte) (int, error) { size := m.SizeVT() return m.MarshalToSizedBufferVT(dAtA[:size]) } -func (m *DeleteKeyspaceRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { +func (m *CompleteSchemaMigrationRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { if m == nil { return 0, nil } @@ -3584,8 +3842,8 @@ func (m *DeleteKeyspaceRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) i -= len(m.unknownFields) copy(dAtA[i:], m.unknownFields) } - if m.Options != nil { - size, err := m.Options.MarshalToSizedBufferVT(dAtA[:i]) + if m.Request != nil { + size, err := m.Request.MarshalToSizedBufferVT(dAtA[:i]) if err != nil { return 0, err } @@ -3604,7 +3862,7 @@ func (m *DeleteKeyspaceRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) return len(dAtA) - i, nil } -func (m *DeleteShardsRequest) MarshalVT() (dAtA []byte, err error) { +func (m *CreateKeyspaceRequest) MarshalVT() (dAtA []byte, err error) { if m == nil { return nil, nil } @@ -3617,12 +3875,12 @@ func (m *DeleteShardsRequest) MarshalVT() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *DeleteShardsRequest) MarshalToVT(dAtA []byte) (int, error) { +func (m *CreateKeyspaceRequest) MarshalToVT(dAtA []byte) (int, error) { size := m.SizeVT() return m.MarshalToSizedBufferVT(dAtA[:size]) } -func (m *DeleteShardsRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { +func (m *CreateKeyspaceRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { if m == nil { return 0, nil } @@ -3654,7 +3912,7 @@ func (m *DeleteShardsRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *DeleteTabletRequest) MarshalVT() (dAtA []byte, err error) { +func (m *CreateKeyspaceResponse) MarshalVT() (dAtA []byte, err error) { if m == nil { return nil, nil } @@ -3667,12 +3925,12 @@ func (m *DeleteTabletRequest) MarshalVT() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *DeleteTabletRequest) MarshalToVT(dAtA []byte) (int, error) { +func (m *CreateKeyspaceResponse) MarshalToVT(dAtA []byte) (int, error) { size := m.SizeVT() return m.MarshalToSizedBufferVT(dAtA[:size]) } -func (m *DeleteTabletRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { +func (m *CreateKeyspaceResponse) MarshalToSizedBufferVT(dAtA []byte) (int, error) { if m == nil { return 0, nil } @@ -3684,27 +3942,8 @@ func (m *DeleteTabletRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { i -= len(m.unknownFields) copy(dAtA[i:], m.unknownFields) } - if m.AllowPrimary { - i-- - if m.AllowPrimary { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x18 - } - if len(m.ClusterIds) > 0 { - for iNdEx := len(m.ClusterIds) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.ClusterIds[iNdEx]) - copy(dAtA[i:], m.ClusterIds[iNdEx]) - i = encodeVarint(dAtA, i, uint64(len(m.ClusterIds[iNdEx]))) - i-- - dAtA[i] = 0x12 - } - } - if m.Alias != nil { - size, err := m.Alias.MarshalToSizedBufferVT(dAtA[:i]) + if m.Keyspace != nil { + size, err := m.Keyspace.MarshalToSizedBufferVT(dAtA[:i]) if err != nil { return 0, err } @@ -3716,7 +3955,219 @@ func (m *DeleteTabletRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *DeleteTabletResponse) MarshalVT() (dAtA []byte, err error) { +func (m *CreateShardRequest) 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 *CreateShardRequest) MarshalToVT(dAtA []byte) (int, error) { + size := m.SizeVT() + return m.MarshalToSizedBufferVT(dAtA[:size]) +} + +func (m *CreateShardRequest) 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 m.Options != nil { + size, err := m.Options.MarshalToSizedBufferVT(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarint(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0x12 + } + if len(m.ClusterId) > 0 { + i -= len(m.ClusterId) + copy(dAtA[i:], m.ClusterId) + i = encodeVarint(dAtA, i, uint64(len(m.ClusterId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *DeleteKeyspaceRequest) 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 *DeleteKeyspaceRequest) MarshalToVT(dAtA []byte) (int, error) { + size := m.SizeVT() + return m.MarshalToSizedBufferVT(dAtA[:size]) +} + +func (m *DeleteKeyspaceRequest) 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 m.Options != nil { + size, err := m.Options.MarshalToSizedBufferVT(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarint(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0x12 + } + if len(m.ClusterId) > 0 { + i -= len(m.ClusterId) + copy(dAtA[i:], m.ClusterId) + i = encodeVarint(dAtA, i, uint64(len(m.ClusterId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *DeleteShardsRequest) 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 *DeleteShardsRequest) MarshalToVT(dAtA []byte) (int, error) { + size := m.SizeVT() + return m.MarshalToSizedBufferVT(dAtA[:size]) +} + +func (m *DeleteShardsRequest) 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 m.Options != nil { + size, err := m.Options.MarshalToSizedBufferVT(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarint(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0x12 + } + if len(m.ClusterId) > 0 { + i -= len(m.ClusterId) + copy(dAtA[i:], m.ClusterId) + i = encodeVarint(dAtA, i, uint64(len(m.ClusterId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *DeleteTabletRequest) 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 *DeleteTabletRequest) MarshalToVT(dAtA []byte) (int, error) { + size := m.SizeVT() + return m.MarshalToSizedBufferVT(dAtA[:size]) +} + +func (m *DeleteTabletRequest) 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 m.AllowPrimary { + i-- + if m.AllowPrimary { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x18 + } + if len(m.ClusterIds) > 0 { + for iNdEx := len(m.ClusterIds) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ClusterIds[iNdEx]) + copy(dAtA[i:], m.ClusterIds[iNdEx]) + i = encodeVarint(dAtA, i, uint64(len(m.ClusterIds[iNdEx]))) + i-- + dAtA[i] = 0x12 + } + } + if m.Alias != nil { + size, err := m.Alias.MarshalToSizedBufferVT(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarint(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *DeleteTabletResponse) MarshalVT() (dAtA []byte, err error) { if m == nil { return nil, nil } @@ -4772,7 +5223,7 @@ func (m *GetSchemasResponse) MarshalToSizedBufferVT(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *GetShardReplicationPositionsRequest) MarshalVT() (dAtA []byte, err error) { +func (m *GetSchemaMigrationsRequest_ClusterRequest) MarshalVT() (dAtA []byte, err error) { if m == nil { return nil, nil } @@ -4785,12 +5236,12 @@ func (m *GetShardReplicationPositionsRequest) MarshalVT() (dAtA []byte, err erro return dAtA[:n], nil } -func (m *GetShardReplicationPositionsRequest) MarshalToVT(dAtA []byte) (int, error) { +func (m *GetSchemaMigrationsRequest_ClusterRequest) MarshalToVT(dAtA []byte) (int, error) { size := m.SizeVT() return m.MarshalToSizedBufferVT(dAtA[:size]) } -func (m *GetShardReplicationPositionsRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { +func (m *GetSchemaMigrationsRequest_ClusterRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { if m == nil { return 0, nil } @@ -4802,37 +5253,27 @@ func (m *GetShardReplicationPositionsRequest) MarshalToSizedBufferVT(dAtA []byte i -= len(m.unknownFields) copy(dAtA[i:], m.unknownFields) } - if len(m.KeyspaceShards) > 0 { - for iNdEx := len(m.KeyspaceShards) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.KeyspaceShards[iNdEx]) - copy(dAtA[i:], m.KeyspaceShards[iNdEx]) - i = encodeVarint(dAtA, i, uint64(len(m.KeyspaceShards[iNdEx]))) - i-- - dAtA[i] = 0x1a - } - } - if len(m.Keyspaces) > 0 { - for iNdEx := len(m.Keyspaces) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.Keyspaces[iNdEx]) - copy(dAtA[i:], m.Keyspaces[iNdEx]) - i = encodeVarint(dAtA, i, uint64(len(m.Keyspaces[iNdEx]))) - i-- - dAtA[i] = 0x12 + if m.Request != nil { + size, err := m.Request.MarshalToSizedBufferVT(dAtA[:i]) + if err != nil { + return 0, err } + i -= size + i = encodeVarint(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0x12 } - if len(m.ClusterIds) > 0 { - for iNdEx := len(m.ClusterIds) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.ClusterIds[iNdEx]) - copy(dAtA[i:], m.ClusterIds[iNdEx]) - i = encodeVarint(dAtA, i, uint64(len(m.ClusterIds[iNdEx]))) - i-- - dAtA[i] = 0xa - } + if len(m.ClusterId) > 0 { + i -= len(m.ClusterId) + copy(dAtA[i:], m.ClusterId) + i = encodeVarint(dAtA, i, uint64(len(m.ClusterId))) + i-- + dAtA[i] = 0xa } return len(dAtA) - i, nil } -func (m *GetShardReplicationPositionsResponse) MarshalVT() (dAtA []byte, err error) { +func (m *GetSchemaMigrationsRequest) MarshalVT() (dAtA []byte, err error) { if m == nil { return nil, nil } @@ -4845,12 +5286,12 @@ func (m *GetShardReplicationPositionsResponse) MarshalVT() (dAtA []byte, err err return dAtA[:n], nil } -func (m *GetShardReplicationPositionsResponse) MarshalToVT(dAtA []byte) (int, error) { +func (m *GetSchemaMigrationsRequest) MarshalToVT(dAtA []byte) (int, error) { size := m.SizeVT() return m.MarshalToSizedBufferVT(dAtA[:size]) } -func (m *GetShardReplicationPositionsResponse) MarshalToSizedBufferVT(dAtA []byte) (int, error) { +func (m *GetSchemaMigrationsRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) { if m == nil { return 0, nil } @@ -4862,8 +5303,158 @@ func (m *GetShardReplicationPositionsResponse) MarshalToSizedBufferVT(dAtA []byt i -= len(m.unknownFields) copy(dAtA[i:], m.unknownFields) } - if len(m.ReplicationPositions) > 0 { - for iNdEx := len(m.ReplicationPositions) - 1; iNdEx >= 0; iNdEx-- { + if len(m.ClusterRequests) > 0 { + for iNdEx := len(m.ClusterRequests) - 1; iNdEx >= 0; iNdEx-- { + size, err := m.ClusterRequests[iNdEx].MarshalToSizedBufferVT(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarint(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *GetSchemaMigrationsResponse) 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 *GetSchemaMigrationsResponse) MarshalToVT(dAtA []byte) (int, error) { + size := m.SizeVT() + return m.MarshalToSizedBufferVT(dAtA[:size]) +} + +func (m *GetSchemaMigrationsResponse) 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.SchemaMigrations) > 0 { + for iNdEx := len(m.SchemaMigrations) - 1; iNdEx >= 0; iNdEx-- { + size, err := m.SchemaMigrations[iNdEx].MarshalToSizedBufferVT(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarint(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *GetShardReplicationPositionsRequest) 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 *GetShardReplicationPositionsRequest) MarshalToVT(dAtA []byte) (int, error) { + size := m.SizeVT() + return m.MarshalToSizedBufferVT(dAtA[:size]) +} + +func (m *GetShardReplicationPositionsRequest) 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.KeyspaceShards) > 0 { + for iNdEx := len(m.KeyspaceShards) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.KeyspaceShards[iNdEx]) + copy(dAtA[i:], m.KeyspaceShards[iNdEx]) + i = encodeVarint(dAtA, i, uint64(len(m.KeyspaceShards[iNdEx]))) + i-- + dAtA[i] = 0x1a + } + } + if len(m.Keyspaces) > 0 { + for iNdEx := len(m.Keyspaces) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Keyspaces[iNdEx]) + copy(dAtA[i:], m.Keyspaces[iNdEx]) + i = encodeVarint(dAtA, i, uint64(len(m.Keyspaces[iNdEx]))) + i-- + dAtA[i] = 0x12 + } + } + if len(m.ClusterIds) > 0 { + for iNdEx := len(m.ClusterIds) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.ClusterIds[iNdEx]) + copy(dAtA[i:], m.ClusterIds[iNdEx]) + i = encodeVarint(dAtA, i, uint64(len(m.ClusterIds[iNdEx]))) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + +func (m *GetShardReplicationPositionsResponse) 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 *GetShardReplicationPositionsResponse) MarshalToVT(dAtA []byte) (int, error) { + size := m.SizeVT() + return m.MarshalToSizedBufferVT(dAtA[:size]) +} + +func (m *GetShardReplicationPositionsResponse) 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.ReplicationPositions) > 0 { + for iNdEx := len(m.ReplicationPositions) - 1; iNdEx >= 0; iNdEx-- { size, err := m.ReplicationPositions[iNdEx].MarshalToSizedBufferVT(dAtA[:i]) if err != nil { return 0, err @@ -5831,6 +6422,56 @@ func (m *GetWorkflowsResponse) MarshalToSizedBufferVT(dAtA []byte) (int, error) return len(dAtA) - i, nil } +func (m *LaunchSchemaMigrationRequest) 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 *LaunchSchemaMigrationRequest) MarshalToVT(dAtA []byte) (int, error) { + size := m.SizeVT() + return m.MarshalToSizedBufferVT(dAtA[:size]) +} + +func (m *LaunchSchemaMigrationRequest) 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 m.Request != nil { + size, err := m.Request.MarshalToSizedBufferVT(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarint(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0x12 + } + if len(m.ClusterId) > 0 { + i -= len(m.ClusterId) + copy(dAtA[i:], m.ClusterId) + i = encodeVarint(dAtA, i, uint64(len(m.ClusterId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func (m *PingTabletRequest) MarshalVT() (dAtA []byte, err error) { if m == nil { return nil, nil @@ -6947,6 +7588,56 @@ func (m *RemoveKeyspaceCellResponse) MarshalToSizedBufferVT(dAtA []byte) (int, e return len(dAtA) - i, nil } +func (m *RetrySchemaMigrationRequest) 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 *RetrySchemaMigrationRequest) MarshalToVT(dAtA []byte) (int, error) { + size := m.SizeVT() + return m.MarshalToSizedBufferVT(dAtA[:size]) +} + +func (m *RetrySchemaMigrationRequest) 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 m.Request != nil { + size, err := m.Request.MarshalToSizedBufferVT(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarint(dAtA, i, uint64(size)) + i-- + dAtA[i] = 0x12 + } + if len(m.ClusterId) > 0 { + i -= len(m.ClusterId) + copy(dAtA[i:], m.ClusterId) + i = encodeVarint(dAtA, i, uint64(len(m.ClusterId))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func (m *RunHealthCheckRequest) MarshalVT() (dAtA []byte, err error) { if m == nil { return nil, nil @@ -8274,6 +8965,24 @@ func (m *Schema) SizeVT() (n int) { return n } +func (m *SchemaMigration) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Cluster != nil { + l = m.Cluster.SizeVT() + n += 1 + l + sov(uint64(l)) + } + if m.SchemaMigration != nil { + l = m.SchemaMigration.SizeVT() + n += 1 + l + sov(uint64(l)) + } + n += len(m.unknownFields) + return n +} + func (m *Shard) SizeVT() (n int) { if m == nil { return 0 @@ -8441,7 +9150,7 @@ func (m *Workflow) SizeVT() (n int) { return n } -func (m *CreateKeyspaceRequest) SizeVT() (n int) { +func (m *ApplySchemaRequest) SizeVT() (n int) { if m == nil { return 0 } @@ -8451,22 +9160,94 @@ func (m *CreateKeyspaceRequest) SizeVT() (n int) { if l > 0 { n += 1 + l + sov(uint64(l)) } - if m.Options != nil { - l = m.Options.SizeVT() + if m.Request != nil { + l = m.Request.SizeVT() n += 1 + l + sov(uint64(l)) } n += len(m.unknownFields) return n } -func (m *CreateKeyspaceResponse) SizeVT() (n int) { +func (m *CancelSchemaMigrationRequest) SizeVT() (n int) { if m == nil { return 0 } var l int _ = l - if m.Keyspace != nil { - l = m.Keyspace.SizeVT() + l = len(m.ClusterId) + if l > 0 { + n += 1 + l + sov(uint64(l)) + } + if m.Request != nil { + l = m.Request.SizeVT() + n += 1 + l + sov(uint64(l)) + } + n += len(m.unknownFields) + return n +} + +func (m *CleanupSchemaMigrationRequest) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ClusterId) + if l > 0 { + n += 1 + l + sov(uint64(l)) + } + if m.Request != nil { + l = m.Request.SizeVT() + n += 1 + l + sov(uint64(l)) + } + n += len(m.unknownFields) + return n +} + +func (m *CompleteSchemaMigrationRequest) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ClusterId) + if l > 0 { + n += 1 + l + sov(uint64(l)) + } + if m.Request != nil { + l = m.Request.SizeVT() + n += 1 + l + sov(uint64(l)) + } + n += len(m.unknownFields) + return n +} + +func (m *CreateKeyspaceRequest) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ClusterId) + if l > 0 { + n += 1 + l + sov(uint64(l)) + } + if m.Options != nil { + l = m.Options.SizeVT() + n += 1 + l + sov(uint64(l)) + } + n += len(m.unknownFields) + return n +} + +func (m *CreateKeyspaceResponse) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Keyspace != nil { + l = m.Keyspace.SizeVT() n += 1 + l + sov(uint64(l)) } n += len(m.unknownFields) @@ -8951,6 +9732,56 @@ func (m *GetSchemasResponse) SizeVT() (n int) { return n } +func (m *GetSchemaMigrationsRequest_ClusterRequest) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ClusterId) + if l > 0 { + n += 1 + l + sov(uint64(l)) + } + if m.Request != nil { + l = m.Request.SizeVT() + n += 1 + l + sov(uint64(l)) + } + n += len(m.unknownFields) + return n +} + +func (m *GetSchemaMigrationsRequest) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.ClusterRequests) > 0 { + for _, e := range m.ClusterRequests { + l = e.SizeVT() + n += 1 + l + sov(uint64(l)) + } + } + n += len(m.unknownFields) + return n +} + +func (m *GetSchemaMigrationsResponse) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.SchemaMigrations) > 0 { + for _, e := range m.SchemaMigrations { + l = e.SizeVT() + n += 1 + l + sov(uint64(l)) + } + } + n += len(m.unknownFields) + return n +} + func (m *GetShardReplicationPositionsRequest) SizeVT() (n int) { if m == nil { return 0 @@ -9367,6 +10198,24 @@ func (m *GetWorkflowsResponse) SizeVT() (n int) { return n } +func (m *LaunchSchemaMigrationRequest) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ClusterId) + if l > 0 { + n += 1 + l + sov(uint64(l)) + } + if m.Request != nil { + l = m.Request.SizeVT() + n += 1 + l + sov(uint64(l)) + } + n += len(m.unknownFields) + return n +} + func (m *PingTabletRequest) SizeVT() (n int) { if m == nil { return 0 @@ -9800,6 +10649,24 @@ func (m *RemoveKeyspaceCellResponse) SizeVT() (n int) { return n } +func (m *RetrySchemaMigrationRequest) SizeVT() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ClusterId) + if l > 0 { + n += 1 + l + sov(uint64(l)) + } + if m.Request != nil { + l = m.Request.SizeVT() + n += 1 + l + sov(uint64(l)) + } + n += len(m.unknownFields) + return n +} + func (m *RunHealthCheckRequest) SizeVT() (n int) { if m == nil { return 0 @@ -11961,6 +12828,129 @@ func (m *Schema) UnmarshalVT(dAtA []byte) error { } return nil } +func (m *SchemaMigration) 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 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: SchemaMigration: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SchemaMigration: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Cluster", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Cluster == nil { + m.Cluster = &Cluster{} + } + if err := m.Cluster.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SchemaMigration", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SchemaMigration == nil { + m.SchemaMigration = &vtctldata.SchemaMigration{} + } + if err := m.SchemaMigration.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skip(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return 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 *Shard) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -13121,7 +14111,7 @@ func (m *Workflow) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *CreateKeyspaceRequest) UnmarshalVT(dAtA []byte) error { +func (m *ApplySchemaRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -13144,10 +14134,10 @@ func (m *CreateKeyspaceRequest) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: CreateKeyspaceRequest: wiretype end group for non-group") + return fmt.Errorf("proto: ApplySchemaRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: CreateKeyspaceRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: ApplySchemaRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -13184,7 +14174,7 @@ func (m *CreateKeyspaceRequest) UnmarshalVT(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Options", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Request", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -13211,10 +14201,10 @@ func (m *CreateKeyspaceRequest) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Options == nil { - m.Options = &vtctldata.CreateKeyspaceRequest{} + if m.Request == nil { + m.Request = &vtctldata.ApplySchemaRequest{} } - if err := m.Options.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Request.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -13240,7 +14230,7 @@ func (m *CreateKeyspaceRequest) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *CreateKeyspaceResponse) UnmarshalVT(dAtA []byte) error { +func (m *CancelSchemaMigrationRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -13263,15 +14253,47 @@ func (m *CreateKeyspaceResponse) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: CreateKeyspaceResponse: wiretype end group for non-group") + return fmt.Errorf("proto: CancelSchemaMigrationRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: CreateKeyspaceResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: CancelSchemaMigrationRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Keyspace", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ClusterId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 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 ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ClusterId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Request", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -13298,10 +14320,10 @@ func (m *CreateKeyspaceResponse) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Keyspace == nil { - m.Keyspace = &Keyspace{} + if m.Request == nil { + m.Request = &vtctldata.CancelSchemaMigrationRequest{} } - if err := m.Keyspace.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Request.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -13327,7 +14349,7 @@ func (m *CreateKeyspaceResponse) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *CreateShardRequest) UnmarshalVT(dAtA []byte) error { +func (m *CleanupSchemaMigrationRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -13350,10 +14372,10 @@ func (m *CreateShardRequest) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: CreateShardRequest: wiretype end group for non-group") + return fmt.Errorf("proto: CleanupSchemaMigrationRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: CreateShardRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: CleanupSchemaMigrationRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -13390,7 +14412,7 @@ func (m *CreateShardRequest) UnmarshalVT(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Options", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Request", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -13417,10 +14439,10 @@ func (m *CreateShardRequest) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Options == nil { - m.Options = &vtctldata.CreateShardRequest{} + if m.Request == nil { + m.Request = &vtctldata.CleanupSchemaMigrationRequest{} } - if err := m.Options.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Request.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -13446,7 +14468,7 @@ func (m *CreateShardRequest) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *DeleteKeyspaceRequest) UnmarshalVT(dAtA []byte) error { +func (m *CompleteSchemaMigrationRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -13469,10 +14491,10 @@ func (m *DeleteKeyspaceRequest) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: DeleteKeyspaceRequest: wiretype end group for non-group") + return fmt.Errorf("proto: CompleteSchemaMigrationRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: DeleteKeyspaceRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: CompleteSchemaMigrationRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -13509,7 +14531,7 @@ func (m *DeleteKeyspaceRequest) UnmarshalVT(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Options", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Request", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -13536,10 +14558,10 @@ func (m *DeleteKeyspaceRequest) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Options == nil { - m.Options = &vtctldata.DeleteKeyspaceRequest{} + if m.Request == nil { + m.Request = &vtctldata.CompleteSchemaMigrationRequest{} } - if err := m.Options.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Request.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -13565,7 +14587,7 @@ func (m *DeleteKeyspaceRequest) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *DeleteShardsRequest) UnmarshalVT(dAtA []byte) error { +func (m *CreateKeyspaceRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -13588,10 +14610,10 @@ func (m *DeleteShardsRequest) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: DeleteShardsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: CreateKeyspaceRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: DeleteShardsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: CreateKeyspaceRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -13656,7 +14678,7 @@ func (m *DeleteShardsRequest) UnmarshalVT(dAtA []byte) error { return io.ErrUnexpectedEOF } if m.Options == nil { - m.Options = &vtctldata.DeleteShardsRequest{} + m.Options = &vtctldata.CreateKeyspaceRequest{} } if err := m.Options.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err @@ -13684,7 +14706,7 @@ func (m *DeleteShardsRequest) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *DeleteTabletRequest) UnmarshalVT(dAtA []byte) error { +func (m *CreateKeyspaceResponse) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -13707,15 +14729,15 @@ func (m *DeleteTabletRequest) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: DeleteTabletRequest: wiretype end group for non-group") + return fmt.Errorf("proto: CreateKeyspaceResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: DeleteTabletRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: CreateKeyspaceResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Alias", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Keyspace", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -13742,16 +14764,67 @@ func (m *DeleteTabletRequest) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Alias == nil { - m.Alias = &topodata.TabletAlias{} + if m.Keyspace == nil { + m.Keyspace = &Keyspace{} } - if err := m.Alias.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Keyspace.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 2: + default: + iNdEx = preIndex + skippy, err := skip(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return 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 *CreateShardRequest) 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 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: CreateShardRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CreateShardRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ClusterIds", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ClusterId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -13779,13 +14852,13 @@ func (m *DeleteTabletRequest) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ClusterIds = append(m.ClusterIds, string(dAtA[iNdEx:postIndex])) + m.ClusterId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field AllowPrimary", wireType) + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Options", wireType) } - var v int + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflow @@ -13795,12 +14868,28 @@ func (m *DeleteTabletRequest) UnmarshalVT(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= int(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - m.AllowPrimary = bool(v != 0) + if msglen < 0 { + return ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Options == nil { + m.Options = &vtctldata.CreateShardRequest{} + } + if err := m.Options.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skip(dAtA[iNdEx:]) @@ -13823,7 +14912,7 @@ func (m *DeleteTabletRequest) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *DeleteTabletResponse) UnmarshalVT(dAtA []byte) error { +func (m *DeleteKeyspaceRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -13846,15 +14935,15 @@ func (m *DeleteTabletResponse) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: DeleteTabletResponse: wiretype end group for non-group") + return fmt.Errorf("proto: DeleteKeyspaceRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: DeleteTabletResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: DeleteKeyspaceRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ClusterId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -13882,11 +14971,11 @@ func (m *DeleteTabletResponse) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Status = string(dAtA[iNdEx:postIndex]) + m.ClusterId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Cluster", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Options", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -13913,10 +15002,10 @@ func (m *DeleteTabletResponse) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Cluster == nil { - m.Cluster = &Cluster{} + if m.Options == nil { + m.Options = &vtctldata.DeleteKeyspaceRequest{} } - if err := m.Cluster.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Options.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -13942,7 +15031,7 @@ func (m *DeleteTabletResponse) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *EmergencyFailoverShardRequest) UnmarshalVT(dAtA []byte) error { +func (m *DeleteShardsRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -13965,10 +15054,10 @@ func (m *EmergencyFailoverShardRequest) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: EmergencyFailoverShardRequest: wiretype end group for non-group") + return fmt.Errorf("proto: DeleteShardsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: EmergencyFailoverShardRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: DeleteShardsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -14033,7 +15122,7 @@ func (m *EmergencyFailoverShardRequest) UnmarshalVT(dAtA []byte) error { return io.ErrUnexpectedEOF } if m.Options == nil { - m.Options = &vtctldata.EmergencyReparentShardRequest{} + m.Options = &vtctldata.DeleteShardsRequest{} } if err := m.Options.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err @@ -14061,7 +15150,7 @@ func (m *EmergencyFailoverShardRequest) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *EmergencyFailoverShardResponse) UnmarshalVT(dAtA []byte) error { +func (m *DeleteTabletRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -14084,15 +15173,15 @@ func (m *EmergencyFailoverShardResponse) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: EmergencyFailoverShardResponse: wiretype end group for non-group") + return fmt.Errorf("proto: DeleteTabletRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: EmergencyFailoverShardResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: DeleteTabletRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Cluster", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Alias", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -14119,16 +15208,16 @@ func (m *EmergencyFailoverShardResponse) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Cluster == nil { - m.Cluster = &Cluster{} + if m.Alias == nil { + m.Alias = &topodata.TabletAlias{} } - if err := m.Cluster.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Alias.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Keyspace", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ClusterIds", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -14156,13 +15245,13 @@ func (m *EmergencyFailoverShardResponse) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Keyspace = string(dAtA[iNdEx:postIndex]) + m.ClusterIds = append(m.ClusterIds, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Shard", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AllowPrimary", wireType) } - var stringLen uint64 + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflow @@ -14172,63 +15261,98 @@ func (m *EmergencyFailoverShardResponse) UnmarshalVT(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLength + m.AllowPrimary = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skip(dAtA[iNdEx:]) + if err != nil { + return err } - postIndex := iNdEx + intStringLen - if postIndex < 0 { + if (skippy < 0) || (iNdEx+skippy) < 0 { return ErrInvalidLength } - if postIndex > l { + if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF } - m.Shard = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PromotedPrimary", wireType) + m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *DeleteTabletResponse) 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 ErrIntOverflow } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 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: DeleteTabletResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DeleteTabletResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflow } if iNdEx >= l { return io.ErrUnexpectedEOF } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLength } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLength } if postIndex > l { return io.ErrUnexpectedEOF } - if m.PromotedPrimary == nil { - m.PromotedPrimary = &topodata.TabletAlias{} - } - if err := m.PromotedPrimary.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Status = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 5: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Events", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Cluster", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -14255,8 +15379,10 @@ func (m *EmergencyFailoverShardResponse) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Events = append(m.Events, &logutil.Event{}) - if err := m.Events[len(m.Events)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + if m.Cluster == nil { + m.Cluster = &Cluster{} + } + if err := m.Cluster.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -14282,7 +15408,7 @@ func (m *EmergencyFailoverShardResponse) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *FindSchemaRequest) UnmarshalVT(dAtA []byte) error { +func (m *EmergencyFailoverShardRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -14305,15 +15431,15 @@ func (m *FindSchemaRequest) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: FindSchemaRequest: wiretype end group for non-group") + return fmt.Errorf("proto: EmergencyFailoverShardRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: FindSchemaRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: EmergencyFailoverShardRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Table", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ClusterId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -14341,43 +15467,11 @@ func (m *FindSchemaRequest) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Table = string(dAtA[iNdEx:postIndex]) + m.ClusterId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ClusterIds", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 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 ErrInvalidLength - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLength - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ClusterIds = append(m.ClusterIds, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TableSizeOptions", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Options", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -14404,10 +15498,10 @@ func (m *FindSchemaRequest) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.TableSizeOptions == nil { - m.TableSizeOptions = &GetSchemaTableSizeOptions{} + if m.Options == nil { + m.Options = &vtctldata.EmergencyReparentShardRequest{} } - if err := m.TableSizeOptions.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Options.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -14433,7 +15527,7 @@ func (m *FindSchemaRequest) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *GetBackupsRequest) UnmarshalVT(dAtA []byte) error { +func (m *EmergencyFailoverShardResponse) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -14456,17 +15550,17 @@ func (m *GetBackupsRequest) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GetBackupsRequest: wiretype end group for non-group") + return fmt.Errorf("proto: EmergencyFailoverShardResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GetBackupsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: EmergencyFailoverShardResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ClusterIds", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Cluster", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflow @@ -14476,27 +15570,31 @@ func (m *GetBackupsRequest) UnmarshalVT(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLength } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLength } if postIndex > l { return io.ErrUnexpectedEOF } - m.ClusterIds = append(m.ClusterIds, string(dAtA[iNdEx:postIndex])) + if m.Cluster == nil { + m.Cluster = &Cluster{} + } + if err := m.Cluster.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Keyspaces", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Keyspace", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -14524,11 +15622,11 @@ func (m *GetBackupsRequest) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Keyspaces = append(m.Keyspaces, string(dAtA[iNdEx:postIndex])) + m.Keyspace = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field KeyspaceShards", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Shard", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -14556,11 +15654,11 @@ func (m *GetBackupsRequest) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.KeyspaceShards = append(m.KeyspaceShards, string(dAtA[iNdEx:postIndex])) + m.Shard = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RequestOptions", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PromotedPrimary", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -14587,67 +15685,16 @@ func (m *GetBackupsRequest) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.RequestOptions == nil { - m.RequestOptions = &vtctldata.GetBackupsRequest{} + if m.PromotedPrimary == nil { + m.PromotedPrimary = &topodata.TabletAlias{} } - if err := m.RequestOptions.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + if err := m.PromotedPrimary.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skip(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return 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 *GetBackupsResponse) 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 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: GetBackupsResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: GetBackupsResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Backups", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Events", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -14674,8 +15721,8 @@ func (m *GetBackupsResponse) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Backups = append(m.Backups, &ClusterBackup{}) - if err := m.Backups[len(m.Backups)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + m.Events = append(m.Events, &logutil.Event{}) + if err := m.Events[len(m.Events)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -14701,7 +15748,7 @@ func (m *GetBackupsResponse) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *GetCellInfosRequest) UnmarshalVT(dAtA []byte) error { +func (m *FindSchemaRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -14724,15 +15771,15 @@ func (m *GetCellInfosRequest) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GetCellInfosRequest: wiretype end group for non-group") + return fmt.Errorf("proto: FindSchemaRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GetCellInfosRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: FindSchemaRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ClusterIds", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Table", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -14760,11 +15807,11 @@ func (m *GetCellInfosRequest) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ClusterIds = append(m.ClusterIds, string(dAtA[iNdEx:postIndex])) + m.Table = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Cells", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ClusterIds", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -14792,13 +15839,13 @@ func (m *GetCellInfosRequest) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Cells = append(m.Cells, string(dAtA[iNdEx:postIndex])) + m.ClusterIds = append(m.ClusterIds, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field NamesOnly", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TableSizeOptions", wireType) } - var v int + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflow @@ -14808,12 +15855,28 @@ func (m *GetCellInfosRequest) UnmarshalVT(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= int(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - m.NamesOnly = bool(v != 0) + if msglen < 0 { + return ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.TableSizeOptions == nil { + m.TableSizeOptions = &GetSchemaTableSizeOptions{} + } + if err := m.TableSizeOptions.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skip(dAtA[iNdEx:]) @@ -14836,7 +15899,7 @@ func (m *GetCellInfosRequest) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *GetCellInfosResponse) UnmarshalVT(dAtA []byte) error { +func (m *GetBackupsRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -14859,17 +15922,17 @@ func (m *GetCellInfosResponse) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GetCellInfosResponse: wiretype end group for non-group") + return fmt.Errorf("proto: GetBackupsRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GetCellInfosResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: GetBackupsRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CellInfos", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ClusterIds", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflow @@ -14879,23 +15942,594 @@ func (m *GetCellInfosResponse) UnmarshalVT(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLength } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ClusterIds = append(m.ClusterIds, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Keyspaces", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 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 ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Keyspaces = append(m.Keyspaces, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KeyspaceShards", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 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 ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.KeyspaceShards = append(m.KeyspaceShards, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RequestOptions", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.RequestOptions == nil { + m.RequestOptions = &vtctldata.GetBackupsRequest{} + } + if err := m.RequestOptions.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skip(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return 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 *GetBackupsResponse) 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 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: GetBackupsResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetBackupsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Backups", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Backups = append(m.Backups, &ClusterBackup{}) + if err := m.Backups[len(m.Backups)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skip(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return 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 *GetCellInfosRequest) 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 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: GetCellInfosRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetCellInfosRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ClusterIds", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 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 ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ClusterIds = append(m.ClusterIds, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Cells", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 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 ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Cells = append(m.Cells, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NamesOnly", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.NamesOnly = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skip(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return 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 *GetCellInfosResponse) 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 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: GetCellInfosResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetCellInfosResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CellInfos", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.CellInfos = append(m.CellInfos, &ClusterCellInfo{}) + if err := m.CellInfos[len(m.CellInfos)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skip(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return 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 *GetCellsAliasesRequest) 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 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: GetCellsAliasesRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetCellsAliasesRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ClusterIds", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 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 ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ClusterIds = append(m.ClusterIds, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skip(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return 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 *GetCellsAliasesResponse) 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 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: GetCellsAliasesResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetCellsAliasesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Aliases", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLength + } + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLength } if postIndex > l { return io.ErrUnexpectedEOF } - m.CellInfos = append(m.CellInfos, &ClusterCellInfo{}) - if err := m.CellInfos[len(m.CellInfos)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + m.Aliases = append(m.Aliases, &ClusterCellsAliases{}) + if err := m.Aliases[len(m.Aliases)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -14921,7 +16555,7 @@ func (m *GetCellInfosResponse) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *GetCellsAliasesRequest) UnmarshalVT(dAtA []byte) error { +func (m *GetClustersRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -14944,17 +16578,68 @@ func (m *GetCellsAliasesRequest) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GetCellsAliasesRequest: wiretype end group for non-group") + return fmt.Errorf("proto: GetClustersRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GetCellsAliasesRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: GetClustersRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skip(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return 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 *GetClustersResponse) 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 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: GetClustersResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetClustersResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ClusterIds", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Clusters", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflow @@ -14964,23 +16649,25 @@ func (m *GetCellsAliasesRequest) UnmarshalVT(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLength } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLength } if postIndex > l { return io.ErrUnexpectedEOF } - m.ClusterIds = append(m.ClusterIds, string(dAtA[iNdEx:postIndex])) + m.Clusters = append(m.Clusters, &Cluster{}) + if err := m.Clusters[len(m.Clusters)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -15004,7 +16691,7 @@ func (m *GetCellsAliasesRequest) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *GetCellsAliasesResponse) UnmarshalVT(dAtA []byte) error { +func (m *GetFullStatusRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -15027,15 +16714,47 @@ func (m *GetCellsAliasesResponse) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GetCellsAliasesResponse: wiretype end group for non-group") + return fmt.Errorf("proto: GetFullStatusRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GetCellsAliasesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: GetFullStatusRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Aliases", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ClusterId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 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 ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ClusterId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Alias", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -15062,8 +16781,10 @@ func (m *GetCellsAliasesResponse) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Aliases = append(m.Aliases, &ClusterCellsAliases{}) - if err := m.Aliases[len(m.Aliases)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + if m.Alias == nil { + m.Alias = &topodata.TabletAlias{} + } + if err := m.Alias.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -15089,7 +16810,7 @@ func (m *GetCellsAliasesResponse) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *GetClustersRequest) UnmarshalVT(dAtA []byte) error { +func (m *GetGatesRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -15112,12 +16833,44 @@ func (m *GetClustersRequest) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GetClustersRequest: wiretype end group for non-group") + return fmt.Errorf("proto: GetGatesRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GetClustersRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: GetGatesRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ClusterIds", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 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 ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ClusterIds = append(m.ClusterIds, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skip(dAtA[iNdEx:]) @@ -15140,7 +16893,7 @@ func (m *GetClustersRequest) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *GetClustersResponse) UnmarshalVT(dAtA []byte) error { +func (m *GetGatesResponse) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -15163,15 +16916,15 @@ func (m *GetClustersResponse) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GetClustersResponse: wiretype end group for non-group") + return fmt.Errorf("proto: GetGatesResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GetClustersResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: GetGatesResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Clusters", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Gates", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -15198,8 +16951,8 @@ func (m *GetClustersResponse) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Clusters = append(m.Clusters, &Cluster{}) - if err := m.Clusters[len(m.Clusters)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + m.Gates = append(m.Gates, &VTGate{}) + if err := m.Gates[len(m.Gates)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -15225,7 +16978,7 @@ func (m *GetClustersResponse) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *GetFullStatusRequest) UnmarshalVT(dAtA []byte) error { +func (m *GetKeyspaceRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -15248,10 +17001,10 @@ func (m *GetFullStatusRequest) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GetFullStatusRequest: wiretype end group for non-group") + return fmt.Errorf("proto: GetKeyspaceRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GetFullStatusRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: GetKeyspaceRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -15288,9 +17041,9 @@ func (m *GetFullStatusRequest) UnmarshalVT(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Alias", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Keyspace", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflow @@ -15300,27 +17053,23 @@ func (m *GetFullStatusRequest) UnmarshalVT(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLength } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLength } if postIndex > l { return io.ErrUnexpectedEOF } - if m.Alias == nil { - m.Alias = &topodata.TabletAlias{} - } - if err := m.Alias.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Keyspace = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -15344,7 +17093,7 @@ func (m *GetFullStatusRequest) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *GetGatesRequest) UnmarshalVT(dAtA []byte) error { +func (m *GetKeyspacesRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -15367,10 +17116,10 @@ func (m *GetGatesRequest) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GetGatesRequest: wiretype end group for non-group") + return fmt.Errorf("proto: GetKeyspacesRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GetGatesRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: GetKeyspacesRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -15427,7 +17176,7 @@ func (m *GetGatesRequest) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *GetGatesResponse) UnmarshalVT(dAtA []byte) error { +func (m *GetKeyspacesResponse) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -15450,15 +17199,15 @@ func (m *GetGatesResponse) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GetGatesResponse: wiretype end group for non-group") + return fmt.Errorf("proto: GetKeyspacesResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GetGatesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: GetKeyspacesResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Gates", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Keyspaces", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -15485,8 +17234,8 @@ func (m *GetGatesResponse) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Gates = append(m.Gates, &VTGate{}) - if err := m.Gates[len(m.Gates)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + m.Keyspaces = append(m.Keyspaces, &Keyspace{}) + if err := m.Keyspaces[len(m.Keyspaces)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -15512,7 +17261,7 @@ func (m *GetGatesResponse) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *GetKeyspaceRequest) UnmarshalVT(dAtA []byte) error { +func (m *GetSchemaRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -15535,10 +17284,10 @@ func (m *GetKeyspaceRequest) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GetKeyspaceRequest: wiretype end group for non-group") + return fmt.Errorf("proto: GetSchemaRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GetKeyspaceRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: GetSchemaRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -15605,6 +17354,74 @@ func (m *GetKeyspaceRequest) UnmarshalVT(dAtA []byte) error { } m.Keyspace = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Table", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 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 ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Table = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TableSizeOptions", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.TableSizeOptions == nil { + m.TableSizeOptions = &GetSchemaTableSizeOptions{} + } + if err := m.TableSizeOptions.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skip(dAtA[iNdEx:]) @@ -15627,7 +17444,7 @@ func (m *GetKeyspaceRequest) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *GetKeyspacesRequest) UnmarshalVT(dAtA []byte) error { +func (m *GetSchemasRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -15650,10 +17467,10 @@ func (m *GetKeyspacesRequest) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GetKeyspacesRequest: wiretype end group for non-group") + return fmt.Errorf("proto: GetSchemasRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GetKeyspacesRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: GetSchemasRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -15688,6 +17505,42 @@ func (m *GetKeyspacesRequest) UnmarshalVT(dAtA []byte) error { } m.ClusterIds = append(m.ClusterIds, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TableSizeOptions", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.TableSizeOptions == nil { + m.TableSizeOptions = &GetSchemaTableSizeOptions{} + } + if err := m.TableSizeOptions.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skip(dAtA[iNdEx:]) @@ -15710,7 +17563,7 @@ func (m *GetKeyspacesRequest) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *GetKeyspacesResponse) UnmarshalVT(dAtA []byte) error { +func (m *GetSchemasResponse) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -15733,15 +17586,15 @@ func (m *GetKeyspacesResponse) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GetKeyspacesResponse: wiretype end group for non-group") + return fmt.Errorf("proto: GetSchemasResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GetKeyspacesResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: GetSchemasResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Keyspaces", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Schemas", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -15768,8 +17621,8 @@ func (m *GetKeyspacesResponse) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Keyspaces = append(m.Keyspaces, &Keyspace{}) - if err := m.Keyspaces[len(m.Keyspaces)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + m.Schemas = append(m.Schemas, &Schema{}) + if err := m.Schemas[len(m.Schemas)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -15795,7 +17648,7 @@ func (m *GetKeyspacesResponse) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *GetSchemaRequest) UnmarshalVT(dAtA []byte) error { +func (m *GetSchemaMigrationsRequest_ClusterRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -15818,10 +17671,10 @@ func (m *GetSchemaRequest) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GetSchemaRequest: wiretype end group for non-group") + return fmt.Errorf("proto: GetSchemaMigrationsRequest_ClusterRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GetSchemaRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: GetSchemaMigrationsRequest_ClusterRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -15858,71 +17711,7 @@ func (m *GetSchemaRequest) UnmarshalVT(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Keyspace", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 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 ErrInvalidLength - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLength - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Keyspace = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Table", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 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 ErrInvalidLength - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLength - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Table = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TableSizeOptions", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Request", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -15949,10 +17738,10 @@ func (m *GetSchemaRequest) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.TableSizeOptions == nil { - m.TableSizeOptions = &GetSchemaTableSizeOptions{} + if m.Request == nil { + m.Request = &vtctldata.GetSchemaMigrationsRequest{} } - if err := m.TableSizeOptions.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Request.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -15978,7 +17767,7 @@ func (m *GetSchemaRequest) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *GetSchemasRequest) UnmarshalVT(dAtA []byte) error { +func (m *GetSchemaMigrationsRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -15986,62 +17775,30 @@ func (m *GetSchemasRequest) UnmarshalVT(dAtA []byte) error { var wire uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { - return 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: GetSchemasRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: GetSchemasRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ClusterIds", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 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 ErrInvalidLength - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLength + return ErrIntOverflow } - if postIndex > l { + if iNdEx >= l { return io.ErrUnexpectedEOF } - m.ClusterIds = append(m.ClusterIds, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - case 2: + 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: GetSchemaMigrationsRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GetSchemaMigrationsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TableSizeOptions", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ClusterRequests", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -16068,10 +17825,8 @@ func (m *GetSchemasRequest) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.TableSizeOptions == nil { - m.TableSizeOptions = &GetSchemaTableSizeOptions{} - } - if err := m.TableSizeOptions.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + m.ClusterRequests = append(m.ClusterRequests, &GetSchemaMigrationsRequest_ClusterRequest{}) + if err := m.ClusterRequests[len(m.ClusterRequests)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -16097,7 +17852,7 @@ func (m *GetSchemasRequest) UnmarshalVT(dAtA []byte) error { } return nil } -func (m *GetSchemasResponse) UnmarshalVT(dAtA []byte) error { +func (m *GetSchemaMigrationsResponse) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -16120,15 +17875,15 @@ func (m *GetSchemasResponse) UnmarshalVT(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: GetSchemasResponse: wiretype end group for non-group") + return fmt.Errorf("proto: GetSchemaMigrationsResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: GetSchemasResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: GetSchemaMigrationsResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Schemas", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SchemaMigrations", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -16155,8 +17910,8 @@ func (m *GetSchemasResponse) UnmarshalVT(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Schemas = append(m.Schemas, &Schema{}) - if err := m.Schemas[len(m.Schemas)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + m.SchemaMigrations = append(m.SchemaMigrations, &SchemaMigration{}) + if err := m.SchemaMigrations[len(m.SchemaMigrations)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -18629,6 +20384,125 @@ func (m *GetWorkflowsResponse) UnmarshalVT(dAtA []byte) error { } return nil } +func (m *LaunchSchemaMigrationRequest) 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 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: LaunchSchemaMigrationRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: LaunchSchemaMigrationRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ClusterId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 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 ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ClusterId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Request", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Request == nil { + m.Request = &vtctldata.LaunchSchemaMigrationRequest{} + } + if err := m.Request.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skip(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return 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 *PingTabletRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -21340,6 +23214,125 @@ func (m *RemoveKeyspaceCellResponse) UnmarshalVT(dAtA []byte) error { } return nil } +func (m *RetrySchemaMigrationRequest) 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 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: RetrySchemaMigrationRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RetrySchemaMigrationRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ClusterId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 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 ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ClusterId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Request", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflow + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLength + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Request == nil { + m.Request = &vtctldata.RetrySchemaMigrationRequest{} + } + if err := m.Request.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skip(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return 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 *RunHealthCheckRequest) UnmarshalVT(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/go/vt/proto/vtctlservice/vtctlservice_grpc.pb.go b/go/vt/proto/vtctlservice/vtctlservice_grpc.pb.go index f7996d22231..e4774540d2a 100644 --- a/go/vt/proto/vtctlservice/vtctlservice_grpc.pb.go +++ b/go/vt/proto/vtctlservice/vtctlservice_grpc.pb.go @@ -159,7 +159,7 @@ type VtctldClient interface { Backup(ctx context.Context, in *vtctldata.BackupRequest, opts ...grpc.CallOption) (Vtctld_BackupClient, error) // BackupShard chooses a tablet in the shard and uses it to create a backup. BackupShard(ctx context.Context, in *vtctldata.BackupShardRequest, opts ...grpc.CallOption) (Vtctld_BackupShardClient, error) - // CancelSchemaMigration cancels one or all migrations, terminating any runnign ones as needed. + // CancelSchemaMigration cancels one or all migrations, terminating any running ones as needed. CancelSchemaMigration(ctx context.Context, in *vtctldata.CancelSchemaMigrationRequest, opts ...grpc.CallOption) (*vtctldata.CancelSchemaMigrationResponse, error) // ChangeTabletType changes the db type for the specified tablet, if possible. // This is used primarily to arrange replicas, and it will not convert a @@ -1557,7 +1557,7 @@ type VtctldServer interface { Backup(*vtctldata.BackupRequest, Vtctld_BackupServer) error // BackupShard chooses a tablet in the shard and uses it to create a backup. BackupShard(*vtctldata.BackupShardRequest, Vtctld_BackupShardServer) error - // CancelSchemaMigration cancels one or all migrations, terminating any runnign ones as needed. + // CancelSchemaMigration cancels one or all migrations, terminating any running ones as needed. CancelSchemaMigration(context.Context, *vtctldata.CancelSchemaMigrationRequest) (*vtctldata.CancelSchemaMigrationResponse, error) // ChangeTabletType changes the db type for the specified tablet, if possible. // This is used primarily to arrange replicas, and it will not convert a diff --git a/go/vt/vtadmin/api.go b/go/vt/vtadmin/api.go index ff49d2ac218..b462d1dcbb3 100644 --- a/go/vt/vtadmin/api.go +++ b/go/vt/vtadmin/api.go @@ -372,6 +372,13 @@ func (api *API) Handler() http.Handler { router.HandleFunc("/keyspace/{cluster_id}/{name}/validate/schema", httpAPI.Adapt(vtadminhttp.ValidateSchemaKeyspace)).Name("API.ValidateSchemaKeyspace").Methods("PUT", "OPTIONS") router.HandleFunc("/keyspace/{cluster_id}/{name}/validate/version", httpAPI.Adapt(vtadminhttp.ValidateVersionKeyspace)).Name("API.ValidateVersionKeyspace").Methods("PUT", "OPTIONS") router.HandleFunc("/keyspaces", httpAPI.Adapt(vtadminhttp.GetKeyspaces)).Name("API.GetKeyspaces") + router.HandleFunc("/migration/{cluster_id}/{keyspace}", httpAPI.Adapt(vtadminhttp.ApplySchema)).Name("API.ApplySchema").Methods("POST") + router.HandleFunc("/migration/{cluster_id}/{keyspace}/cancel", httpAPI.Adapt(vtadminhttp.CancelSchemaMigration)).Name("API.CancelSchemaMigration").Methods("PUT", "OPTIONS") + router.HandleFunc("/migration/{cluster_id}/{keyspace}/cleanup", httpAPI.Adapt(vtadminhttp.CleanupSchemaMigration)).Name("API.CleanupSchemaMigration").Methods("PUT", "OPTIONS") + router.HandleFunc("/migration/{cluster_id}/{keyspace}/complete", httpAPI.Adapt(vtadminhttp.CompleteSchemaMigration)).Name("API.CompleteSchemaMigration").Methods("PUT", "OPTIONS") + router.HandleFunc("/migration/{cluster_id}/{keyspace}/launch", httpAPI.Adapt(vtadminhttp.LaunchSchemaMigration)).Name("API.LaunchSchemaMigration").Methods("PUT", "OPTIONS") + router.HandleFunc("/migration/{cluster_id}/{keyspace}/retry", httpAPI.Adapt(vtadminhttp.RetrySchemaMigration)).Name("API.RetrySchemaMigration").Methods("PUT", "OPTIONS") + router.HandleFunc("/migrations/", httpAPI.Adapt(vtadminhttp.GetSchemaMigrations)).Name("API.GetSchemaMigrations") router.HandleFunc("/schema/{table}", httpAPI.Adapt(vtadminhttp.FindSchema)).Name("API.FindSchema") router.HandleFunc("/schema/{cluster_id}/{keyspace}/{table}", httpAPI.Adapt(vtadminhttp.GetSchema)).Name("API.GetSchema") router.HandleFunc("/schemas", httpAPI.Adapt(vtadminhttp.GetSchemas)).Name("API.GetSchemas") @@ -438,6 +445,82 @@ func (api *API) EjectDynamicCluster(key string, value any) { api.clusters = append(api.clusters[:clusterIndex], api.clusters[clusterIndex+1:]...) } +// ApplySchema is part of the vtadminpb.VTAdminServer interface. +func (api *API) ApplySchema(ctx context.Context, req *vtadminpb.ApplySchemaRequest) (*vtctldatapb.ApplySchemaResponse, error) { + span, ctx := trace.NewSpan(ctx, "API.ApplySchema") + defer span.Finish() + + span.Annotate("cluster_id", req.ClusterId) + + if !api.authz.IsAuthorized(ctx, req.ClusterId, rbac.SchemaMigrationResource, rbac.CreateAction) { + return nil, fmt.Errorf("%w: cannot create schema migration in %s", errors.ErrUnauthorized, req.ClusterId) + } + + c, err := api.getClusterForRequest(req.ClusterId) + if err != nil { + return nil, err + } + + return c.ApplySchema(ctx, req.Request) +} + +// CancelSchemaMigration is part of the vtadminpb.VTAdminServer interface. +func (api *API) CancelSchemaMigration(ctx context.Context, req *vtadminpb.CancelSchemaMigrationRequest) (*vtctldatapb.CancelSchemaMigrationResponse, error) { + span, ctx := trace.NewSpan(ctx, "API.CancelSchemaMigration") + defer span.Finish() + + span.Annotate("cluster_id", req.ClusterId) + + if !api.authz.IsAuthorized(ctx, req.ClusterId, rbac.SchemaMigrationResource, rbac.CancelAction) { + return nil, fmt.Errorf("%w: cannot cancel schema migration in %s", errors.ErrUnauthorized, req.ClusterId) + } + + c, err := api.getClusterForRequest(req.ClusterId) + if err != nil { + return nil, err + } + + return c.CancelSchemaMigration(ctx, req.Request) +} + +// CleanupSchemaMigration is part of the vtadminpb.VTAdminServer interface. +func (api *API) CleanupSchemaMigration(ctx context.Context, req *vtadminpb.CleanupSchemaMigrationRequest) (*vtctldatapb.CleanupSchemaMigrationResponse, error) { + span, ctx := trace.NewSpan(ctx, "API.CleanupSchemaMigration") + defer span.Finish() + + span.Annotate("cluster_id", req.ClusterId) + + if !api.authz.IsAuthorized(ctx, req.ClusterId, rbac.SchemaMigrationResource, rbac.CleanupSchemaMigrationAction) { + return nil, fmt.Errorf("%w: cannot cleanup schema migration in %s", errors.ErrUnauthorized, req.ClusterId) + } + + c, err := api.getClusterForRequest(req.ClusterId) + if err != nil { + return nil, err + } + + return c.CleanupSchemaMigration(ctx, req.Request) +} + +// CompleteSchemaMigration is part of the vtadminpb.VTAdminServer interface. +func (api *API) CompleteSchemaMigration(ctx context.Context, req *vtadminpb.CompleteSchemaMigrationRequest) (*vtctldatapb.CompleteSchemaMigrationResponse, error) { + span, ctx := trace.NewSpan(ctx, "API.CompleteSchemaMigration") + defer span.Finish() + + span.Annotate("cluster_id", req.ClusterId) + + if !api.authz.IsAuthorized(ctx, req.ClusterId, rbac.SchemaMigrationResource, rbac.CompleteSchemaMigrationAction) { + return nil, fmt.Errorf("%w: cannot complete schema migration in %s", errors.ErrUnauthorized, req.ClusterId) + } + + c, err := api.getClusterForRequest(req.ClusterId) + if err != nil { + return nil, err + } + + return c.CompleteSchemaMigration(ctx, req.Request) +} + // CreateKeyspace is part of the vtadminpb.VTAdminServer interface. func (api *API) CreateKeyspace(ctx context.Context, req *vtadminpb.CreateKeyspaceRequest) (*vtadminpb.CreateKeyspaceResponse, error) { span, ctx := trace.NewSpan(ctx, "API.CreateKeyspace") @@ -1021,6 +1104,113 @@ func (api *API) GetSchemas(ctx context.Context, req *vtadminpb.GetSchemasRequest }, nil } +// GetSchemaMigrations is part of the vtadminpb.VTAdminServer interface. +func (api *API) GetSchemaMigrations(ctx context.Context, req *vtadminpb.GetSchemaMigrationsRequest) (*vtadminpb.GetSchemaMigrationsResponse, error) { + span, ctx := trace.NewSpan(ctx, "API.GetSchemaMigrations") + defer span.Finish() + + clusterIDs := make([]string, 0, len(req.ClusterRequests)) + requestsByCluster := make(map[string][]*vtctldatapb.GetSchemaMigrationsRequest, len(req.ClusterRequests)) + + for _, r := range req.ClusterRequests { + clusterIDs = append(clusterIDs, r.ClusterId) + requestsByCluster[r.ClusterId] = append(requestsByCluster[r.ClusterId], r.Request) + } + + clusters, _ := api.getClustersForRequest(clusterIDs) + + var ( + m sync.Mutex + wg sync.WaitGroup + rec concurrency.AllErrorRecorder + results = make([]*vtadminpb.SchemaMigration, 0, len(req.ClusterRequests)) + ) + + m.Lock() + for _, c := range clusters { + if len(requestsByCluster[c.ID]) == 0 { + wg.Add(1) + go func(ctx context.Context, c *cluster.Cluster) { + defer wg.Done() + + span, ctx := trace.NewSpan(ctx, "API.getClusterKeyspaces") + defer span.Finish() + + span.Annotate("cluster_id", c.ID) + + if !api.authz.IsAuthorized(ctx, c.ID, rbac.SchemaMigrationResource, rbac.GetAction) { + return + } + + keyspaces, err := c.GetKeyspaces(ctx) + if err != nil { + rec.RecordError(err) + return + } + + m.Lock() + defer m.Unlock() + + for _, ks := range keyspaces { + requestsByCluster[c.ID] = append(requestsByCluster[c.ID], &vtctldatapb.GetSchemaMigrationsRequest{ + Keyspace: ks.Keyspace.Name, + }) + } + }(ctx, c) + } + } + m.Unlock() + + wg.Wait() + if rec.HasErrors() { + return nil, rec.Error() + } + + for _, c := range clusters { + if requestsByCluster[c.ID] == nil { + continue + } + + for _, r := range requestsByCluster[c.ID] { + wg.Add(1) + + go func(ctx context.Context, c *cluster.Cluster, r *vtctldatapb.GetSchemaMigrationsRequest) { + defer wg.Done() + + span, ctx := trace.NewSpan(ctx, "API.getClusterSchemaMigrations") + defer span.Finish() + + span.Annotate("cluster_id", c.ID) + + if !api.authz.IsAuthorized(ctx, c.ID, rbac.SchemaMigrationResource, rbac.GetAction) { + return + } + + migrations, err := c.GetSchemaMigrations(ctx, r) + if err != nil { + rec.RecordError(err) + return + } + + m.Lock() + defer m.Unlock() + + results = append(results, migrations...) + }(ctx, c, r) + } + } + + wg.Wait() + + if rec.HasErrors() { + return nil, rec.Error() + } + + return &vtadminpb.GetSchemaMigrationsResponse{ + SchemaMigrations: results, + }, nil +} + // GetShardReplicationPositions is part of the vtadminpb.VTAdminServer interface. func (api *API) GetShardReplicationPositions(ctx context.Context, req *vtadminpb.GetShardReplicationPositionsRequest) (*vtadminpb.GetShardReplicationPositionsResponse, error) { span, ctx := trace.NewSpan(ctx, "API.GetShardReplicationPositions") @@ -1521,6 +1711,25 @@ func (api *API) GetWorkflows(ctx context.Context, req *vtadminpb.GetWorkflowsReq }, nil } +// LaunchSchemaMigration is part of the vtadminpb.VTAdminServer interface. +func (api *API) LaunchSchemaMigration(ctx context.Context, req *vtadminpb.LaunchSchemaMigrationRequest) (*vtctldatapb.LaunchSchemaMigrationResponse, error) { + span, ctx := trace.NewSpan(ctx, "API.LaunchSchemaMigration") + defer span.Finish() + + span.Annotate("cluster_id", req.ClusterId) + + if !api.authz.IsAuthorized(ctx, req.ClusterId, rbac.SchemaMigrationResource, rbac.LaunchSchemaMigrationAction) { + return nil, fmt.Errorf("%w: cannot launch schema migration in %s", errors.ErrUnauthorized, req.ClusterId) + } + + c, err := api.getClusterForRequest(req.ClusterId) + if err != nil { + return nil, err + } + + return c.LaunchSchemaMigration(ctx, req.Request) +} + // PingTablet is part of the vtadminpb.VTAdminServer interface. func (api *API) PingTablet(ctx context.Context, req *vtadminpb.PingTabletRequest) (*vtadminpb.PingTabletResponse, error) { span, ctx := trace.NewSpan(ctx, "API.PingTablet") @@ -1728,6 +1937,25 @@ func (api *API) ReloadSchemaShard(ctx context.Context, req *vtadminpb.ReloadSche }, nil } +// RetrySchemaMigration is part of the vtadminpb.VTAdminServer interface. +func (api *API) RetrySchemaMigration(ctx context.Context, req *vtadminpb.RetrySchemaMigrationRequest) (*vtctldatapb.RetrySchemaMigrationResponse, error) { + span, ctx := trace.NewSpan(ctx, "API.RetrySchemaMigration") + defer span.Finish() + + span.Annotate("cluster_id", req.ClusterId) + + if !api.authz.IsAuthorized(ctx, req.ClusterId, rbac.SchemaMigrationResource, rbac.RetryAction) { + return nil, fmt.Errorf("%w: cannot retry schema migration in %s", errors.ErrUnauthorized, req.ClusterId) + } + + c, err := api.getClusterForRequest(req.ClusterId) + if err != nil { + return nil, err + } + + return c.RetrySchemaMigration(ctx, req.Request) +} + // RunHealthCheck is part of the vtadminpb.VTAdminServer interface. func (api *API) RunHealthCheck(ctx context.Context, req *vtadminpb.RunHealthCheckRequest) (*vtadminpb.RunHealthCheckResponse, error) { span, ctx := trace.NewSpan(ctx, "API.RunHealthCheck") diff --git a/go/vt/vtadmin/api_authz_test.go b/go/vt/vtadmin/api_authz_test.go index 0e83c8a1484..94a8befd473 100644 --- a/go/vt/vtadmin/api_authz_test.go +++ b/go/vt/vtadmin/api_authz_test.go @@ -44,6 +44,266 @@ import ( vtctldatapb "vitess.io/vitess/go/vt/proto/vtctldata" ) +func TestApplySchema(t *testing.T) { + t.Parallel() + + opts := vtadmin.Options{ + RBAC: &rbac.Config{ + Rules: []*struct { + Resource string + Actions []string + Subjects []string + Clusters []string + }{ + { + Resource: "SchemaMigration", + Actions: []string{"create"}, + Subjects: []string{"user:allowed"}, + Clusters: []string{"*"}, + }, + }, + }, + } + err := opts.RBAC.Reify() + require.NoError(t, err, "failed to reify authorization rules: %+v", opts.RBAC.Rules) + + api := vtadmin.NewAPI(vtenv.NewTestEnv(), testClusters(t), opts) + t.Cleanup(func() { + if err := api.Close(); err != nil { + t.Logf("api did not close cleanly: %s", err.Error()) + } + }) + + t.Run("unauthorized actor", func(t *testing.T) { + t.Parallel() + + actor := &rbac.Actor{Name: "other"} + ctx := context.Background() + ctx = rbac.NewContext(ctx, actor) + + resp, err := api.ApplySchema(ctx, &vtadminpb.ApplySchemaRequest{ + ClusterId: "test", + Request: &vtctldatapb.ApplySchemaRequest{ + Keyspace: "test", + }, + }) + assert.Error(t, err, "actor %+v should not be permitted to ApplySchema", actor) + assert.Nil(t, resp, "actor %+v should not be permitted to ApplySchema", actor) + }) + + t.Run("authorized actor", func(t *testing.T) { + t.Parallel() + + actor := &rbac.Actor{Name: "allowed"} + ctx := context.Background() + ctx = rbac.NewContext(ctx, actor) + + resp, err := api.ApplySchema(ctx, &vtadminpb.ApplySchemaRequest{ + ClusterId: "test", + Request: &vtctldatapb.ApplySchemaRequest{ + Keyspace: "test", + }, + }) + require.NoError(t, err) + assert.NotNil(t, resp, "actor %+v should be permitted to ApplySchema", actor) + }) +} + +func TestCancelSchemaMigration(t *testing.T) { + t.Parallel() + + opts := vtadmin.Options{ + RBAC: &rbac.Config{ + Rules: []*struct { + Resource string + Actions []string + Subjects []string + Clusters []string + }{ + { + Resource: "SchemaMigration", + Actions: []string{"cancel"}, + Subjects: []string{"user:allowed"}, + Clusters: []string{"*"}, + }, + }, + }, + } + err := opts.RBAC.Reify() + require.NoError(t, err, "failed to reify authorization rules: %+v", opts.RBAC.Rules) + + api := vtadmin.NewAPI(vtenv.NewTestEnv(), testClusters(t), opts) + t.Cleanup(func() { + if err := api.Close(); err != nil { + t.Logf("api did not close cleanly: %s", err.Error()) + } + }) + + t.Run("unauthorized actor", func(t *testing.T) { + t.Parallel() + + actor := &rbac.Actor{Name: "other"} + ctx := context.Background() + ctx = rbac.NewContext(ctx, actor) + + resp, err := api.CancelSchemaMigration(ctx, &vtadminpb.CancelSchemaMigrationRequest{ + ClusterId: "test", + Request: &vtctldatapb.CancelSchemaMigrationRequest{ + Keyspace: "test", + }, + }) + assert.Error(t, err, "actor %+v should not be permitted to CancelSchemaMigration", actor) + assert.Nil(t, resp, "actor %+v should not be permitted to CancelSchemaMigration", actor) + }) + + t.Run("authorized actor", func(t *testing.T) { + t.Parallel() + + actor := &rbac.Actor{Name: "allowed"} + ctx := context.Background() + ctx = rbac.NewContext(ctx, actor) + + resp, err := api.CancelSchemaMigration(ctx, &vtadminpb.CancelSchemaMigrationRequest{ + ClusterId: "test", + Request: &vtctldatapb.CancelSchemaMigrationRequest{ + Keyspace: "test", + }, + }) + require.NoError(t, err) + assert.NotNil(t, resp, "actor %+v should be permitted to CancelSchemaMigration", actor) + }) +} + +func TestCleanupSchemaMigration(t *testing.T) { + t.Parallel() + + opts := vtadmin.Options{ + RBAC: &rbac.Config{ + Rules: []*struct { + Resource string + Actions []string + Subjects []string + Clusters []string + }{ + { + Resource: "SchemaMigration", + Actions: []string{"cleanup_schema_migration"}, + Subjects: []string{"user:allowed"}, + Clusters: []string{"*"}, + }, + }, + }, + } + err := opts.RBAC.Reify() + require.NoError(t, err, "failed to reify authorization rules: %+v", opts.RBAC.Rules) + + api := vtadmin.NewAPI(vtenv.NewTestEnv(), testClusters(t), opts) + t.Cleanup(func() { + if err := api.Close(); err != nil { + t.Logf("api did not close cleanly: %s", err.Error()) + } + }) + + t.Run("unauthorized actor", func(t *testing.T) { + t.Parallel() + + actor := &rbac.Actor{Name: "other"} + ctx := context.Background() + ctx = rbac.NewContext(ctx, actor) + + resp, err := api.CleanupSchemaMigration(ctx, &vtadminpb.CleanupSchemaMigrationRequest{ + ClusterId: "test", + Request: &vtctldatapb.CleanupSchemaMigrationRequest{ + Keyspace: "test", + }, + }) + assert.Error(t, err, "actor %+v should not be permitted to CleanupSchemaMigration", actor) + assert.Nil(t, resp, "actor %+v should not be permitted to CleanupSchemaMigration", actor) + }) + + t.Run("authorized actor", func(t *testing.T) { + t.Parallel() + + actor := &rbac.Actor{Name: "allowed"} + ctx := context.Background() + ctx = rbac.NewContext(ctx, actor) + + resp, err := api.CleanupSchemaMigration(ctx, &vtadminpb.CleanupSchemaMigrationRequest{ + ClusterId: "test", + Request: &vtctldatapb.CleanupSchemaMigrationRequest{ + Keyspace: "test", + }, + }) + require.NoError(t, err) + assert.NotNil(t, resp, "actor %+v should be permitted to CleanupSchemaMigration", actor) + }) +} + +func TestCompleteSchemaMigration(t *testing.T) { + t.Parallel() + + opts := vtadmin.Options{ + RBAC: &rbac.Config{ + Rules: []*struct { + Resource string + Actions []string + Subjects []string + Clusters []string + }{ + { + Resource: "SchemaMigration", + Actions: []string{"complete_schema_migration"}, + Subjects: []string{"user:allowed"}, + Clusters: []string{"*"}, + }, + }, + }, + } + err := opts.RBAC.Reify() + require.NoError(t, err, "failed to reify authorization rules: %+v", opts.RBAC.Rules) + + api := vtadmin.NewAPI(vtenv.NewTestEnv(), testClusters(t), opts) + t.Cleanup(func() { + if err := api.Close(); err != nil { + t.Logf("api did not close cleanly: %s", err.Error()) + } + }) + + t.Run("unauthorized actor", func(t *testing.T) { + t.Parallel() + + actor := &rbac.Actor{Name: "other"} + ctx := context.Background() + ctx = rbac.NewContext(ctx, actor) + + resp, err := api.CompleteSchemaMigration(ctx, &vtadminpb.CompleteSchemaMigrationRequest{ + ClusterId: "test", + Request: &vtctldatapb.CompleteSchemaMigrationRequest{ + Keyspace: "test", + }, + }) + assert.Error(t, err, "actor %+v should not be permitted to CompleteSchemaMigration", actor) + assert.Nil(t, resp, "actor %+v should not be permitted to CompleteSchemaMigration", actor) + }) + + t.Run("authorized actor", func(t *testing.T) { + t.Parallel() + + actor := &rbac.Actor{Name: "allowed"} + ctx := context.Background() + ctx = rbac.NewContext(ctx, actor) + + resp, err := api.CompleteSchemaMigration(ctx, &vtadminpb.CompleteSchemaMigrationRequest{ + ClusterId: "test", + Request: &vtctldatapb.CompleteSchemaMigrationRequest{ + Keyspace: "test", + }, + }) + require.NoError(t, err) + assert.NotNil(t, resp, "actor %+v should be permitted to CompleteSchemaMigration", actor) + }) +} + func TestCreateKeyspace(t *testing.T) { t.Parallel() @@ -1070,6 +1330,79 @@ func TestGetKeyspaces(t *testing.T) { }) } +func TestGetSchemaMigrations(t *testing.T) { + t.Parallel() + + opts := vtadmin.Options{ + RBAC: &rbac.Config{ + Rules: []*struct { + Resource string + Actions []string + Subjects []string + Clusters []string + }{ + { + Resource: "SchemaMigration", + Actions: []string{"get"}, + Subjects: []string{"user:allowed-all"}, + Clusters: []string{"*"}, + }, + { + Resource: "SchemaMigration", + Actions: []string{"get"}, + Subjects: []string{"user:allowed-other"}, + Clusters: []string{"other"}, + }, + }, + }, + } + err := opts.RBAC.Reify() + require.NoError(t, err, "failed to reify authorization rules: %+v", opts.RBAC.Rules) + + api := vtadmin.NewAPI(vtenv.NewTestEnv(), testClusters(t), opts) + t.Cleanup(func() { + if err := api.Close(); err != nil { + t.Logf("api did not close cleanly: %s", err.Error()) + } + }) + + t.Run("unauthorized actor", func(t *testing.T) { + t.Parallel() + + actor := &rbac.Actor{Name: "unauthorized"} + ctx := context.Background() + ctx = rbac.NewContext(ctx, actor) + + resp, err := api.GetSchemaMigrations(ctx, &vtadminpb.GetSchemaMigrationsRequest{}) + assert.NoError(t, err) + assert.Empty(t, resp.SchemaMigrations, "actor %+v should not be permitted to GetSchemaMigrations", actor) + }) + + t.Run("partial access", func(t *testing.T) { + t.Parallel() + + actor := &rbac.Actor{Name: "allowed-other"} + ctx := context.Background() + ctx = rbac.NewContext(ctx, actor) + + resp, _ := api.GetSchemaMigrations(ctx, &vtadminpb.GetSchemaMigrationsRequest{}) + assert.NotEmpty(t, resp.SchemaMigrations, "actor %+v should be permitted to GetSchemaMigrations", actor) + assert.Len(t, resp.SchemaMigrations, 3, "'other' actor should be able to see the 3 migrations in cluster 'other'") + }) + + t.Run("full access", func(t *testing.T) { + t.Parallel() + + actor := &rbac.Actor{Name: "allowed-all"} + ctx := context.Background() + ctx = rbac.NewContext(ctx, actor) + + resp, _ := api.GetSchemaMigrations(ctx, &vtadminpb.GetSchemaMigrationsRequest{}) + assert.NotEmpty(t, resp.SchemaMigrations, "actor %+v should be permitted to GetSchemaMigrations", actor) + assert.Len(t, resp.SchemaMigrations, 4, "'all' actor should be able to see migrations in all clusters") + }) +} + func TestGetSchema(t *testing.T) { t.Parallel() @@ -2001,6 +2334,71 @@ func TestGetWorkflows(t *testing.T) { }) } +func TestLaunchSchemaMigration(t *testing.T) { + t.Parallel() + + opts := vtadmin.Options{ + RBAC: &rbac.Config{ + Rules: []*struct { + Resource string + Actions []string + Subjects []string + Clusters []string + }{ + { + Resource: "SchemaMigration", + Actions: []string{"launch_schema_migration"}, + Subjects: []string{"user:allowed"}, + Clusters: []string{"*"}, + }, + }, + }, + } + err := opts.RBAC.Reify() + require.NoError(t, err, "failed to reify authorization rules: %+v", opts.RBAC.Rules) + + api := vtadmin.NewAPI(vtenv.NewTestEnv(), testClusters(t), opts) + t.Cleanup(func() { + if err := api.Close(); err != nil { + t.Logf("api did not close cleanly: %s", err.Error()) + } + }) + + t.Run("unauthorized actor", func(t *testing.T) { + t.Parallel() + + actor := &rbac.Actor{Name: "other"} + ctx := context.Background() + ctx = rbac.NewContext(ctx, actor) + + resp, err := api.LaunchSchemaMigration(ctx, &vtadminpb.LaunchSchemaMigrationRequest{ + ClusterId: "test", + Request: &vtctldatapb.LaunchSchemaMigrationRequest{ + Keyspace: "test", + }, + }) + assert.Error(t, err, "actor %+v should not be permitted to LaunchSchemaMigration", actor) + assert.Nil(t, resp, "actor %+v should not be permitted to LaunchSchemaMigration", actor) + }) + + t.Run("authorized actor", func(t *testing.T) { + t.Parallel() + + actor := &rbac.Actor{Name: "allowed"} + ctx := context.Background() + ctx = rbac.NewContext(ctx, actor) + + resp, err := api.LaunchSchemaMigration(ctx, &vtadminpb.LaunchSchemaMigrationRequest{ + ClusterId: "test", + Request: &vtctldatapb.LaunchSchemaMigrationRequest{ + Keyspace: "test", + }, + }) + require.NoError(t, err) + assert.NotNil(t, resp, "actor %+v should be permitted to LaunchSchemaMigration", actor) + }) +} + func TestPingTablet(t *testing.T) { t.Parallel() @@ -2349,6 +2747,71 @@ func TestReloadSchemas(t *testing.T) { }) } +func TestRetrySchemaMigration(t *testing.T) { + t.Parallel() + + opts := vtadmin.Options{ + RBAC: &rbac.Config{ + Rules: []*struct { + Resource string + Actions []string + Subjects []string + Clusters []string + }{ + { + Resource: "SchemaMigration", + Actions: []string{"retry"}, + Subjects: []string{"user:allowed"}, + Clusters: []string{"*"}, + }, + }, + }, + } + err := opts.RBAC.Reify() + require.NoError(t, err, "failed to reify authorization rules: %+v", opts.RBAC.Rules) + + api := vtadmin.NewAPI(vtenv.NewTestEnv(), testClusters(t), opts) + t.Cleanup(func() { + if err := api.Close(); err != nil { + t.Logf("api did not close cleanly: %s", err.Error()) + } + }) + + t.Run("unauthorized actor", func(t *testing.T) { + t.Parallel() + + actor := &rbac.Actor{Name: "other"} + ctx := context.Background() + ctx = rbac.NewContext(ctx, actor) + + resp, err := api.RetrySchemaMigration(ctx, &vtadminpb.RetrySchemaMigrationRequest{ + ClusterId: "test", + Request: &vtctldatapb.RetrySchemaMigrationRequest{ + Keyspace: "test", + }, + }) + assert.Error(t, err, "actor %+v should not be permitted to RetrySchemaMigration", actor) + assert.Nil(t, resp, "actor %+v should not be permitted to RetrySchemaMigration", actor) + }) + + t.Run("authorized actor", func(t *testing.T) { + t.Parallel() + + actor := &rbac.Actor{Name: "allowed"} + ctx := context.Background() + ctx = rbac.NewContext(ctx, actor) + + resp, err := api.RetrySchemaMigration(ctx, &vtadminpb.RetrySchemaMigrationRequest{ + ClusterId: "test", + Request: &vtctldatapb.RetrySchemaMigrationRequest{ + Keyspace: "test", + }, + }) + require.NoError(t, err) + assert.NotNil(t, resp, "actor %+v should be permitted to RetrySchemaMigration", actor) + }) +} + func TestRunHealthCheck(t *testing.T) { t.Parallel() @@ -2998,6 +3461,38 @@ func testClusters(t testing.TB) []*cluster.Cluster { Name: "test", }, VtctldClient: &fakevtctldclient.VtctldClient{ + ApplySchemaResults: map[string]struct { + Response *vtctldatapb.ApplySchemaResponse + Error error + }{ + "test": { + Response: &vtctldatapb.ApplySchemaResponse{}, + }, + }, + CancelSchemaMigrationResults: map[string]struct { + Response *vtctldatapb.CancelSchemaMigrationResponse + Error error + }{ + "test": { + Response: &vtctldatapb.CancelSchemaMigrationResponse{}, + }, + }, + CleanupSchemaMigrationResults: map[string]struct { + Response *vtctldatapb.CleanupSchemaMigrationResponse + Error error + }{ + "test": { + Response: &vtctldatapb.CleanupSchemaMigrationResponse{}, + }, + }, + CompleteSchemaMigrationResults: map[string]struct { + Response *vtctldatapb.CompleteSchemaMigrationResponse + Error error + }{ + "test": { + Response: &vtctldatapb.CompleteSchemaMigrationResponse{}, + }, + }, DeleteShardsResults: map[string]error{ "test/-": nil, }, @@ -3086,6 +3581,18 @@ func testClusters(t testing.TB) []*cluster.Cluster { }, }, }, + GetSchemaMigrationsResults: map[string]struct { + Response *vtctldatapb.GetSchemaMigrationsResponse + Error error + }{ + "test": { + Response: &vtctldatapb.GetSchemaMigrationsResponse{ + Migrations: []*vtctldatapb.SchemaMigration{ + {}, + }, + }, + }, + }, GetSchemaResults: map[string]struct { Response *vtctldatapb.GetSchemaResponse Error error @@ -3155,6 +3662,14 @@ func testClusters(t testing.TB) []*cluster.Cluster { }, }}, }, + LaunchSchemaMigrationResults: map[string]struct { + Response *vtctldatapb.LaunchSchemaMigrationResponse + Error error + }{ + "test": { + Response: &vtctldatapb.LaunchSchemaMigrationResponse{}, + }, + }, PingTabletResults: map[string]error{ "zone1-0000000100": nil, }, @@ -3186,6 +3701,14 @@ func testClusters(t testing.TB) []*cluster.Cluster { Response: &vtctldatapb.ReparentTabletResponse{}, }, }, + RetrySchemaMigrationResults: map[string]struct { + Response *vtctldatapb.RetrySchemaMigrationResponse + Error error + }{ + "test": { + Response: &vtctldatapb.RetrySchemaMigrationResponse{}, + }, + }, RunHealthCheckResults: map[string]error{ "zone1-0000000100": nil, }, @@ -3256,7 +3779,7 @@ func testClusters(t testing.TB) []*cluster.Cluster { Config: &cluster.Config{ TopoReadPoolConfig: &cluster.RPCPoolConfig{ Size: 100, - WaitTimeout: time.Millisecond * 50, + WaitTimeout: time.Millisecond * 500, }, }, }, { @@ -3323,6 +3846,18 @@ func testClusters(t testing.TB) []*cluster.Cluster { }, }, }, + GetSchemaMigrationsResults: map[string]struct { + Response *vtctldatapb.GetSchemaMigrationsResponse + Error error + }{ + "otherks": { + Response: &vtctldatapb.GetSchemaMigrationsResponse{ + Migrations: []*vtctldatapb.SchemaMigration{ + {}, {}, {}, + }, + }, + }, + }, GetSchemaResults: map[string]struct { Response *vtctldatapb.GetSchemaResponse Error error @@ -3405,7 +3940,7 @@ func testClusters(t testing.TB) []*cluster.Cluster { Config: &cluster.Config{ TopoReadPoolConfig: &cluster.RPCPoolConfig{ Size: 100, - WaitTimeout: time.Millisecond * 50, + WaitTimeout: time.Millisecond * 500, }, }, }, diff --git a/go/vt/vtadmin/cluster/cluster.go b/go/vt/vtadmin/cluster/cluster.go index 6f8e355c326..966f43bc67c 100644 --- a/go/vt/vtadmin/cluster/cluster.go +++ b/go/vt/vtadmin/cluster/cluster.go @@ -35,6 +35,7 @@ import ( "vitess.io/vitess/go/sets" "vitess.io/vitess/go/textutil" "vitess.io/vitess/go/trace" + "vitess.io/vitess/go/vt/callerid" "vitess.io/vitess/go/vt/concurrency" "vitess.io/vitess/go/vt/log" "vitess.io/vitess/go/vt/topo/topoproto" @@ -46,6 +47,7 @@ import ( "vitess.io/vitess/go/vt/vtadmin/vtadminproto" "vitess.io/vitess/go/vt/vtadmin/vtctldclient" "vitess.io/vitess/go/vt/vtadmin/vtsql" + "vitess.io/vitess/go/vt/vtctl/schematools" topodatapb "vitess.io/vitess/go/vt/proto/topodata" vtadminpb "vitess.io/vitess/go/vt/proto/vtadmin" @@ -351,6 +353,70 @@ func (c *Cluster) parseTablet(rows *sql.Rows) (*vtadminpb.Tablet, error) { return tablet, nil } +// ApplySchema applies a schema to the given keyspace in this cluster. +func (c *Cluster) ApplySchema(ctx context.Context, req *vtctldatapb.ApplySchemaRequest) (*vtctldatapb.ApplySchemaResponse, error) { + span, ctx := trace.NewSpan(ctx, "Cluster.ApplySchema") + defer span.Finish() + + AnnotateSpan(c, span) + span.Annotate("keyspace", req.Keyspace) + span.Annotate("sql", strings.Join(req.Sql, "; ")) + span.Annotate("ddl_strategy", req.DdlStrategy) + span.Annotate("uuid_list", strings.Join(req.UuidList, ", ")) + span.Annotate("migration_context", req.MigrationContext) + + if d, ok, err := protoutil.DurationFromProto(req.WaitReplicasTimeout); ok && err != nil { + span.Annotate("wait_replicas_timeout", d.String()) + } + + span.Annotate("caller_id", strings.Join( + []string{callerid.GetPrincipal(req.CallerId), callerid.GetComponent(req.CallerId), callerid.GetSubcomponent(req.CallerId)}, + ":", + )) + span.Annotate("batch_size", req.BatchSize) + + return c.Vtctld.ApplySchema(ctx, req) +} + +// CancelSchemaMigration cancels one or all migrations in a keyspace in this +// cluster, terminating any running ones as needed. +func (c *Cluster) CancelSchemaMigration(ctx context.Context, req *vtctldatapb.CancelSchemaMigrationRequest) (*vtctldatapb.CancelSchemaMigrationResponse, error) { + span, ctx := trace.NewSpan(ctx, "Cluster.CancelSchemaMigration") + defer span.Finish() + + AnnotateSpan(c, span) + span.Annotate("keyspace", req.Keyspace) + span.Annotate("uuid", req.Uuid) + + return c.Vtctld.CancelSchemaMigration(ctx, req) +} + +// CleanupSchemaMigration marks a schema migration in this cluster as ready for +// artifact cleanup. +func (c *Cluster) CleanupSchemaMigration(ctx context.Context, req *vtctldatapb.CleanupSchemaMigrationRequest) (*vtctldatapb.CleanupSchemaMigrationResponse, error) { + span, ctx := trace.NewSpan(ctx, "Cluster.CleanupSchemaMigration") + defer span.Finish() + + AnnotateSpan(c, span) + span.Annotate("keyspace", req.Keyspace) + span.Annotate("uuid", req.Uuid) + + return c.Vtctld.CleanupSchemaMigration(ctx, req) +} + +// CompleteSchemaMigration completes one or all migrations in a keyspace +// executed with --postpone-completion in this cluster. +func (c *Cluster) CompleteSchemaMigration(ctx context.Context, req *vtctldatapb.CompleteSchemaMigrationRequest) (*vtctldatapb.CompleteSchemaMigrationResponse, error) { + span, ctx := trace.NewSpan(ctx, "Cluster.CompleteSchemaMigration") + defer span.Finish() + + AnnotateSpan(c, span) + span.Annotate("keyspace", req.Keyspace) + span.Annotate("uuid", req.Uuid) + + return c.Vtctld.CompleteSchemaMigration(ctx, req) +} + // CreateKeyspace creates a keyspace in the given cluster, proxying a // CreateKeyspaceRequest to a vtctld in that cluster. func (c *Cluster) CreateKeyspace(ctx context.Context, req *vtctldatapb.CreateKeyspaceRequest) (*vtadminpb.Keyspace, error) { @@ -1543,6 +1609,51 @@ func (c *Cluster) GetSchemas(ctx context.Context, opts GetSchemaOptions) ([]*vta return schemas, nil } +// GetSchemaMigrations returns one or more schema migrations for a keyspace in +// this cluster. +func (c *Cluster) GetSchemaMigrations(ctx context.Context, req *vtctldatapb.GetSchemaMigrationsRequest) ([]*vtadminpb.SchemaMigration, error) { + span, ctx := trace.NewSpan(ctx, "Cluster.GetSchemaMigrations") + defer span.Finish() + + AnnotateSpan(c, span) + span.Annotate("keyspace", req.Keyspace) + span.Annotate("uuid", req.Uuid) + span.Annotate("migration_context", req.MigrationContext) + + if req.Status != vtctldatapb.SchemaMigration_UNKNOWN { + span.Annotate("status", schematools.SchemaMigrationStatusName(req.Status)) + } + + if d, ok, err := protoutil.DurationFromProto(req.Recent); ok && err == nil { + span.Annotate("recent", d.String()) + } + + switch req.Order { + case vtctldatapb.QueryOrdering_ASCENDING: + span.Annotate("order", "asc") + default: + span.Annotate("order", "desc") + } + + span.Annotate("skip", req.Skip) + span.Annotate("limit", req.Limit) + + resp, err := c.Vtctld.GetSchemaMigrations(ctx, req) + if err != nil { + return nil, err + } + + migrations := make([]*vtadminpb.SchemaMigration, len(resp.Migrations)) + for i, m := range resp.Migrations { + migrations[i] = &vtadminpb.SchemaMigration{ + Cluster: c.ToProto(), + SchemaMigration: m, + } + } + + return migrations, nil +} + // Note that for this function we use the tablets parameter, ignoring the // opts.Tablets value completely. func (c *Cluster) getSchemaFromTablets(ctx context.Context, keyspace string, tablets []*vtadminpb.Tablet, opts GetSchemaOptions) (*vtadminpb.Schema, error) { @@ -1956,6 +2067,19 @@ func (c *Cluster) GetWorkflows(ctx context.Context, keyspaces []string, opts Get }) } +// LaunchSchemaMigration starts a schema migration in the given keyspace in +// this cluster that was started with --postpone-launch. +func (c *Cluster) LaunchSchemaMigration(ctx context.Context, req *vtctldatapb.LaunchSchemaMigrationRequest) (*vtctldatapb.LaunchSchemaMigrationResponse, error) { + span, ctx := trace.NewSpan(ctx, "Cluster.LaunchSchemaMigration") + defer span.Finish() + + AnnotateSpan(c, span) + span.Annotate("keyspace", req.Keyspace) + span.Annotate("uuid", req.Uuid) + + return c.Vtctld.LaunchSchemaMigration(ctx, req) +} + // PlannedFailoverShard fails over the shard either to a new primary or away // from an old primary. Both the current and candidate primaries must be // reachable and running. @@ -2297,6 +2421,19 @@ func (c *Cluster) reloadTabletSchemas(ctx context.Context, req *vtadminpb.Reload return results, nil } +// RetrySchemaMigration retries a schema migration in the given keyspace in +// this cluster. +func (c *Cluster) RetrySchemaMigration(ctx context.Context, req *vtctldatapb.RetrySchemaMigrationRequest) (*vtctldatapb.RetrySchemaMigrationResponse, error) { + span, ctx := trace.NewSpan(ctx, "Cluster.RetrySchemaMigration") + defer span.Finish() + + AnnotateSpan(c, span) + span.Annotate("keyspace", req.Keyspace) + span.Annotate("uuid", req.Uuid) + + return c.Vtctld.RetrySchemaMigration(ctx, req) +} + // SetWritable toggles the writability of a tablet, setting it to either // read-write or read-only. func (c *Cluster) SetWritable(ctx context.Context, req *vtctldatapb.SetWritableRequest) error { diff --git a/go/vt/vtadmin/http/schema_migrations.go b/go/vt/vtadmin/http/schema_migrations.go new file mode 100644 index 00000000000..e0207989648 --- /dev/null +++ b/go/vt/vtadmin/http/schema_migrations.go @@ -0,0 +1,144 @@ +/* +Copyright 2024 The Vitess Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package http + +import ( + "context" + "encoding/json" + "io" + + "github.com/gorilla/mux" + + "vitess.io/vitess/go/vt/vtadmin/errors" + + vtadminpb "vitess.io/vitess/go/vt/proto/vtadmin" + vtctldatapb "vitess.io/vitess/go/vt/proto/vtctldata" +) + +// ApplySchema implements the http wrapper for POST /migration/{cluster_id}/{keyspace}/. +func ApplySchema(ctx context.Context, r Request, api *API) *JSONResponse { + decoder := json.NewDecoder(r.Body) + defer r.Body.Close() + + var req vtctldatapb.ApplySchemaRequest + if err := decoder.Decode(&req); err != nil { + return NewJSONResponse(nil, &errors.BadRequest{ + Err: err, + }) + } + + vars := mux.Vars(r.Request) + req.Keyspace = vars["keyspace"] + + resp, err := api.server.ApplySchema(ctx, &vtadminpb.ApplySchemaRequest{ + ClusterId: vars["cluster_id"], + Request: &req, + }) + + return NewJSONResponse(resp, err) +} + +// CancelSchemaMigration implements the http wrapper for /migration/{cluster_id}/{keyspace}/cancel[?uuid]. +func CancelSchemaMigration(ctx context.Context, r Request, api *API) *JSONResponse { + vars := mux.Vars(r.Request) + + resp, err := api.server.CancelSchemaMigration(ctx, &vtadminpb.CancelSchemaMigrationRequest{ + ClusterId: vars["cluster_id"], + Request: &vtctldatapb.CancelSchemaMigrationRequest{ + Keyspace: vars["keyspace"], + Uuid: r.URL.Query().Get("uuid"), + }, + }) + + return NewJSONResponse(resp, err) +} + +// CleanupSchemaMigration implements the http wrapper for /migration/{cluster_id}/{keyspace}/cleanup[?uuid]. +func CleanupSchemaMigration(ctx context.Context, r Request, api *API) *JSONResponse { + vars := mux.Vars(r.Request) + + resp, err := api.server.CleanupSchemaMigration(ctx, &vtadminpb.CleanupSchemaMigrationRequest{ + ClusterId: vars["cluster_id"], + Request: &vtctldatapb.CleanupSchemaMigrationRequest{ + Keyspace: vars["keyspace"], + Uuid: r.URL.Query().Get("uuid"), + }, + }) + + return NewJSONResponse(resp, err) +} + +// CompleteSchemaMigration implements the http wrapper for /migration/{cluster_id}/{keyspace}/complete[?uuid]. +func CompleteSchemaMigration(ctx context.Context, r Request, api *API) *JSONResponse { + vars := mux.Vars(r.Request) + + resp, err := api.server.CompleteSchemaMigration(ctx, &vtadminpb.CompleteSchemaMigrationRequest{ + ClusterId: vars["cluster_id"], + Request: &vtctldatapb.CompleteSchemaMigrationRequest{ + Keyspace: vars["keyspace"], + Uuid: r.URL.Query().Get("uuid"), + }, + }) + + return NewJSONResponse(resp, err) +} + +// GetSchemaMigrations implements the http wrapper for /migrations/. +func GetSchemaMigrations(ctx context.Context, r Request, api *API) *JSONResponse { + decoder := json.NewDecoder(r.Body) + defer r.Body.Close() + + var req vtadminpb.GetSchemaMigrationsRequest + if err := decoder.Decode(&req); err != nil && err != io.EOF { + return NewJSONResponse(nil, &errors.BadRequest{ + Err: err, + }) + } + + resp, err := api.server.GetSchemaMigrations(ctx, &req) + return NewJSONResponse(resp, err) +} + +// LaunchSchemaMigration implements the http wrapper for /migration/{cluster_id}/{keyspace}/launch[?uuid]. +func LaunchSchemaMigration(ctx context.Context, r Request, api *API) *JSONResponse { + vars := mux.Vars(r.Request) + + resp, err := api.server.LaunchSchemaMigration(ctx, &vtadminpb.LaunchSchemaMigrationRequest{ + ClusterId: vars["cluster_id"], + Request: &vtctldatapb.LaunchSchemaMigrationRequest{ + Keyspace: vars["keyspace"], + Uuid: r.URL.Query().Get("uuid"), + }, + }) + + return NewJSONResponse(resp, err) +} + +// RetrySchemaMigration implements the http wrapper for /migration/{cluster_id}/{keyspace}/retry[?uuid]. +func RetrySchemaMigration(ctx context.Context, r Request, api *API) *JSONResponse { + vars := mux.Vars(r.Request) + + resp, err := api.server.RetrySchemaMigration(ctx, &vtadminpb.RetrySchemaMigrationRequest{ + ClusterId: vars["cluster_id"], + Request: &vtctldatapb.RetrySchemaMigrationRequest{ + Keyspace: vars["keyspace"], + Uuid: r.URL.Query().Get("uuid"), + }, + }) + + return NewJSONResponse(resp, err) +} diff --git a/go/vt/vtadmin/rbac/rbac.go b/go/vt/vtadmin/rbac/rbac.go index 12d23b3ac20..3f15a0d22d2 100644 --- a/go/vt/vtadmin/rbac/rbac.go +++ b/go/vt/vtadmin/rbac/rbac.go @@ -65,12 +65,22 @@ type Action string const ( /* generic actions */ + CancelAction Action = "cancel" CreateAction Action = "create" DeleteAction Action = "delete" GetAction Action = "get" PingAction Action = "ping" PutAction Action = "put" ReloadAction Action = "reload" + RetryAction Action = "retry" + + // cancel, complete, cleanup, launch, retry + + /* schema-migration-specific actions */ + + CleanupSchemaMigrationAction Action = "cleanup_schema_migration" + CompleteSchemaMigrationAction Action = "complete_schema_migration" + LaunchSchemaMigrationAction Action = "launch_schema_migration" /* shard-specific actions */ @@ -112,10 +122,14 @@ const ( SrvKeyspaceResource Resource = "SrvKeyspace" SrvVSchemaResource Resource = "SrvVSchema" + /* schema resources */ + + SchemaResource Resource = "Schema" + SchemaMigrationResource Resource = "SchemaMigration" + /* misc resources */ BackupResource Resource = "Backup" - SchemaResource Resource = "Schema" ShardReplicationPositionResource Resource = "ShardReplicationPosition" WorkflowResource Resource = "Workflow" diff --git a/go/vt/vtadmin/testutil/authztestgen/config.json b/go/vt/vtadmin/testutil/authztestgen/config.json index 01b0da66465..eb229625d3b 100644 --- a/go/vt/vtadmin/testutil/authztestgen/config.json +++ b/go/vt/vtadmin/testutil/authztestgen/config.json @@ -5,6 +5,26 @@ "id": "test", "name": "test", "vtctldclient_mock_data": [ + { + "field": "ApplySchemaResults", + "type": "map[string]struct{\nResponse *vtctldatapb.ApplySchemaResponse\nError error}", + "value": "\"test\": {\nResponse: &vtctldatapb.ApplySchemaResponse{},\n}," + }, + { + "field": "CancelSchemaMigrationResults", + "type": "map[string]struct{\nResponse *vtctldatapb.CancelSchemaMigrationResponse\nError error}", + "value": "\"test\": {\nResponse: &vtctldatapb.CancelSchemaMigrationResponse{},\n}," + }, + { + "field": "CleanupSchemaMigrationResults", + "type": "map[string]struct{\nResponse *vtctldatapb.CleanupSchemaMigrationResponse\nError error}", + "value": "\"test\": {\nResponse: &vtctldatapb.CleanupSchemaMigrationResponse{},\n}," + }, + { + "field": "CompleteSchemaMigrationResults", + "type": "map[string]struct{\nResponse *vtctldatapb.CompleteSchemaMigrationResponse\nError error}", + "value": "\"test\": {\nResponse: &vtctldatapb.CompleteSchemaMigrationResponse{},\n}," + }, { "field": "DeleteShardsResults", "type": "map[string]error", @@ -50,6 +70,11 @@ "type": "&struct{\nKeyspaces []*vtctldatapb.Keyspace\nError error}", "value": "Keyspaces: []*vtctldatapb.Keyspace{\n{\nName: \"test\",\nKeyspace: &topodatapb.Keyspace{},\n},\n}," }, + { + "field": "GetSchemaMigrationsResults", + "type": "map[string]struct{\nResponse *vtctldatapb.GetSchemaMigrationsResponse\nError error}", + "value": "\"test\": {\nResponse: &vtctldatapb.GetSchemaMigrationsResponse{\nMigrations: []*vtctldatapb.SchemaMigration{\n{},\n},\n},\n}," + }, { "field": "GetSchemaResults", "type": "map[string]struct{\nResponse *vtctldatapb.GetSchemaResponse\nError error}", @@ -71,6 +96,11 @@ "type": "map[string]struct{\nResponse *vtctldatapb.GetWorkflowsResponse\nError error}", "value": "\"test\": {\nResponse: &vtctldatapb.GetWorkflowsResponse{\nWorkflows: []*vtctldatapb.Workflow{\n{\nName: \"testworkflow\",\n},\n},\n}}," }, + { + "field": "LaunchSchemaMigrationResults", + "type": "map[string]struct{\nResponse *vtctldatapb.LaunchSchemaMigrationResponse\nError error}", + "value": "\"test\": {\nResponse: &vtctldatapb.LaunchSchemaMigrationResponse{},\n}," + }, { "field": "PingTabletResults", "type": "map[string]error", @@ -96,6 +126,11 @@ "type": "map[string]struct{\nResponse *vtctldatapb.ReparentTabletResponse\nError error\n}", "value": "\"zone1-0000000100\": {\nResponse: &vtctldatapb.ReparentTabletResponse{},\n}," }, + { + "field": "RetrySchemaMigrationResults", + "type": "map[string]struct{\nResponse *vtctldatapb.RetrySchemaMigrationResponse\nError error}", + "value": "\"test\": {\nResponse: &vtctldatapb.RetrySchemaMigrationResponse{},\n}," + }, { "field": "RunHealthCheckResults", "type": "map[string]error", @@ -182,6 +217,11 @@ "type": "&struct{\nKeyspaces []*vtctldatapb.Keyspace\nError error}", "value": "Keyspaces: []*vtctldatapb.Keyspace{\n{\nName: \"otherks\",\nKeyspace: &topodatapb.Keyspace{},\n},\n}," }, + { + "field": "GetSchemaMigrationsResults", + "type": "map[string]struct{\nResponse *vtctldatapb.GetSchemaMigrationsResponse\nError error}", + "value": "\"otherks\": {\nResponse: &vtctldatapb.GetSchemaMigrationsResponse{\nMigrations: []*vtctldatapb.SchemaMigration{\n{}, {}, {},\n},\n},\n}," + }, { "field": "GetSchemaResults", "type": "map[string]struct{\nResponse *vtctldatapb.GetSchemaResponse\nError error}", @@ -225,6 +265,138 @@ } ], "tests": [ + { + "method": "ApplySchema", + "rules": [ + { + "resource": "SchemaMigration", + "actions": ["create"], + "subjects": ["user:allowed"], + "clusters": ["*"] + } + ], + "request": "&vtadminpb.ApplySchemaRequest{\nClusterId: \"test\",\nRequest: &vtctldatapb.ApplySchemaRequest{\nKeyspace: \"test\",\n},\n}", + "cases": [ + { + "name": "unauthorized actor", + "actor": {"name": "other"}, + "include_error_var": true, + "assertions": [ + "assert.Error(t, err, $$)", + "assert.Nil(t, resp, $$)" + ] + }, + { + "name": "authorized actor", + "actor": {"name": "allowed"}, + "include_error_var": true, + "is_permitted": true, + "assertions": [ + "require.NoError(t, err)", + "assert.NotNil(t, resp, $$)" + ] + } + ] + }, + { + "method": "CancelSchemaMigration", + "rules": [ + { + "resource": "SchemaMigration", + "actions": ["cancel"], + "subjects": ["user:allowed"], + "clusters": ["*"] + } + ], + "request": "&vtadminpb.CancelSchemaMigrationRequest{\nClusterId: \"test\",\nRequest: &vtctldatapb.CancelSchemaMigrationRequest{\nKeyspace: \"test\",\n},\n}", + "cases": [ + { + "name": "unauthorized actor", + "actor": {"name": "other"}, + "include_error_var": true, + "assertions": [ + "assert.Error(t, err, $$)", + "assert.Nil(t, resp, $$)" + ] + }, + { + "name": "authorized actor", + "actor": {"name": "allowed"}, + "include_error_var": true, + "is_permitted": true, + "assertions": [ + "require.NoError(t, err)", + "assert.NotNil(t, resp, $$)" + ] + } + ] + }, + { + "method": "CleanupSchemaMigration", + "rules": [ + { + "resource": "SchemaMigration", + "actions": ["cleanup_schema_migration"], + "subjects": ["user:allowed"], + "clusters": ["*"] + } + ], + "request": "&vtadminpb.CleanupSchemaMigrationRequest{\nClusterId: \"test\",\nRequest: &vtctldatapb.CleanupSchemaMigrationRequest{\nKeyspace: \"test\",\n},\n}", + "cases": [ + { + "name": "unauthorized actor", + "actor": {"name": "other"}, + "include_error_var": true, + "assertions": [ + "assert.Error(t, err, $$)", + "assert.Nil(t, resp, $$)" + ] + }, + { + "name": "authorized actor", + "actor": {"name": "allowed"}, + "include_error_var": true, + "is_permitted": true, + "assertions": [ + "require.NoError(t, err)", + "assert.NotNil(t, resp, $$)" + ] + } + ] + }, + { + "method": "CompleteSchemaMigration", + "rules": [ + { + "resource": "SchemaMigration", + "actions": ["complete_schema_migration"], + "subjects": ["user:allowed"], + "clusters": ["*"] + } + ], + "request": "&vtadminpb.CompleteSchemaMigrationRequest{\nClusterId: \"test\",\nRequest: &vtctldatapb.CompleteSchemaMigrationRequest{\nKeyspace: \"test\",\n},\n}", + "cases": [ + { + "name": "unauthorized actor", + "actor": {"name": "other"}, + "include_error_var": true, + "assertions": [ + "assert.Error(t, err, $$)", + "assert.Nil(t, resp, $$)" + ] + }, + { + "name": "authorized actor", + "actor": {"name": "allowed"}, + "include_error_var": true, + "is_permitted": true, + "assertions": [ + "require.NoError(t, err)", + "assert.NotNil(t, resp, $$)" + ] + } + ] + }, { "method": "CreateKeyspace", "rules": [ @@ -798,6 +970,54 @@ } ] }, + { + "method": "GetSchemaMigrations", + "rules": [ + { + "resource": "SchemaMigration", + "actions": ["get"], + "subjects": ["user:allowed-all"], + "clusters": ["*"] + }, + { + "resource": "SchemaMigration", + "actions": ["get"], + "subjects": ["user:allowed-other"], + "clusters": ["other"] + } + ], + "request": "&vtadminpb.GetSchemaMigrationsRequest{}", + "cases": [ + { + "name": "unauthorized actor", + "actor": {"name": "unauthorized"}, + "is_permitted": false, + "include_error_var": true, + "assertions": [ + "assert.NoError(t, err)", + "assert.Empty(t, resp.SchemaMigrations, $$)" + ] + }, + { + "name": "partial access", + "actor": {"name": "allowed-other"}, + "is_permitted": true, + "assertions": [ + "assert.NotEmpty(t, resp.SchemaMigrations, $$)", + "assert.Len(t, resp.SchemaMigrations, 3, \"'other' actor should be able to see the 3 migrations in cluster 'other'\")" + ] + }, + { + "name": "full access", + "actor": {"name": "allowed-all"}, + "is_permitted": true, + "assertions": [ + "assert.NotEmpty(t, resp.SchemaMigrations, $$)", + "assert.Len(t, resp.SchemaMigrations, 4, \"'all' actor should be able to see migrations in all clusters\")" + ] + } + ] + }, { "method": "GetSchema", "rules": [ @@ -1350,6 +1570,39 @@ } ] }, + { + "method": "LaunchSchemaMigration", + "rules": [ + { + "resource": "SchemaMigration", + "actions": ["launch_schema_migration"], + "subjects": ["user:allowed"], + "clusters": ["*"] + } + ], + "request": "&vtadminpb.LaunchSchemaMigrationRequest{\nClusterId: \"test\",\nRequest: &vtctldatapb.LaunchSchemaMigrationRequest{\nKeyspace: \"test\",\n},\n}", + "cases": [ + { + "name": "unauthorized actor", + "actor": {"name": "other"}, + "include_error_var": true, + "assertions": [ + "assert.Error(t, err, $$)", + "assert.Nil(t, resp, $$)" + ] + }, + { + "name": "authorized actor", + "actor": {"name": "allowed"}, + "include_error_var": true, + "is_permitted": true, + "assertions": [ + "require.NoError(t, err)", + "assert.NotNil(t, resp, $$)" + ] + } + ] + }, { "method": "PingTablet", "rules": [ @@ -1527,6 +1780,39 @@ } ] }, + { + "method": "RetrySchemaMigration", + "rules": [ + { + "resource": "SchemaMigration", + "actions": ["retry"], + "subjects": ["user:allowed"], + "clusters": ["*"] + } + ], + "request": "&vtadminpb.RetrySchemaMigrationRequest{\nClusterId: \"test\",\nRequest: &vtctldatapb.RetrySchemaMigrationRequest{\nKeyspace: \"test\",\n},\n}", + "cases": [ + { + "name": "unauthorized actor", + "actor": {"name": "other"}, + "include_error_var": true, + "assertions": [ + "assert.Error(t, err, $$)", + "assert.Nil(t, resp, $$)" + ] + }, + { + "name": "authorized actor", + "actor": {"name": "allowed"}, + "include_error_var": true, + "is_permitted": true, + "assertions": [ + "require.NoError(t, err)", + "assert.NotNil(t, resp, $$)" + ] + } + ] + }, { "method": "RunHealthCheck", "rules": [ diff --git a/go/vt/vtadmin/testutil/authztestgen/template.go b/go/vt/vtadmin/testutil/authztestgen/template.go index 4a829a54a61..1c96d7aeede 100644 --- a/go/vt/vtadmin/testutil/authztestgen/template.go +++ b/go/vt/vtadmin/testutil/authztestgen/template.go @@ -165,7 +165,7 @@ func testClusters(t testing.TB) []*cluster.Cluster { Config: &cluster.Config{ TopoReadPoolConfig: &cluster.RPCPoolConfig{ Size: 100, - WaitTimeout: time.Millisecond * 50, + WaitTimeout: time.Millisecond * 500, }, }, }, diff --git a/go/vt/vtadmin/vtctldclient/fakevtctldclient/vtctldclient.go b/go/vt/vtadmin/vtctldclient/fakevtctldclient/vtctldclient.go index c81aef0ef99..428d38fc8e0 100644 --- a/go/vt/vtadmin/vtctldclient/fakevtctldclient/vtctldclient.go +++ b/go/vt/vtadmin/vtctldclient/fakevtctldclient/vtctldclient.go @@ -38,6 +38,22 @@ import ( type VtctldClient struct { vtctldclient.VtctldClient + ApplySchemaResults map[string]struct { + Response *vtctldatapb.ApplySchemaResponse + Error error + } + CancelSchemaMigrationResults map[string]struct { + Response *vtctldatapb.CancelSchemaMigrationResponse + Error error + } + CleanupSchemaMigrationResults map[string]struct { + Response *vtctldatapb.CleanupSchemaMigrationResponse + Error error + } + CompleteSchemaMigrationResults map[string]struct { + Response *vtctldatapb.CompleteSchemaMigrationResponse + Error error + } CreateKeyspaceShouldErr bool CreateShardShouldErr bool DeleteKeyspaceShouldErr bool @@ -77,6 +93,10 @@ type VtctldClient struct { Keyspaces []*vtctldatapb.Keyspace Error error } + GetSchemaMigrationsResults map[string]struct { + Response *vtctldatapb.GetSchemaMigrationsResponse + Error error + } GetSchemaResults map[string]struct { Response *vtctldatapb.GetSchemaResponse Error error @@ -93,6 +113,10 @@ type VtctldClient struct { Response *vtctldatapb.GetWorkflowsResponse Error error } + LaunchSchemaMigrationResults map[string]struct { + Response *vtctldatapb.LaunchSchemaMigrationResponse + Error error + } PingTabletResults map[string]error PlannedReparentShardResults map[string]struct { Response *vtctldatapb.PlannedReparentShardResponse @@ -115,6 +139,10 @@ type VtctldClient struct { Response *vtctldatapb.ReparentTabletResponse Error error } + RetrySchemaMigrationResults map[string]struct { + Response *vtctldatapb.RetrySchemaMigrationResponse + Error error + } RunHealthCheckResults map[string]error SetWritableResults map[string]error ShardReplicationPositionsResults map[string]struct { @@ -152,6 +180,66 @@ var _ vtctldclient.VtctldClient = (*VtctldClient)(nil) // Close is part of the vtctldclient.VtctldClient interface. func (fake *VtctldClient) Close() error { return nil } +// ApplySchema is part of the vtctldclient.VtctldClient interface. +func (fake *VtctldClient) ApplySchema(ctx context.Context, req *vtctldatapb.ApplySchemaRequest, opts ...grpc.CallOption) (*vtctldatapb.ApplySchemaResponse, error) { + if fake.ApplySchemaResults == nil { + return nil, fmt.Errorf("%w: ApplySchemaResults not set on fake vtctldclient", assert.AnError) + } + + key := req.Keyspace + + if resp, ok := fake.ApplySchemaResults[key]; ok { + return resp.Response, resp.Error + } + + return nil, fmt.Errorf("%w: no result set for %s", assert.AnError, key) +} + +// CancelSchemaMigration is part of the vtctldclient.VtctldClient interface. +func (fake *VtctldClient) CancelSchemaMigration(ctx context.Context, req *vtctldatapb.CancelSchemaMigrationRequest, opts ...grpc.CallOption) (*vtctldatapb.CancelSchemaMigrationResponse, error) { + if fake.CancelSchemaMigrationResults == nil { + return nil, fmt.Errorf("%w: CancelSchemaMigrationResults not set on fake vtctldclient", assert.AnError) + } + + key := req.Keyspace + + if resp, ok := fake.CancelSchemaMigrationResults[key]; ok { + return resp.Response, resp.Error + } + + return nil, fmt.Errorf("%w: no result set for %s", assert.AnError, key) +} + +// CleanupSchemaMigration is part of the vtctldclient.VtctldClient interface. +func (fake *VtctldClient) CleanupSchemaMigration(ctx context.Context, req *vtctldatapb.CleanupSchemaMigrationRequest, opts ...grpc.CallOption) (*vtctldatapb.CleanupSchemaMigrationResponse, error) { + if fake.CleanupSchemaMigrationResults == nil { + return nil, fmt.Errorf("%w: CleanupSchemaMigrationResults not set on fake vtctldclient", assert.AnError) + } + + key := req.Keyspace + + if resp, ok := fake.CleanupSchemaMigrationResults[key]; ok { + return resp.Response, resp.Error + } + + return nil, fmt.Errorf("%w: no result set for %s", assert.AnError, key) +} + +// CompleteSchemaMigration is part of the vtctldclient.VtctldClient interface. +func (fake *VtctldClient) CompleteSchemaMigration(ctx context.Context, req *vtctldatapb.CompleteSchemaMigrationRequest, opts ...grpc.CallOption) (*vtctldatapb.CompleteSchemaMigrationResponse, error) { + if fake.CompleteSchemaMigrationResults == nil { + return nil, fmt.Errorf("%w: CompleteSchemaMigrationResults not set on fake vtctldclient", assert.AnError) + } + + key := req.Keyspace + + if resp, ok := fake.CompleteSchemaMigrationResults[key]; ok { + return resp.Response, resp.Error + } + + return nil, fmt.Errorf("%w: no result set for %s", assert.AnError, key) +} + // CreateKeyspace is part of the vtctldclient.VtctldClient interface. func (fake *VtctldClient) CreateKeyspace(ctx context.Context, req *vtctldatapb.CreateKeyspaceRequest, opts ...grpc.CallOption) (*vtctldatapb.CreateKeyspaceResponse, error) { if fake.CreateKeyspaceShouldErr { @@ -345,6 +433,20 @@ func (fake *VtctldClient) GetKeyspaces(ctx context.Context, req *vtctldatapb.Get }, nil } +// GetSchemaMigrations is part of the vtctldclient.VtctldClient interface. +func (fake *VtctldClient) GetSchemaMigrations(ctx context.Context, req *vtctldatapb.GetSchemaMigrationsRequest, opts ...grpc.CallOption) (*vtctldatapb.GetSchemaMigrationsResponse, error) { + if fake.GetSchemaMigrationsResults == nil { + return nil, fmt.Errorf("%w: GetSchemaMigrationsResults not set on fake vtctldclient", assert.AnError) + } + + key := req.Keyspace + if result, ok := fake.GetSchemaMigrationsResults[key]; ok { + return result.Response, result.Error + } + + return nil, fmt.Errorf("%w: no result set for %s", assert.AnError, key) +} + // GetSchema is part of the vtctldclient.VtctldClient interface. func (fake *VtctldClient) GetSchema(ctx context.Context, req *vtctldatapb.GetSchemaRequest, opts ...grpc.CallOption) (*vtctldatapb.GetSchemaResponse, error) { if fake.GetSchemaResults == nil { @@ -428,6 +530,21 @@ func (fake *VtctldClient) GetWorkflows(ctx context.Context, req *vtctldatapb.Get return nil, fmt.Errorf("%w: no result set for keyspace %s", assert.AnError, req.Keyspace) } +// LaunchSchemaMigration is part of the vtctldclient.VtctldClient interface. +func (fake *VtctldClient) LaunchSchemaMigration(ctx context.Context, req *vtctldatapb.LaunchSchemaMigrationRequest, opts ...grpc.CallOption) (*vtctldatapb.LaunchSchemaMigrationResponse, error) { + if fake.LaunchSchemaMigrationResults == nil { + return nil, fmt.Errorf("%w: LaunchSchemaMigrationResults not set on fake vtctldclient", assert.AnError) + } + + key := req.Keyspace + + if resp, ok := fake.LaunchSchemaMigrationResults[key]; ok { + return resp.Response, resp.Error + } + + return nil, fmt.Errorf("%w: no result set for %s", assert.AnError, key) +} + // PingTablet is part of the vtctldclient.VtctldClient interface. func (fake *VtctldClient) PingTablet(ctx context.Context, req *vtctldatapb.PingTabletRequest, opts ...grpc.CallOption) (*vtctldatapb.PingTabletResponse, error) { if fake.PingTabletResults == nil { @@ -533,6 +650,21 @@ func (fake *VtctldClient) ReparentTablet(ctx context.Context, req *vtctldatapb.R return nil, fmt.Errorf("%w: no result set for %s", assert.AnError, key) } +// RetrySchemaMigration is part of the vtctldclient.VtctldClient interface. +func (fake *VtctldClient) RetrySchemaMigration(ctx context.Context, req *vtctldatapb.RetrySchemaMigrationRequest, opts ...grpc.CallOption) (*vtctldatapb.RetrySchemaMigrationResponse, error) { + if fake.RetrySchemaMigrationResults == nil { + return nil, fmt.Errorf("%w: RetrySchemaMigrationResults not set on fake vtctldclient", assert.AnError) + } + + key := req.Keyspace + + if resp, ok := fake.RetrySchemaMigrationResults[key]; ok { + return resp.Response, resp.Error + } + + return nil, fmt.Errorf("%w: no result set for %s", assert.AnError, key) +} + // RunHealthCheck is part of the vtctldclient.VtctldClient interface. func (fake *VtctldClient) RunHealthCheck(ctx context.Context, req *vtctldatapb.RunHealthCheckRequest, opts ...grpc.CallOption) (*vtctldatapb.RunHealthCheckResponse, error) { if fake.RunHealthCheckResults == nil { diff --git a/proto/vtadmin.proto b/proto/vtadmin.proto index ee37edd40d7..d6f1047fc1e 100644 --- a/proto/vtadmin.proto +++ b/proto/vtadmin.proto @@ -33,6 +33,17 @@ import "vtctldata.proto"; // VTAdmin is the Vitess Admin API service. It provides RPCs that operate on // across a range of Vitess clusters. service VTAdmin { + // ApplySchema applies a schema to a keyspace in the given cluster. + rpc ApplySchema(ApplySchemaRequest) returns (vtctldata.ApplySchemaResponse) {}; + // CancelSchemaMigration cancels one or all schema migrations in the given + // cluster, terminating any running ones as needed. + rpc CancelSchemaMigration(CancelSchemaMigrationRequest) returns (vtctldata.CancelSchemaMigrationResponse) {}; + // CleanupSchemaMigration marks a schema migration in the given cluster as + // ready for artifact cleanup. + rpc CleanupSchemaMigration(CleanupSchemaMigrationRequest) returns (vtctldata.CleanupSchemaMigrationResponse) {}; + // CompleteSchemaMigration completes one or all migrations in the given + // cluster executed with --postpone-completion. + rpc CompleteSchemaMigration(CompleteSchemaMigrationRequest) returns (vtctldata.CompleteSchemaMigrationResponse) {}; // CreateKeyspace creates a new keyspace in the given cluster. rpc CreateKeyspace(CreateKeyspaceRequest) returns (CreateKeyspaceResponse) {}; // CreateShard creates a new shard in the given cluster and keyspace. @@ -77,6 +88,13 @@ service VTAdmin { rpc GetSchema(GetSchemaRequest) returns (Schema) {}; // GetSchemas returns all schemas across the specified clusters. rpc GetSchemas(GetSchemasRequest) returns (GetSchemasResponse) {}; + // GetSchemaMigrations returns one or more online schema migrations for the + // set of keyspaces (or all keyspaces) in the given clusters, analagous to + // repeated executions of `SHOW VITESS_MIGRATIONS`. + // + // Different fields in the request message result in different behaviors. + // See the documentation on vtctldata.GetSchemaMigrationsRequest for details. + rpc GetSchemaMigrations(GetSchemaMigrationsRequest) returns (GetSchemaMigrationsResponse) {}; // GetShardReplicationPositions returns shard replication positions grouped // by cluster. rpc GetShardReplicationPositions(GetShardReplicationPositionsRequest) returns (GetShardReplicationPositionsResponse) {}; @@ -108,6 +126,9 @@ service VTAdmin { rpc GetWorkflow(GetWorkflowRequest) returns (Workflow) {}; // GetWorkflows returns the Workflows for all specified clusters. rpc GetWorkflows(GetWorkflowsRequest) returns (GetWorkflowsResponse) {}; + // LaunchSchemaMigration launches one or all migrations in the given + // cluster executed with --postpone-launch. + rpc LaunchSchemaMigration(LaunchSchemaMigrationRequest) returns (vtctldata.LaunchSchemaMigrationResponse) {}; // PingTablet checks that the specified tablet is awake and responding to // RPCs. This command can be blocked by other in-flight operations. rpc PingTablet(PingTabletRequest) returns (PingTabletResponse) {}; @@ -134,6 +155,9 @@ service VTAdmin { rpc ReloadSchemaShard(ReloadSchemaShardRequest) returns (ReloadSchemaShardResponse) {}; // RemoveKeyspaceCell removes the cell from the Cells list for all shards in the keyspace, and the SrvKeyspace for that keyspace in that cell. rpc RemoveKeyspaceCell(RemoveKeyspaceCellRequest) returns (RemoveKeyspaceCellResponse) {}; + // RetrySchemaMigration marks a given schema migration in the given cluster + // for retry. + rpc RetrySchemaMigration(RetrySchemaMigrationRequest) returns (vtctldata.RetrySchemaMigrationResponse) {}; // RunHealthCheck runs a healthcheck on the tablet. rpc RunHealthCheck(RunHealthCheckRequest) returns (RunHealthCheckResponse) {}; // SetReadOnly sets the tablet to read-only mode. @@ -249,6 +273,11 @@ message Schema { } } +message SchemaMigration { + Cluster cluster = 1; + vtctldata.SchemaMigration schema_migration = 2; +} + // Shard groups the vtctldata information about a shard record together with // the Vitess cluster it belongs to. message Shard { @@ -318,6 +347,26 @@ message Workflow { /* Request/Response types */ +message ApplySchemaRequest { + string cluster_id = 1; + vtctldata.ApplySchemaRequest request = 2; +} + +message CancelSchemaMigrationRequest { + string cluster_id = 1; + vtctldata.CancelSchemaMigrationRequest request = 2; +} + +message CleanupSchemaMigrationRequest { + string cluster_id = 1; + vtctldata.CleanupSchemaMigrationRequest request = 2; +} + +message CompleteSchemaMigrationRequest { + string cluster_id = 1; + vtctldata.CompleteSchemaMigrationRequest request = 2; +} + message CreateKeyspaceRequest { string cluster_id = 1; vtctldata.CreateKeyspaceRequest options = 2; @@ -472,6 +521,19 @@ message GetSchemasResponse { repeated Schema schemas = 1; } +message GetSchemaMigrationsRequest { + repeated ClusterRequest cluster_requests = 1; + + message ClusterRequest { + string cluster_id = 1; + vtctldata.GetSchemaMigrationsRequest request = 2; + } +} + +message GetSchemaMigrationsResponse { + repeated SchemaMigration schema_migrations = 1; +} + message GetShardReplicationPositionsRequest { repeated string cluster_ids = 1; // Keyspaces, if set, limits replication positions to just the specified @@ -605,6 +667,11 @@ message GetWorkflowsResponse { map workflows_by_cluster = 1; } +message LaunchSchemaMigrationRequest { + string cluster_id = 1; + vtctldata.LaunchSchemaMigrationRequest request = 2; +} + message PingTabletRequest { // Unique (per cluster) tablet alias of the standard form: "$cell-$uid" topodata.TabletAlias alias = 1; @@ -788,6 +855,11 @@ message RemoveKeyspaceCellResponse { string status = 1; } +message RetrySchemaMigrationRequest { + string cluster_id = 1; + vtctldata.RetrySchemaMigrationRequest request = 2; +} + message RunHealthCheckRequest { topodata.TabletAlias alias = 1; repeated string cluster_ids = 2; diff --git a/proto/vtctlservice.proto b/proto/vtctlservice.proto index 56bd30e540e..3ce89af2995 100644 --- a/proto/vtctlservice.proto +++ b/proto/vtctlservice.proto @@ -54,7 +54,7 @@ service Vtctld { rpc Backup(vtctldata.BackupRequest) returns (stream vtctldata.BackupResponse) {}; // BackupShard chooses a tablet in the shard and uses it to create a backup. rpc BackupShard(vtctldata.BackupShardRequest) returns (stream vtctldata.BackupResponse) {}; - // CancelSchemaMigration cancels one or all migrations, terminating any runnign ones as needed. + // CancelSchemaMigration cancels one or all migrations, terminating any running ones as needed. rpc CancelSchemaMigration(vtctldata.CancelSchemaMigrationRequest) returns (vtctldata.CancelSchemaMigrationResponse) {}; // ChangeTabletType changes the db type for the specified tablet, if possible. // This is used primarily to arrange replicas, and it will not convert a diff --git a/web/vtadmin/src/proto/vtadmin.d.ts b/web/vtadmin/src/proto/vtadmin.d.ts index cf7c5a0d184..03f7bbcbcd8 100644 --- a/web/vtadmin/src/proto/vtadmin.d.ts +++ b/web/vtadmin/src/proto/vtadmin.d.ts @@ -23,6 +23,62 @@ export namespace vtadmin { */ public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): VTAdmin; + /** + * Calls ApplySchema. + * @param request ApplySchemaRequest message or plain object + * @param callback Node-style callback called with the error, if any, and ApplySchemaResponse + */ + public applySchema(request: vtadmin.IApplySchemaRequest, callback: vtadmin.VTAdmin.ApplySchemaCallback): void; + + /** + * Calls ApplySchema. + * @param request ApplySchemaRequest message or plain object + * @returns Promise + */ + public applySchema(request: vtadmin.IApplySchemaRequest): Promise; + + /** + * Calls CancelSchemaMigration. + * @param request CancelSchemaMigrationRequest message or plain object + * @param callback Node-style callback called with the error, if any, and CancelSchemaMigrationResponse + */ + public cancelSchemaMigration(request: vtadmin.ICancelSchemaMigrationRequest, callback: vtadmin.VTAdmin.CancelSchemaMigrationCallback): void; + + /** + * Calls CancelSchemaMigration. + * @param request CancelSchemaMigrationRequest message or plain object + * @returns Promise + */ + public cancelSchemaMigration(request: vtadmin.ICancelSchemaMigrationRequest): Promise; + + /** + * Calls CleanupSchemaMigration. + * @param request CleanupSchemaMigrationRequest message or plain object + * @param callback Node-style callback called with the error, if any, and CleanupSchemaMigrationResponse + */ + public cleanupSchemaMigration(request: vtadmin.ICleanupSchemaMigrationRequest, callback: vtadmin.VTAdmin.CleanupSchemaMigrationCallback): void; + + /** + * Calls CleanupSchemaMigration. + * @param request CleanupSchemaMigrationRequest message or plain object + * @returns Promise + */ + public cleanupSchemaMigration(request: vtadmin.ICleanupSchemaMigrationRequest): Promise; + + /** + * Calls CompleteSchemaMigration. + * @param request CompleteSchemaMigrationRequest message or plain object + * @param callback Node-style callback called with the error, if any, and CompleteSchemaMigrationResponse + */ + public completeSchemaMigration(request: vtadmin.ICompleteSchemaMigrationRequest, callback: vtadmin.VTAdmin.CompleteSchemaMigrationCallback): void; + + /** + * Calls CompleteSchemaMigration. + * @param request CompleteSchemaMigrationRequest message or plain object + * @returns Promise + */ + public completeSchemaMigration(request: vtadmin.ICompleteSchemaMigrationRequest): Promise; + /** * Calls CreateKeyspace. * @param request CreateKeyspaceRequest message or plain object @@ -261,6 +317,20 @@ export namespace vtadmin { */ public getSchemas(request: vtadmin.IGetSchemasRequest): Promise; + /** + * Calls GetSchemaMigrations. + * @param request GetSchemaMigrationsRequest message or plain object + * @param callback Node-style callback called with the error, if any, and GetSchemaMigrationsResponse + */ + public getSchemaMigrations(request: vtadmin.IGetSchemaMigrationsRequest, callback: vtadmin.VTAdmin.GetSchemaMigrationsCallback): void; + + /** + * Calls GetSchemaMigrations. + * @param request GetSchemaMigrationsRequest message or plain object + * @returns Promise + */ + public getSchemaMigrations(request: vtadmin.IGetSchemaMigrationsRequest): Promise; + /** * Calls GetShardReplicationPositions. * @param request GetShardReplicationPositionsRequest message or plain object @@ -443,6 +513,20 @@ export namespace vtadmin { */ public getWorkflows(request: vtadmin.IGetWorkflowsRequest): Promise; + /** + * Calls LaunchSchemaMigration. + * @param request LaunchSchemaMigrationRequest message or plain object + * @param callback Node-style callback called with the error, if any, and LaunchSchemaMigrationResponse + */ + public launchSchemaMigration(request: vtadmin.ILaunchSchemaMigrationRequest, callback: vtadmin.VTAdmin.LaunchSchemaMigrationCallback): void; + + /** + * Calls LaunchSchemaMigration. + * @param request LaunchSchemaMigrationRequest message or plain object + * @returns Promise + */ + public launchSchemaMigration(request: vtadmin.ILaunchSchemaMigrationRequest): Promise; + /** * Calls PingTablet. * @param request PingTabletRequest message or plain object @@ -555,6 +639,20 @@ export namespace vtadmin { */ public removeKeyspaceCell(request: vtadmin.IRemoveKeyspaceCellRequest): Promise; + /** + * Calls RetrySchemaMigration. + * @param request RetrySchemaMigrationRequest message or plain object + * @param callback Node-style callback called with the error, if any, and RetrySchemaMigrationResponse + */ + public retrySchemaMigration(request: vtadmin.IRetrySchemaMigrationRequest, callback: vtadmin.VTAdmin.RetrySchemaMigrationCallback): void; + + /** + * Calls RetrySchemaMigration. + * @param request RetrySchemaMigrationRequest message or plain object + * @returns Promise + */ + public retrySchemaMigration(request: vtadmin.IRetrySchemaMigrationRequest): Promise; + /** * Calls RunHealthCheck. * @param request RunHealthCheckRequest message or plain object @@ -740,6 +838,34 @@ export namespace vtadmin { namespace VTAdmin { + /** + * Callback as used by {@link vtadmin.VTAdmin#applySchema}. + * @param error Error, if any + * @param [response] ApplySchemaResponse + */ + type ApplySchemaCallback = (error: (Error|null), response?: vtctldata.ApplySchemaResponse) => void; + + /** + * Callback as used by {@link vtadmin.VTAdmin#cancelSchemaMigration}. + * @param error Error, if any + * @param [response] CancelSchemaMigrationResponse + */ + type CancelSchemaMigrationCallback = (error: (Error|null), response?: vtctldata.CancelSchemaMigrationResponse) => void; + + /** + * Callback as used by {@link vtadmin.VTAdmin#cleanupSchemaMigration}. + * @param error Error, if any + * @param [response] CleanupSchemaMigrationResponse + */ + type CleanupSchemaMigrationCallback = (error: (Error|null), response?: vtctldata.CleanupSchemaMigrationResponse) => void; + + /** + * Callback as used by {@link vtadmin.VTAdmin#completeSchemaMigration}. + * @param error Error, if any + * @param [response] CompleteSchemaMigrationResponse + */ + type CompleteSchemaMigrationCallback = (error: (Error|null), response?: vtctldata.CompleteSchemaMigrationResponse) => void; + /** * Callback as used by {@link vtadmin.VTAdmin#createKeyspace}. * @param error Error, if any @@ -859,6 +985,13 @@ export namespace vtadmin { */ type GetSchemasCallback = (error: (Error|null), response?: vtadmin.GetSchemasResponse) => void; + /** + * Callback as used by {@link vtadmin.VTAdmin#getSchemaMigrations}. + * @param error Error, if any + * @param [response] GetSchemaMigrationsResponse + */ + type GetSchemaMigrationsCallback = (error: (Error|null), response?: vtadmin.GetSchemaMigrationsResponse) => void; + /** * Callback as used by {@link vtadmin.VTAdmin#getShardReplicationPositions}. * @param error Error, if any @@ -950,6 +1083,13 @@ export namespace vtadmin { */ type GetWorkflowsCallback = (error: (Error|null), response?: vtadmin.GetWorkflowsResponse) => void; + /** + * Callback as used by {@link vtadmin.VTAdmin#launchSchemaMigration}. + * @param error Error, if any + * @param [response] LaunchSchemaMigrationResponse + */ + type LaunchSchemaMigrationCallback = (error: (Error|null), response?: vtctldata.LaunchSchemaMigrationResponse) => void; + /** * Callback as used by {@link vtadmin.VTAdmin#pingTablet}. * @param error Error, if any @@ -1006,6 +1146,13 @@ export namespace vtadmin { */ type RemoveKeyspaceCellCallback = (error: (Error|null), response?: vtadmin.RemoveKeyspaceCellResponse) => void; + /** + * Callback as used by {@link vtadmin.VTAdmin#retrySchemaMigration}. + * @param error Error, if any + * @param [response] RetrySchemaMigrationResponse + */ + type RetrySchemaMigrationCallback = (error: (Error|null), response?: vtctldata.RetrySchemaMigrationResponse) => void; + /** * Callback as used by {@link vtadmin.VTAdmin#runHealthCheck}. * @param error Error, if any @@ -2173,6 +2320,109 @@ export namespace vtadmin { } } + /** Properties of a SchemaMigration. */ + interface ISchemaMigration { + + /** SchemaMigration cluster */ + cluster?: (vtadmin.ICluster|null); + + /** SchemaMigration schema_migration */ + schema_migration?: (vtctldata.ISchemaMigration|null); + } + + /** Represents a SchemaMigration. */ + class SchemaMigration implements ISchemaMigration { + + /** + * Constructs a new SchemaMigration. + * @param [properties] Properties to set + */ + constructor(properties?: vtadmin.ISchemaMigration); + + /** SchemaMigration cluster. */ + public cluster?: (vtadmin.ICluster|null); + + /** SchemaMigration schema_migration. */ + public schema_migration?: (vtctldata.ISchemaMigration|null); + + /** + * Creates a new SchemaMigration instance using the specified properties. + * @param [properties] Properties to set + * @returns SchemaMigration instance + */ + public static create(properties?: vtadmin.ISchemaMigration): vtadmin.SchemaMigration; + + /** + * Encodes the specified SchemaMigration message. Does not implicitly {@link vtadmin.SchemaMigration.verify|verify} messages. + * @param message SchemaMigration message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: vtadmin.ISchemaMigration, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified SchemaMigration message, length delimited. Does not implicitly {@link vtadmin.SchemaMigration.verify|verify} messages. + * @param message SchemaMigration message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: vtadmin.ISchemaMigration, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a SchemaMigration message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns SchemaMigration + * @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): vtadmin.SchemaMigration; + + /** + * Decodes a SchemaMigration message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns SchemaMigration + * @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)): vtadmin.SchemaMigration; + + /** + * Verifies a SchemaMigration 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 SchemaMigration message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns SchemaMigration + */ + public static fromObject(object: { [k: string]: any }): vtadmin.SchemaMigration; + + /** + * Creates a plain object from a SchemaMigration message. Also converts values to other types if specified. + * @param message SchemaMigration + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: vtadmin.SchemaMigration, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this SchemaMigration to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for SchemaMigration + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + /** Properties of a Shard. */ interface IShard { @@ -2964,156 +3214,568 @@ export namespace vtadmin { public static getTypeUrl(typeUrlPrefix?: string): string; } - /** Properties of a CreateKeyspaceRequest. */ - interface ICreateKeyspaceRequest { + /** Properties of an ApplySchemaRequest. */ + interface IApplySchemaRequest { - /** CreateKeyspaceRequest cluster_id */ + /** ApplySchemaRequest cluster_id */ cluster_id?: (string|null); - /** CreateKeyspaceRequest options */ - options?: (vtctldata.ICreateKeyspaceRequest|null); + /** ApplySchemaRequest request */ + request?: (vtctldata.IApplySchemaRequest|null); } - /** Represents a CreateKeyspaceRequest. */ - class CreateKeyspaceRequest implements ICreateKeyspaceRequest { + /** Represents an ApplySchemaRequest. */ + class ApplySchemaRequest implements IApplySchemaRequest { /** - * Constructs a new CreateKeyspaceRequest. + * Constructs a new ApplySchemaRequest. * @param [properties] Properties to set */ - constructor(properties?: vtadmin.ICreateKeyspaceRequest); + constructor(properties?: vtadmin.IApplySchemaRequest); - /** CreateKeyspaceRequest cluster_id. */ + /** ApplySchemaRequest cluster_id. */ public cluster_id: string; - /** CreateKeyspaceRequest options. */ - public options?: (vtctldata.ICreateKeyspaceRequest|null); + /** ApplySchemaRequest request. */ + public request?: (vtctldata.IApplySchemaRequest|null); /** - * Creates a new CreateKeyspaceRequest instance using the specified properties. + * Creates a new ApplySchemaRequest instance using the specified properties. * @param [properties] Properties to set - * @returns CreateKeyspaceRequest instance + * @returns ApplySchemaRequest instance */ - public static create(properties?: vtadmin.ICreateKeyspaceRequest): vtadmin.CreateKeyspaceRequest; + public static create(properties?: vtadmin.IApplySchemaRequest): vtadmin.ApplySchemaRequest; /** - * Encodes the specified CreateKeyspaceRequest message. Does not implicitly {@link vtadmin.CreateKeyspaceRequest.verify|verify} messages. - * @param message CreateKeyspaceRequest message or plain object to encode + * Encodes the specified ApplySchemaRequest message. Does not implicitly {@link vtadmin.ApplySchemaRequest.verify|verify} messages. + * @param message ApplySchemaRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: vtadmin.ICreateKeyspaceRequest, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: vtadmin.IApplySchemaRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Encodes the specified CreateKeyspaceRequest message, length delimited. Does not implicitly {@link vtadmin.CreateKeyspaceRequest.verify|verify} messages. - * @param message CreateKeyspaceRequest message or plain object to encode + * Encodes the specified ApplySchemaRequest message, length delimited. Does not implicitly {@link vtadmin.ApplySchemaRequest.verify|verify} messages. + * @param message ApplySchemaRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: vtadmin.ICreateKeyspaceRequest, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: vtadmin.IApplySchemaRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a CreateKeyspaceRequest message from the specified reader or buffer. + * Decodes an ApplySchemaRequest message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns CreateKeyspaceRequest + * @returns ApplySchemaRequest * @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): vtadmin.CreateKeyspaceRequest; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): vtadmin.ApplySchemaRequest; /** - * Decodes a CreateKeyspaceRequest message from the specified reader or buffer, length delimited. + * Decodes an ApplySchemaRequest message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns CreateKeyspaceRequest + * @returns ApplySchemaRequest * @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)): vtadmin.CreateKeyspaceRequest; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): vtadmin.ApplySchemaRequest; /** - * Verifies a CreateKeyspaceRequest message. + * Verifies an ApplySchemaRequest 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 CreateKeyspaceRequest message from a plain object. Also converts values to their respective internal types. + * Creates an ApplySchemaRequest message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns CreateKeyspaceRequest + * @returns ApplySchemaRequest */ - public static fromObject(object: { [k: string]: any }): vtadmin.CreateKeyspaceRequest; + public static fromObject(object: { [k: string]: any }): vtadmin.ApplySchemaRequest; /** - * Creates a plain object from a CreateKeyspaceRequest message. Also converts values to other types if specified. - * @param message CreateKeyspaceRequest + * Creates a plain object from an ApplySchemaRequest message. Also converts values to other types if specified. + * @param message ApplySchemaRequest * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: vtadmin.CreateKeyspaceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: vtadmin.ApplySchemaRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this CreateKeyspaceRequest to JSON. + * Converts this ApplySchemaRequest to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** - * Gets the default type url for CreateKeyspaceRequest + * Gets the default type url for ApplySchemaRequest * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } - /** Properties of a CreateKeyspaceResponse. */ - interface ICreateKeyspaceResponse { + /** Properties of a CancelSchemaMigrationRequest. */ + interface ICancelSchemaMigrationRequest { - /** CreateKeyspaceResponse keyspace */ - keyspace?: (vtadmin.IKeyspace|null); + /** CancelSchemaMigrationRequest cluster_id */ + cluster_id?: (string|null); + + /** CancelSchemaMigrationRequest request */ + request?: (vtctldata.ICancelSchemaMigrationRequest|null); } - /** Represents a CreateKeyspaceResponse. */ - class CreateKeyspaceResponse implements ICreateKeyspaceResponse { + /** Represents a CancelSchemaMigrationRequest. */ + class CancelSchemaMigrationRequest implements ICancelSchemaMigrationRequest { /** - * Constructs a new CreateKeyspaceResponse. + * Constructs a new CancelSchemaMigrationRequest. * @param [properties] Properties to set */ - constructor(properties?: vtadmin.ICreateKeyspaceResponse); + constructor(properties?: vtadmin.ICancelSchemaMigrationRequest); - /** CreateKeyspaceResponse keyspace. */ - public keyspace?: (vtadmin.IKeyspace|null); + /** CancelSchemaMigrationRequest cluster_id. */ + public cluster_id: string; + + /** CancelSchemaMigrationRequest request. */ + public request?: (vtctldata.ICancelSchemaMigrationRequest|null); /** - * Creates a new CreateKeyspaceResponse instance using the specified properties. + * Creates a new CancelSchemaMigrationRequest instance using the specified properties. * @param [properties] Properties to set - * @returns CreateKeyspaceResponse instance + * @returns CancelSchemaMigrationRequest instance */ - public static create(properties?: vtadmin.ICreateKeyspaceResponse): vtadmin.CreateKeyspaceResponse; + public static create(properties?: vtadmin.ICancelSchemaMigrationRequest): vtadmin.CancelSchemaMigrationRequest; /** - * Encodes the specified CreateKeyspaceResponse message. Does not implicitly {@link vtadmin.CreateKeyspaceResponse.verify|verify} messages. - * @param message CreateKeyspaceResponse message or plain object to encode + * Encodes the specified CancelSchemaMigrationRequest message. Does not implicitly {@link vtadmin.CancelSchemaMigrationRequest.verify|verify} messages. + * @param message CancelSchemaMigrationRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: vtadmin.ICreateKeyspaceResponse, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: vtadmin.ICancelSchemaMigrationRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Encodes the specified CreateKeyspaceResponse message, length delimited. Does not implicitly {@link vtadmin.CreateKeyspaceResponse.verify|verify} messages. - * @param message CreateKeyspaceResponse message or plain object to encode + * Encodes the specified CancelSchemaMigrationRequest message, length delimited. Does not implicitly {@link vtadmin.CancelSchemaMigrationRequest.verify|verify} messages. + * @param message CancelSchemaMigrationRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: vtadmin.ICreateKeyspaceResponse, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: vtadmin.ICancelSchemaMigrationRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a CreateKeyspaceResponse message from the specified reader or buffer. + * Decodes a CancelSchemaMigrationRequest message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns CreateKeyspaceResponse + * @returns CancelSchemaMigrationRequest + * @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): vtadmin.CancelSchemaMigrationRequest; + + /** + * Decodes a CancelSchemaMigrationRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CancelSchemaMigrationRequest + * @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)): vtadmin.CancelSchemaMigrationRequest; + + /** + * Verifies a CancelSchemaMigrationRequest 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 CancelSchemaMigrationRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CancelSchemaMigrationRequest + */ + public static fromObject(object: { [k: string]: any }): vtadmin.CancelSchemaMigrationRequest; + + /** + * Creates a plain object from a CancelSchemaMigrationRequest message. Also converts values to other types if specified. + * @param message CancelSchemaMigrationRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: vtadmin.CancelSchemaMigrationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CancelSchemaMigrationRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CancelSchemaMigrationRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + /** Properties of a CleanupSchemaMigrationRequest. */ + interface ICleanupSchemaMigrationRequest { + + /** CleanupSchemaMigrationRequest cluster_id */ + cluster_id?: (string|null); + + /** CleanupSchemaMigrationRequest request */ + request?: (vtctldata.ICleanupSchemaMigrationRequest|null); + } + + /** Represents a CleanupSchemaMigrationRequest. */ + class CleanupSchemaMigrationRequest implements ICleanupSchemaMigrationRequest { + + /** + * Constructs a new CleanupSchemaMigrationRequest. + * @param [properties] Properties to set + */ + constructor(properties?: vtadmin.ICleanupSchemaMigrationRequest); + + /** CleanupSchemaMigrationRequest cluster_id. */ + public cluster_id: string; + + /** CleanupSchemaMigrationRequest request. */ + public request?: (vtctldata.ICleanupSchemaMigrationRequest|null); + + /** + * Creates a new CleanupSchemaMigrationRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns CleanupSchemaMigrationRequest instance + */ + public static create(properties?: vtadmin.ICleanupSchemaMigrationRequest): vtadmin.CleanupSchemaMigrationRequest; + + /** + * Encodes the specified CleanupSchemaMigrationRequest message. Does not implicitly {@link vtadmin.CleanupSchemaMigrationRequest.verify|verify} messages. + * @param message CleanupSchemaMigrationRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: vtadmin.ICleanupSchemaMigrationRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CleanupSchemaMigrationRequest message, length delimited. Does not implicitly {@link vtadmin.CleanupSchemaMigrationRequest.verify|verify} messages. + * @param message CleanupSchemaMigrationRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: vtadmin.ICleanupSchemaMigrationRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CleanupSchemaMigrationRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CleanupSchemaMigrationRequest + * @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): vtadmin.CleanupSchemaMigrationRequest; + + /** + * Decodes a CleanupSchemaMigrationRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CleanupSchemaMigrationRequest + * @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)): vtadmin.CleanupSchemaMigrationRequest; + + /** + * Verifies a CleanupSchemaMigrationRequest 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 CleanupSchemaMigrationRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CleanupSchemaMigrationRequest + */ + public static fromObject(object: { [k: string]: any }): vtadmin.CleanupSchemaMigrationRequest; + + /** + * Creates a plain object from a CleanupSchemaMigrationRequest message. Also converts values to other types if specified. + * @param message CleanupSchemaMigrationRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: vtadmin.CleanupSchemaMigrationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CleanupSchemaMigrationRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CleanupSchemaMigrationRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + /** Properties of a CompleteSchemaMigrationRequest. */ + interface ICompleteSchemaMigrationRequest { + + /** CompleteSchemaMigrationRequest cluster_id */ + cluster_id?: (string|null); + + /** CompleteSchemaMigrationRequest request */ + request?: (vtctldata.ICompleteSchemaMigrationRequest|null); + } + + /** Represents a CompleteSchemaMigrationRequest. */ + class CompleteSchemaMigrationRequest implements ICompleteSchemaMigrationRequest { + + /** + * Constructs a new CompleteSchemaMigrationRequest. + * @param [properties] Properties to set + */ + constructor(properties?: vtadmin.ICompleteSchemaMigrationRequest); + + /** CompleteSchemaMigrationRequest cluster_id. */ + public cluster_id: string; + + /** CompleteSchemaMigrationRequest request. */ + public request?: (vtctldata.ICompleteSchemaMigrationRequest|null); + + /** + * Creates a new CompleteSchemaMigrationRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns CompleteSchemaMigrationRequest instance + */ + public static create(properties?: vtadmin.ICompleteSchemaMigrationRequest): vtadmin.CompleteSchemaMigrationRequest; + + /** + * Encodes the specified CompleteSchemaMigrationRequest message. Does not implicitly {@link vtadmin.CompleteSchemaMigrationRequest.verify|verify} messages. + * @param message CompleteSchemaMigrationRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: vtadmin.ICompleteSchemaMigrationRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CompleteSchemaMigrationRequest message, length delimited. Does not implicitly {@link vtadmin.CompleteSchemaMigrationRequest.verify|verify} messages. + * @param message CompleteSchemaMigrationRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: vtadmin.ICompleteSchemaMigrationRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CompleteSchemaMigrationRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CompleteSchemaMigrationRequest + * @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): vtadmin.CompleteSchemaMigrationRequest; + + /** + * Decodes a CompleteSchemaMigrationRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CompleteSchemaMigrationRequest + * @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)): vtadmin.CompleteSchemaMigrationRequest; + + /** + * Verifies a CompleteSchemaMigrationRequest 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 CompleteSchemaMigrationRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CompleteSchemaMigrationRequest + */ + public static fromObject(object: { [k: string]: any }): vtadmin.CompleteSchemaMigrationRequest; + + /** + * Creates a plain object from a CompleteSchemaMigrationRequest message. Also converts values to other types if specified. + * @param message CompleteSchemaMigrationRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: vtadmin.CompleteSchemaMigrationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CompleteSchemaMigrationRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CompleteSchemaMigrationRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + /** Properties of a CreateKeyspaceRequest. */ + interface ICreateKeyspaceRequest { + + /** CreateKeyspaceRequest cluster_id */ + cluster_id?: (string|null); + + /** CreateKeyspaceRequest options */ + options?: (vtctldata.ICreateKeyspaceRequest|null); + } + + /** Represents a CreateKeyspaceRequest. */ + class CreateKeyspaceRequest implements ICreateKeyspaceRequest { + + /** + * Constructs a new CreateKeyspaceRequest. + * @param [properties] Properties to set + */ + constructor(properties?: vtadmin.ICreateKeyspaceRequest); + + /** CreateKeyspaceRequest cluster_id. */ + public cluster_id: string; + + /** CreateKeyspaceRequest options. */ + public options?: (vtctldata.ICreateKeyspaceRequest|null); + + /** + * Creates a new CreateKeyspaceRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns CreateKeyspaceRequest instance + */ + public static create(properties?: vtadmin.ICreateKeyspaceRequest): vtadmin.CreateKeyspaceRequest; + + /** + * Encodes the specified CreateKeyspaceRequest message. Does not implicitly {@link vtadmin.CreateKeyspaceRequest.verify|verify} messages. + * @param message CreateKeyspaceRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: vtadmin.ICreateKeyspaceRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CreateKeyspaceRequest message, length delimited. Does not implicitly {@link vtadmin.CreateKeyspaceRequest.verify|verify} messages. + * @param message CreateKeyspaceRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: vtadmin.ICreateKeyspaceRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CreateKeyspaceRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CreateKeyspaceRequest + * @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): vtadmin.CreateKeyspaceRequest; + + /** + * Decodes a CreateKeyspaceRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CreateKeyspaceRequest + * @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)): vtadmin.CreateKeyspaceRequest; + + /** + * Verifies a CreateKeyspaceRequest 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 CreateKeyspaceRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CreateKeyspaceRequest + */ + public static fromObject(object: { [k: string]: any }): vtadmin.CreateKeyspaceRequest; + + /** + * Creates a plain object from a CreateKeyspaceRequest message. Also converts values to other types if specified. + * @param message CreateKeyspaceRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: vtadmin.CreateKeyspaceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CreateKeyspaceRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CreateKeyspaceRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + /** Properties of a CreateKeyspaceResponse. */ + interface ICreateKeyspaceResponse { + + /** CreateKeyspaceResponse keyspace */ + keyspace?: (vtadmin.IKeyspace|null); + } + + /** Represents a CreateKeyspaceResponse. */ + class CreateKeyspaceResponse implements ICreateKeyspaceResponse { + + /** + * Constructs a new CreateKeyspaceResponse. + * @param [properties] Properties to set + */ + constructor(properties?: vtadmin.ICreateKeyspaceResponse); + + /** CreateKeyspaceResponse keyspace. */ + public keyspace?: (vtadmin.IKeyspace|null); + + /** + * Creates a new CreateKeyspaceResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns CreateKeyspaceResponse instance + */ + public static create(properties?: vtadmin.ICreateKeyspaceResponse): vtadmin.CreateKeyspaceResponse; + + /** + * Encodes the specified CreateKeyspaceResponse message. Does not implicitly {@link vtadmin.CreateKeyspaceResponse.verify|verify} messages. + * @param message CreateKeyspaceResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: vtadmin.ICreateKeyspaceResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CreateKeyspaceResponse message, length delimited. Does not implicitly {@link vtadmin.CreateKeyspaceResponse.verify|verify} messages. + * @param message CreateKeyspaceResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: vtadmin.ICreateKeyspaceResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CreateKeyspaceResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CreateKeyspaceResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ @@ -5616,111 +6278,411 @@ export namespace vtadmin { */ public static toObject(message: vtadmin.GetSchemasRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Converts this GetSchemasRequest to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; + /** + * Converts this GetSchemasRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GetSchemasRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + /** Properties of a GetSchemasResponse. */ + interface IGetSchemasResponse { + + /** GetSchemasResponse schemas */ + schemas?: (vtadmin.ISchema[]|null); + } + + /** Represents a GetSchemasResponse. */ + class GetSchemasResponse implements IGetSchemasResponse { + + /** + * Constructs a new GetSchemasResponse. + * @param [properties] Properties to set + */ + constructor(properties?: vtadmin.IGetSchemasResponse); + + /** GetSchemasResponse schemas. */ + public schemas: vtadmin.ISchema[]; + + /** + * Creates a new GetSchemasResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns GetSchemasResponse instance + */ + public static create(properties?: vtadmin.IGetSchemasResponse): vtadmin.GetSchemasResponse; + + /** + * Encodes the specified GetSchemasResponse message. Does not implicitly {@link vtadmin.GetSchemasResponse.verify|verify} messages. + * @param message GetSchemasResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: vtadmin.IGetSchemasResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GetSchemasResponse message, length delimited. Does not implicitly {@link vtadmin.GetSchemasResponse.verify|verify} messages. + * @param message GetSchemasResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: vtadmin.IGetSchemasResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GetSchemasResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GetSchemasResponse + * @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): vtadmin.GetSchemasResponse; + + /** + * Decodes a GetSchemasResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GetSchemasResponse + * @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)): vtadmin.GetSchemasResponse; + + /** + * Verifies a GetSchemasResponse 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 GetSchemasResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GetSchemasResponse + */ + public static fromObject(object: { [k: string]: any }): vtadmin.GetSchemasResponse; + + /** + * Creates a plain object from a GetSchemasResponse message. Also converts values to other types if specified. + * @param message GetSchemasResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: vtadmin.GetSchemasResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GetSchemasResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GetSchemasResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + /** Properties of a GetSchemaMigrationsRequest. */ + interface IGetSchemaMigrationsRequest { + + /** GetSchemaMigrationsRequest cluster_requests */ + cluster_requests?: (vtadmin.GetSchemaMigrationsRequest.IClusterRequest[]|null); + } + + /** Represents a GetSchemaMigrationsRequest. */ + class GetSchemaMigrationsRequest implements IGetSchemaMigrationsRequest { + + /** + * Constructs a new GetSchemaMigrationsRequest. + * @param [properties] Properties to set + */ + constructor(properties?: vtadmin.IGetSchemaMigrationsRequest); + + /** GetSchemaMigrationsRequest cluster_requests. */ + public cluster_requests: vtadmin.GetSchemaMigrationsRequest.IClusterRequest[]; + + /** + * Creates a new GetSchemaMigrationsRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GetSchemaMigrationsRequest instance + */ + public static create(properties?: vtadmin.IGetSchemaMigrationsRequest): vtadmin.GetSchemaMigrationsRequest; + + /** + * Encodes the specified GetSchemaMigrationsRequest message. Does not implicitly {@link vtadmin.GetSchemaMigrationsRequest.verify|verify} messages. + * @param message GetSchemaMigrationsRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: vtadmin.IGetSchemaMigrationsRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GetSchemaMigrationsRequest message, length delimited. Does not implicitly {@link vtadmin.GetSchemaMigrationsRequest.verify|verify} messages. + * @param message GetSchemaMigrationsRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: vtadmin.IGetSchemaMigrationsRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GetSchemaMigrationsRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GetSchemaMigrationsRequest + * @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): vtadmin.GetSchemaMigrationsRequest; + + /** + * Decodes a GetSchemaMigrationsRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GetSchemaMigrationsRequest + * @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)): vtadmin.GetSchemaMigrationsRequest; + + /** + * Verifies a GetSchemaMigrationsRequest 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 GetSchemaMigrationsRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GetSchemaMigrationsRequest + */ + public static fromObject(object: { [k: string]: any }): vtadmin.GetSchemaMigrationsRequest; + + /** + * Creates a plain object from a GetSchemaMigrationsRequest message. Also converts values to other types if specified. + * @param message GetSchemaMigrationsRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: vtadmin.GetSchemaMigrationsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GetSchemaMigrationsRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GetSchemaMigrationsRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + namespace GetSchemaMigrationsRequest { + + /** Properties of a ClusterRequest. */ + interface IClusterRequest { + + /** ClusterRequest cluster_id */ + cluster_id?: (string|null); + + /** ClusterRequest request */ + request?: (vtctldata.IGetSchemaMigrationsRequest|null); + } + + /** Represents a ClusterRequest. */ + class ClusterRequest implements IClusterRequest { + + /** + * Constructs a new ClusterRequest. + * @param [properties] Properties to set + */ + constructor(properties?: vtadmin.GetSchemaMigrationsRequest.IClusterRequest); + + /** ClusterRequest cluster_id. */ + public cluster_id: string; + + /** ClusterRequest request. */ + public request?: (vtctldata.IGetSchemaMigrationsRequest|null); + + /** + * Creates a new ClusterRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns ClusterRequest instance + */ + public static create(properties?: vtadmin.GetSchemaMigrationsRequest.IClusterRequest): vtadmin.GetSchemaMigrationsRequest.ClusterRequest; + + /** + * Encodes the specified ClusterRequest message. Does not implicitly {@link vtadmin.GetSchemaMigrationsRequest.ClusterRequest.verify|verify} messages. + * @param message ClusterRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: vtadmin.GetSchemaMigrationsRequest.IClusterRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ClusterRequest message, length delimited. Does not implicitly {@link vtadmin.GetSchemaMigrationsRequest.ClusterRequest.verify|verify} messages. + * @param message ClusterRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: vtadmin.GetSchemaMigrationsRequest.IClusterRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ClusterRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ClusterRequest + * @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): vtadmin.GetSchemaMigrationsRequest.ClusterRequest; + + /** + * Decodes a ClusterRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ClusterRequest + * @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)): vtadmin.GetSchemaMigrationsRequest.ClusterRequest; + + /** + * Verifies a ClusterRequest 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 ClusterRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ClusterRequest + */ + public static fromObject(object: { [k: string]: any }): vtadmin.GetSchemaMigrationsRequest.ClusterRequest; + + /** + * Creates a plain object from a ClusterRequest message. Also converts values to other types if specified. + * @param message ClusterRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: vtadmin.GetSchemaMigrationsRequest.ClusterRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Gets the default type url for GetSchemasRequest - * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") - * @returns The default type url - */ - public static getTypeUrl(typeUrlPrefix?: string): string; + /** + * Converts this ClusterRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ClusterRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } } - /** Properties of a GetSchemasResponse. */ - interface IGetSchemasResponse { + /** Properties of a GetSchemaMigrationsResponse. */ + interface IGetSchemaMigrationsResponse { - /** GetSchemasResponse schemas */ - schemas?: (vtadmin.ISchema[]|null); + /** GetSchemaMigrationsResponse schema_migrations */ + schema_migrations?: (vtadmin.ISchemaMigration[]|null); } - /** Represents a GetSchemasResponse. */ - class GetSchemasResponse implements IGetSchemasResponse { + /** Represents a GetSchemaMigrationsResponse. */ + class GetSchemaMigrationsResponse implements IGetSchemaMigrationsResponse { /** - * Constructs a new GetSchemasResponse. + * Constructs a new GetSchemaMigrationsResponse. * @param [properties] Properties to set */ - constructor(properties?: vtadmin.IGetSchemasResponse); + constructor(properties?: vtadmin.IGetSchemaMigrationsResponse); - /** GetSchemasResponse schemas. */ - public schemas: vtadmin.ISchema[]; + /** GetSchemaMigrationsResponse schema_migrations. */ + public schema_migrations: vtadmin.ISchemaMigration[]; /** - * Creates a new GetSchemasResponse instance using the specified properties. + * Creates a new GetSchemaMigrationsResponse instance using the specified properties. * @param [properties] Properties to set - * @returns GetSchemasResponse instance + * @returns GetSchemaMigrationsResponse instance */ - public static create(properties?: vtadmin.IGetSchemasResponse): vtadmin.GetSchemasResponse; + public static create(properties?: vtadmin.IGetSchemaMigrationsResponse): vtadmin.GetSchemaMigrationsResponse; /** - * Encodes the specified GetSchemasResponse message. Does not implicitly {@link vtadmin.GetSchemasResponse.verify|verify} messages. - * @param message GetSchemasResponse message or plain object to encode + * Encodes the specified GetSchemaMigrationsResponse message. Does not implicitly {@link vtadmin.GetSchemaMigrationsResponse.verify|verify} messages. + * @param message GetSchemaMigrationsResponse message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: vtadmin.IGetSchemasResponse, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: vtadmin.IGetSchemaMigrationsResponse, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Encodes the specified GetSchemasResponse message, length delimited. Does not implicitly {@link vtadmin.GetSchemasResponse.verify|verify} messages. - * @param message GetSchemasResponse message or plain object to encode + * Encodes the specified GetSchemaMigrationsResponse message, length delimited. Does not implicitly {@link vtadmin.GetSchemaMigrationsResponse.verify|verify} messages. + * @param message GetSchemaMigrationsResponse message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: vtadmin.IGetSchemasResponse, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: vtadmin.IGetSchemaMigrationsResponse, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a GetSchemasResponse message from the specified reader or buffer. + * Decodes a GetSchemaMigrationsResponse message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns GetSchemasResponse + * @returns GetSchemaMigrationsResponse * @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): vtadmin.GetSchemasResponse; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): vtadmin.GetSchemaMigrationsResponse; /** - * Decodes a GetSchemasResponse message from the specified reader or buffer, length delimited. + * Decodes a GetSchemaMigrationsResponse message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns GetSchemasResponse + * @returns GetSchemaMigrationsResponse * @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)): vtadmin.GetSchemasResponse; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): vtadmin.GetSchemaMigrationsResponse; /** - * Verifies a GetSchemasResponse message. + * Verifies a GetSchemaMigrationsResponse 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 GetSchemasResponse message from a plain object. Also converts values to their respective internal types. + * Creates a GetSchemaMigrationsResponse message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns GetSchemasResponse + * @returns GetSchemaMigrationsResponse */ - public static fromObject(object: { [k: string]: any }): vtadmin.GetSchemasResponse; + public static fromObject(object: { [k: string]: any }): vtadmin.GetSchemaMigrationsResponse; /** - * Creates a plain object from a GetSchemasResponse message. Also converts values to other types if specified. - * @param message GetSchemasResponse + * Creates a plain object from a GetSchemaMigrationsResponse message. Also converts values to other types if specified. + * @param message GetSchemaMigrationsResponse * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: vtadmin.GetSchemasResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: vtadmin.GetSchemaMigrationsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this GetSchemasResponse to JSON. + * Converts this GetSchemaMigrationsResponse to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** - * Gets the default type url for GetSchemasResponse + * Gets the default type url for GetSchemaMigrationsResponse * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ @@ -7866,6 +8828,109 @@ export namespace vtadmin { public static getTypeUrl(typeUrlPrefix?: string): string; } + /** Properties of a LaunchSchemaMigrationRequest. */ + interface ILaunchSchemaMigrationRequest { + + /** LaunchSchemaMigrationRequest cluster_id */ + cluster_id?: (string|null); + + /** LaunchSchemaMigrationRequest request */ + request?: (vtctldata.ILaunchSchemaMigrationRequest|null); + } + + /** Represents a LaunchSchemaMigrationRequest. */ + class LaunchSchemaMigrationRequest implements ILaunchSchemaMigrationRequest { + + /** + * Constructs a new LaunchSchemaMigrationRequest. + * @param [properties] Properties to set + */ + constructor(properties?: vtadmin.ILaunchSchemaMigrationRequest); + + /** LaunchSchemaMigrationRequest cluster_id. */ + public cluster_id: string; + + /** LaunchSchemaMigrationRequest request. */ + public request?: (vtctldata.ILaunchSchemaMigrationRequest|null); + + /** + * Creates a new LaunchSchemaMigrationRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns LaunchSchemaMigrationRequest instance + */ + public static create(properties?: vtadmin.ILaunchSchemaMigrationRequest): vtadmin.LaunchSchemaMigrationRequest; + + /** + * Encodes the specified LaunchSchemaMigrationRequest message. Does not implicitly {@link vtadmin.LaunchSchemaMigrationRequest.verify|verify} messages. + * @param message LaunchSchemaMigrationRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: vtadmin.ILaunchSchemaMigrationRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified LaunchSchemaMigrationRequest message, length delimited. Does not implicitly {@link vtadmin.LaunchSchemaMigrationRequest.verify|verify} messages. + * @param message LaunchSchemaMigrationRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: vtadmin.ILaunchSchemaMigrationRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a LaunchSchemaMigrationRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns LaunchSchemaMigrationRequest + * @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): vtadmin.LaunchSchemaMigrationRequest; + + /** + * Decodes a LaunchSchemaMigrationRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns LaunchSchemaMigrationRequest + * @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)): vtadmin.LaunchSchemaMigrationRequest; + + /** + * Verifies a LaunchSchemaMigrationRequest 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 LaunchSchemaMigrationRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns LaunchSchemaMigrationRequest + */ + public static fromObject(object: { [k: string]: any }): vtadmin.LaunchSchemaMigrationRequest; + + /** + * Creates a plain object from a LaunchSchemaMigrationRequest message. Also converts values to other types if specified. + * @param message LaunchSchemaMigrationRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: vtadmin.LaunchSchemaMigrationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this LaunchSchemaMigrationRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for LaunchSchemaMigrationRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + /** Properties of a PingTabletRequest. */ interface IPingTabletRequest { @@ -9928,6 +10993,109 @@ export namespace vtadmin { public static getTypeUrl(typeUrlPrefix?: string): string; } + /** Properties of a RetrySchemaMigrationRequest. */ + interface IRetrySchemaMigrationRequest { + + /** RetrySchemaMigrationRequest cluster_id */ + cluster_id?: (string|null); + + /** RetrySchemaMigrationRequest request */ + request?: (vtctldata.IRetrySchemaMigrationRequest|null); + } + + /** Represents a RetrySchemaMigrationRequest. */ + class RetrySchemaMigrationRequest implements IRetrySchemaMigrationRequest { + + /** + * Constructs a new RetrySchemaMigrationRequest. + * @param [properties] Properties to set + */ + constructor(properties?: vtadmin.IRetrySchemaMigrationRequest); + + /** RetrySchemaMigrationRequest cluster_id. */ + public cluster_id: string; + + /** RetrySchemaMigrationRequest request. */ + public request?: (vtctldata.IRetrySchemaMigrationRequest|null); + + /** + * Creates a new RetrySchemaMigrationRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns RetrySchemaMigrationRequest instance + */ + public static create(properties?: vtadmin.IRetrySchemaMigrationRequest): vtadmin.RetrySchemaMigrationRequest; + + /** + * Encodes the specified RetrySchemaMigrationRequest message. Does not implicitly {@link vtadmin.RetrySchemaMigrationRequest.verify|verify} messages. + * @param message RetrySchemaMigrationRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: vtadmin.IRetrySchemaMigrationRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified RetrySchemaMigrationRequest message, length delimited. Does not implicitly {@link vtadmin.RetrySchemaMigrationRequest.verify|verify} messages. + * @param message RetrySchemaMigrationRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: vtadmin.IRetrySchemaMigrationRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a RetrySchemaMigrationRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns RetrySchemaMigrationRequest + * @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): vtadmin.RetrySchemaMigrationRequest; + + /** + * Decodes a RetrySchemaMigrationRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns RetrySchemaMigrationRequest + * @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)): vtadmin.RetrySchemaMigrationRequest; + + /** + * Verifies a RetrySchemaMigrationRequest 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 RetrySchemaMigrationRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns RetrySchemaMigrationRequest + */ + public static fromObject(object: { [k: string]: any }): vtadmin.RetrySchemaMigrationRequest; + + /** + * Creates a plain object from a RetrySchemaMigrationRequest message. Also converts values to other types if specified. + * @param message RetrySchemaMigrationRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: vtadmin.RetrySchemaMigrationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this RetrySchemaMigrationRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for RetrySchemaMigrationRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + /** Properties of a RunHealthCheckRequest. */ interface IRunHealthCheckRequest { diff --git a/web/vtadmin/src/proto/vtadmin.js b/web/vtadmin/src/proto/vtadmin.js index fb92a6b6b94..498f6f30cd9 100644 --- a/web/vtadmin/src/proto/vtadmin.js +++ b/web/vtadmin/src/proto/vtadmin.js @@ -48,6 +48,138 @@ export const vtadmin = $root.vtadmin = (() => { return new this(rpcImpl, requestDelimited, responseDelimited); }; + /** + * Callback as used by {@link vtadmin.VTAdmin#applySchema}. + * @memberof vtadmin.VTAdmin + * @typedef ApplySchemaCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {vtctldata.ApplySchemaResponse} [response] ApplySchemaResponse + */ + + /** + * Calls ApplySchema. + * @function applySchema + * @memberof vtadmin.VTAdmin + * @instance + * @param {vtadmin.IApplySchemaRequest} request ApplySchemaRequest message or plain object + * @param {vtadmin.VTAdmin.ApplySchemaCallback} callback Node-style callback called with the error, if any, and ApplySchemaResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(VTAdmin.prototype.applySchema = function applySchema(request, callback) { + return this.rpcCall(applySchema, $root.vtadmin.ApplySchemaRequest, $root.vtctldata.ApplySchemaResponse, request, callback); + }, "name", { value: "ApplySchema" }); + + /** + * Calls ApplySchema. + * @function applySchema + * @memberof vtadmin.VTAdmin + * @instance + * @param {vtadmin.IApplySchemaRequest} request ApplySchemaRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link vtadmin.VTAdmin#cancelSchemaMigration}. + * @memberof vtadmin.VTAdmin + * @typedef CancelSchemaMigrationCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {vtctldata.CancelSchemaMigrationResponse} [response] CancelSchemaMigrationResponse + */ + + /** + * Calls CancelSchemaMigration. + * @function cancelSchemaMigration + * @memberof vtadmin.VTAdmin + * @instance + * @param {vtadmin.ICancelSchemaMigrationRequest} request CancelSchemaMigrationRequest message or plain object + * @param {vtadmin.VTAdmin.CancelSchemaMigrationCallback} callback Node-style callback called with the error, if any, and CancelSchemaMigrationResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(VTAdmin.prototype.cancelSchemaMigration = function cancelSchemaMigration(request, callback) { + return this.rpcCall(cancelSchemaMigration, $root.vtadmin.CancelSchemaMigrationRequest, $root.vtctldata.CancelSchemaMigrationResponse, request, callback); + }, "name", { value: "CancelSchemaMigration" }); + + /** + * Calls CancelSchemaMigration. + * @function cancelSchemaMigration + * @memberof vtadmin.VTAdmin + * @instance + * @param {vtadmin.ICancelSchemaMigrationRequest} request CancelSchemaMigrationRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link vtadmin.VTAdmin#cleanupSchemaMigration}. + * @memberof vtadmin.VTAdmin + * @typedef CleanupSchemaMigrationCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {vtctldata.CleanupSchemaMigrationResponse} [response] CleanupSchemaMigrationResponse + */ + + /** + * Calls CleanupSchemaMigration. + * @function cleanupSchemaMigration + * @memberof vtadmin.VTAdmin + * @instance + * @param {vtadmin.ICleanupSchemaMigrationRequest} request CleanupSchemaMigrationRequest message or plain object + * @param {vtadmin.VTAdmin.CleanupSchemaMigrationCallback} callback Node-style callback called with the error, if any, and CleanupSchemaMigrationResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(VTAdmin.prototype.cleanupSchemaMigration = function cleanupSchemaMigration(request, callback) { + return this.rpcCall(cleanupSchemaMigration, $root.vtadmin.CleanupSchemaMigrationRequest, $root.vtctldata.CleanupSchemaMigrationResponse, request, callback); + }, "name", { value: "CleanupSchemaMigration" }); + + /** + * Calls CleanupSchemaMigration. + * @function cleanupSchemaMigration + * @memberof vtadmin.VTAdmin + * @instance + * @param {vtadmin.ICleanupSchemaMigrationRequest} request CleanupSchemaMigrationRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link vtadmin.VTAdmin#completeSchemaMigration}. + * @memberof vtadmin.VTAdmin + * @typedef CompleteSchemaMigrationCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {vtctldata.CompleteSchemaMigrationResponse} [response] CompleteSchemaMigrationResponse + */ + + /** + * Calls CompleteSchemaMigration. + * @function completeSchemaMigration + * @memberof vtadmin.VTAdmin + * @instance + * @param {vtadmin.ICompleteSchemaMigrationRequest} request CompleteSchemaMigrationRequest message or plain object + * @param {vtadmin.VTAdmin.CompleteSchemaMigrationCallback} callback Node-style callback called with the error, if any, and CompleteSchemaMigrationResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(VTAdmin.prototype.completeSchemaMigration = function completeSchemaMigration(request, callback) { + return this.rpcCall(completeSchemaMigration, $root.vtadmin.CompleteSchemaMigrationRequest, $root.vtctldata.CompleteSchemaMigrationResponse, request, callback); + }, "name", { value: "CompleteSchemaMigration" }); + + /** + * Calls CompleteSchemaMigration. + * @function completeSchemaMigration + * @memberof vtadmin.VTAdmin + * @instance + * @param {vtadmin.ICompleteSchemaMigrationRequest} request CompleteSchemaMigrationRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + /** * Callback as used by {@link vtadmin.VTAdmin#createKeyspace}. * @memberof vtadmin.VTAdmin @@ -609,6 +741,39 @@ export const vtadmin = $root.vtadmin = (() => { * @variation 2 */ + /** + * Callback as used by {@link vtadmin.VTAdmin#getSchemaMigrations}. + * @memberof vtadmin.VTAdmin + * @typedef GetSchemaMigrationsCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {vtadmin.GetSchemaMigrationsResponse} [response] GetSchemaMigrationsResponse + */ + + /** + * Calls GetSchemaMigrations. + * @function getSchemaMigrations + * @memberof vtadmin.VTAdmin + * @instance + * @param {vtadmin.IGetSchemaMigrationsRequest} request GetSchemaMigrationsRequest message or plain object + * @param {vtadmin.VTAdmin.GetSchemaMigrationsCallback} callback Node-style callback called with the error, if any, and GetSchemaMigrationsResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(VTAdmin.prototype.getSchemaMigrations = function getSchemaMigrations(request, callback) { + return this.rpcCall(getSchemaMigrations, $root.vtadmin.GetSchemaMigrationsRequest, $root.vtadmin.GetSchemaMigrationsResponse, request, callback); + }, "name", { value: "GetSchemaMigrations" }); + + /** + * Calls GetSchemaMigrations. + * @function getSchemaMigrations + * @memberof vtadmin.VTAdmin + * @instance + * @param {vtadmin.IGetSchemaMigrationsRequest} request GetSchemaMigrationsRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + /** * Callback as used by {@link vtadmin.VTAdmin#getShardReplicationPositions}. * @memberof vtadmin.VTAdmin @@ -1038,6 +1203,39 @@ export const vtadmin = $root.vtadmin = (() => { * @variation 2 */ + /** + * Callback as used by {@link vtadmin.VTAdmin#launchSchemaMigration}. + * @memberof vtadmin.VTAdmin + * @typedef LaunchSchemaMigrationCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {vtctldata.LaunchSchemaMigrationResponse} [response] LaunchSchemaMigrationResponse + */ + + /** + * Calls LaunchSchemaMigration. + * @function launchSchemaMigration + * @memberof vtadmin.VTAdmin + * @instance + * @param {vtadmin.ILaunchSchemaMigrationRequest} request LaunchSchemaMigrationRequest message or plain object + * @param {vtadmin.VTAdmin.LaunchSchemaMigrationCallback} callback Node-style callback called with the error, if any, and LaunchSchemaMigrationResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(VTAdmin.prototype.launchSchemaMigration = function launchSchemaMigration(request, callback) { + return this.rpcCall(launchSchemaMigration, $root.vtadmin.LaunchSchemaMigrationRequest, $root.vtctldata.LaunchSchemaMigrationResponse, request, callback); + }, "name", { value: "LaunchSchemaMigration" }); + + /** + * Calls LaunchSchemaMigration. + * @function launchSchemaMigration + * @memberof vtadmin.VTAdmin + * @instance + * @param {vtadmin.ILaunchSchemaMigrationRequest} request LaunchSchemaMigrationRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + /** * Callback as used by {@link vtadmin.VTAdmin#pingTablet}. * @memberof vtadmin.VTAdmin @@ -1302,6 +1500,39 @@ export const vtadmin = $root.vtadmin = (() => { * @variation 2 */ + /** + * Callback as used by {@link vtadmin.VTAdmin#retrySchemaMigration}. + * @memberof vtadmin.VTAdmin + * @typedef RetrySchemaMigrationCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {vtctldata.RetrySchemaMigrationResponse} [response] RetrySchemaMigrationResponse + */ + + /** + * Calls RetrySchemaMigration. + * @function retrySchemaMigration + * @memberof vtadmin.VTAdmin + * @instance + * @param {vtadmin.IRetrySchemaMigrationRequest} request RetrySchemaMigrationRequest message or plain object + * @param {vtadmin.VTAdmin.RetrySchemaMigrationCallback} callback Node-style callback called with the error, if any, and RetrySchemaMigrationResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(VTAdmin.prototype.retrySchemaMigration = function retrySchemaMigration(request, callback) { + return this.rpcCall(retrySchemaMigration, $root.vtadmin.RetrySchemaMigrationRequest, $root.vtctldata.RetrySchemaMigrationResponse, request, callback); + }, "name", { value: "RetrySchemaMigration" }); + + /** + * Calls RetrySchemaMigration. + * @function retrySchemaMigration + * @memberof vtadmin.VTAdmin + * @instance + * @param {vtadmin.IRetrySchemaMigrationRequest} request RetrySchemaMigrationRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + /** * Callback as used by {@link vtadmin.VTAdmin#runHealthCheck}. * @memberof vtadmin.VTAdmin @@ -4501,25 +4732,25 @@ export const vtadmin = $root.vtadmin = (() => { return Schema; })(); - vtadmin.Shard = (function() { + vtadmin.SchemaMigration = (function() { /** - * Properties of a Shard. + * Properties of a SchemaMigration. * @memberof vtadmin - * @interface IShard - * @property {vtadmin.ICluster|null} [cluster] Shard cluster - * @property {vtctldata.IShard|null} [shard] Shard shard + * @interface ISchemaMigration + * @property {vtadmin.ICluster|null} [cluster] SchemaMigration cluster + * @property {vtctldata.ISchemaMigration|null} [schema_migration] SchemaMigration schema_migration */ /** - * Constructs a new Shard. + * Constructs a new SchemaMigration. * @memberof vtadmin - * @classdesc Represents a Shard. - * @implements IShard + * @classdesc Represents a SchemaMigration. + * @implements ISchemaMigration * @constructor - * @param {vtadmin.IShard=} [properties] Properties to set + * @param {vtadmin.ISchemaMigration=} [properties] Properties to set */ - function Shard(properties) { + function SchemaMigration(properties) { if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -4527,80 +4758,80 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * Shard cluster. + * SchemaMigration cluster. * @member {vtadmin.ICluster|null|undefined} cluster - * @memberof vtadmin.Shard + * @memberof vtadmin.SchemaMigration * @instance */ - Shard.prototype.cluster = null; + SchemaMigration.prototype.cluster = null; /** - * Shard shard. - * @member {vtctldata.IShard|null|undefined} shard - * @memberof vtadmin.Shard + * SchemaMigration schema_migration. + * @member {vtctldata.ISchemaMigration|null|undefined} schema_migration + * @memberof vtadmin.SchemaMigration * @instance */ - Shard.prototype.shard = null; + SchemaMigration.prototype.schema_migration = null; /** - * Creates a new Shard instance using the specified properties. + * Creates a new SchemaMigration instance using the specified properties. * @function create - * @memberof vtadmin.Shard + * @memberof vtadmin.SchemaMigration * @static - * @param {vtadmin.IShard=} [properties] Properties to set - * @returns {vtadmin.Shard} Shard instance + * @param {vtadmin.ISchemaMigration=} [properties] Properties to set + * @returns {vtadmin.SchemaMigration} SchemaMigration instance */ - Shard.create = function create(properties) { - return new Shard(properties); + SchemaMigration.create = function create(properties) { + return new SchemaMigration(properties); }; /** - * Encodes the specified Shard message. Does not implicitly {@link vtadmin.Shard.verify|verify} messages. + * Encodes the specified SchemaMigration message. Does not implicitly {@link vtadmin.SchemaMigration.verify|verify} messages. * @function encode - * @memberof vtadmin.Shard + * @memberof vtadmin.SchemaMigration * @static - * @param {vtadmin.IShard} message Shard message or plain object to encode + * @param {vtadmin.ISchemaMigration} message SchemaMigration message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Shard.encode = function encode(message, writer) { + SchemaMigration.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); if (message.cluster != null && Object.hasOwnProperty.call(message, "cluster")) $root.vtadmin.Cluster.encode(message.cluster, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.shard != null && Object.hasOwnProperty.call(message, "shard")) - $root.vtctldata.Shard.encode(message.shard, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.schema_migration != null && Object.hasOwnProperty.call(message, "schema_migration")) + $root.vtctldata.SchemaMigration.encode(message.schema_migration, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); return writer; }; /** - * Encodes the specified Shard message, length delimited. Does not implicitly {@link vtadmin.Shard.verify|verify} messages. + * Encodes the specified SchemaMigration message, length delimited. Does not implicitly {@link vtadmin.SchemaMigration.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.Shard + * @memberof vtadmin.SchemaMigration * @static - * @param {vtadmin.IShard} message Shard message or plain object to encode + * @param {vtadmin.ISchemaMigration} message SchemaMigration message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Shard.encodeDelimited = function encodeDelimited(message, writer) { + SchemaMigration.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a Shard message from the specified reader or buffer. + * Decodes a SchemaMigration message from the specified reader or buffer. * @function decode - * @memberof vtadmin.Shard + * @memberof vtadmin.SchemaMigration * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.Shard} Shard + * @returns {vtadmin.SchemaMigration} SchemaMigration * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Shard.decode = function decode(reader, length) { + SchemaMigration.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.vtadmin.Shard(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.SchemaMigration(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { @@ -4609,7 +4840,7 @@ export const vtadmin = $root.vtadmin = (() => { break; } case 2: { - message.shard = $root.vtctldata.Shard.decode(reader, reader.uint32()); + message.schema_migration = $root.vtctldata.SchemaMigration.decode(reader, reader.uint32()); break; } default: @@ -4621,30 +4852,30 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a Shard message from the specified reader or buffer, length delimited. + * Decodes a SchemaMigration message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.Shard + * @memberof vtadmin.SchemaMigration * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.Shard} Shard + * @returns {vtadmin.SchemaMigration} SchemaMigration * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Shard.decodeDelimited = function decodeDelimited(reader) { + SchemaMigration.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a Shard message. + * Verifies a SchemaMigration message. * @function verify - * @memberof vtadmin.Shard + * @memberof vtadmin.SchemaMigration * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Shard.verify = function verify(message) { + SchemaMigration.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; if (message.cluster != null && message.hasOwnProperty("cluster")) { @@ -4652,112 +4883,111 @@ export const vtadmin = $root.vtadmin = (() => { if (error) return "cluster." + error; } - if (message.shard != null && message.hasOwnProperty("shard")) { - let error = $root.vtctldata.Shard.verify(message.shard); + if (message.schema_migration != null && message.hasOwnProperty("schema_migration")) { + let error = $root.vtctldata.SchemaMigration.verify(message.schema_migration); if (error) - return "shard." + error; + return "schema_migration." + error; } return null; }; /** - * Creates a Shard message from a plain object. Also converts values to their respective internal types. + * Creates a SchemaMigration message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.Shard + * @memberof vtadmin.SchemaMigration * @static * @param {Object.} object Plain object - * @returns {vtadmin.Shard} Shard + * @returns {vtadmin.SchemaMigration} SchemaMigration */ - Shard.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.Shard) + SchemaMigration.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.SchemaMigration) return object; - let message = new $root.vtadmin.Shard(); + let message = new $root.vtadmin.SchemaMigration(); if (object.cluster != null) { if (typeof object.cluster !== "object") - throw TypeError(".vtadmin.Shard.cluster: object expected"); + throw TypeError(".vtadmin.SchemaMigration.cluster: object expected"); message.cluster = $root.vtadmin.Cluster.fromObject(object.cluster); } - if (object.shard != null) { - if (typeof object.shard !== "object") - throw TypeError(".vtadmin.Shard.shard: object expected"); - message.shard = $root.vtctldata.Shard.fromObject(object.shard); + if (object.schema_migration != null) { + if (typeof object.schema_migration !== "object") + throw TypeError(".vtadmin.SchemaMigration.schema_migration: object expected"); + message.schema_migration = $root.vtctldata.SchemaMigration.fromObject(object.schema_migration); } return message; }; /** - * Creates a plain object from a Shard message. Also converts values to other types if specified. + * Creates a plain object from a SchemaMigration message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.Shard + * @memberof vtadmin.SchemaMigration * @static - * @param {vtadmin.Shard} message Shard + * @param {vtadmin.SchemaMigration} message SchemaMigration * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - Shard.toObject = function toObject(message, options) { + SchemaMigration.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; if (options.defaults) { object.cluster = null; - object.shard = null; + object.schema_migration = null; } if (message.cluster != null && message.hasOwnProperty("cluster")) object.cluster = $root.vtadmin.Cluster.toObject(message.cluster, options); - if (message.shard != null && message.hasOwnProperty("shard")) - object.shard = $root.vtctldata.Shard.toObject(message.shard, options); + if (message.schema_migration != null && message.hasOwnProperty("schema_migration")) + object.schema_migration = $root.vtctldata.SchemaMigration.toObject(message.schema_migration, options); return object; }; /** - * Converts this Shard to JSON. + * Converts this SchemaMigration to JSON. * @function toJSON - * @memberof vtadmin.Shard + * @memberof vtadmin.SchemaMigration * @instance * @returns {Object.} JSON object */ - Shard.prototype.toJSON = function toJSON() { + SchemaMigration.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for Shard + * Gets the default type url for SchemaMigration * @function getTypeUrl - * @memberof vtadmin.Shard + * @memberof vtadmin.SchemaMigration * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - Shard.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + SchemaMigration.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.Shard"; + return typeUrlPrefix + "/vtadmin.SchemaMigration"; }; - return Shard; + return SchemaMigration; })(); - vtadmin.SrvVSchema = (function() { + vtadmin.Shard = (function() { /** - * Properties of a SrvVSchema. + * Properties of a Shard. * @memberof vtadmin - * @interface ISrvVSchema - * @property {string|null} [cell] SrvVSchema cell - * @property {vtadmin.ICluster|null} [cluster] SrvVSchema cluster - * @property {vschema.ISrvVSchema|null} [srv_v_schema] SrvVSchema srv_v_schema + * @interface IShard + * @property {vtadmin.ICluster|null} [cluster] Shard cluster + * @property {vtctldata.IShard|null} [shard] Shard shard */ /** - * Constructs a new SrvVSchema. + * Constructs a new Shard. * @memberof vtadmin - * @classdesc Represents a SrvVSchema. - * @implements ISrvVSchema + * @classdesc Represents a Shard. + * @implements IShard * @constructor - * @param {vtadmin.ISrvVSchema=} [properties] Properties to set + * @param {vtadmin.IShard=} [properties] Properties to set */ - function SrvVSchema(properties) { + function Shard(properties) { if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -4765,7 +4995,245 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * SrvVSchema cell. + * Shard cluster. + * @member {vtadmin.ICluster|null|undefined} cluster + * @memberof vtadmin.Shard + * @instance + */ + Shard.prototype.cluster = null; + + /** + * Shard shard. + * @member {vtctldata.IShard|null|undefined} shard + * @memberof vtadmin.Shard + * @instance + */ + Shard.prototype.shard = null; + + /** + * Creates a new Shard instance using the specified properties. + * @function create + * @memberof vtadmin.Shard + * @static + * @param {vtadmin.IShard=} [properties] Properties to set + * @returns {vtadmin.Shard} Shard instance + */ + Shard.create = function create(properties) { + return new Shard(properties); + }; + + /** + * Encodes the specified Shard message. Does not implicitly {@link vtadmin.Shard.verify|verify} messages. + * @function encode + * @memberof vtadmin.Shard + * @static + * @param {vtadmin.IShard} message Shard message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Shard.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.cluster != null && Object.hasOwnProperty.call(message, "cluster")) + $root.vtadmin.Cluster.encode(message.cluster, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.shard != null && Object.hasOwnProperty.call(message, "shard")) + $root.vtctldata.Shard.encode(message.shard, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified Shard message, length delimited. Does not implicitly {@link vtadmin.Shard.verify|verify} messages. + * @function encodeDelimited + * @memberof vtadmin.Shard + * @static + * @param {vtadmin.IShard} message Shard message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Shard.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Shard message from the specified reader or buffer. + * @function decode + * @memberof vtadmin.Shard + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {vtadmin.Shard} Shard + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Shard.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.vtadmin.Shard(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.cluster = $root.vtadmin.Cluster.decode(reader, reader.uint32()); + break; + } + case 2: { + message.shard = $root.vtctldata.Shard.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Shard message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof vtadmin.Shard + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {vtadmin.Shard} Shard + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Shard.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Shard message. + * @function verify + * @memberof vtadmin.Shard + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Shard.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.cluster != null && message.hasOwnProperty("cluster")) { + let error = $root.vtadmin.Cluster.verify(message.cluster); + if (error) + return "cluster." + error; + } + if (message.shard != null && message.hasOwnProperty("shard")) { + let error = $root.vtctldata.Shard.verify(message.shard); + if (error) + return "shard." + error; + } + return null; + }; + + /** + * Creates a Shard message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof vtadmin.Shard + * @static + * @param {Object.} object Plain object + * @returns {vtadmin.Shard} Shard + */ + Shard.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.Shard) + return object; + let message = new $root.vtadmin.Shard(); + if (object.cluster != null) { + if (typeof object.cluster !== "object") + throw TypeError(".vtadmin.Shard.cluster: object expected"); + message.cluster = $root.vtadmin.Cluster.fromObject(object.cluster); + } + if (object.shard != null) { + if (typeof object.shard !== "object") + throw TypeError(".vtadmin.Shard.shard: object expected"); + message.shard = $root.vtctldata.Shard.fromObject(object.shard); + } + return message; + }; + + /** + * Creates a plain object from a Shard message. Also converts values to other types if specified. + * @function toObject + * @memberof vtadmin.Shard + * @static + * @param {vtadmin.Shard} message Shard + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Shard.toObject = function toObject(message, options) { + if (!options) + options = {}; + let object = {}; + if (options.defaults) { + object.cluster = null; + object.shard = null; + } + if (message.cluster != null && message.hasOwnProperty("cluster")) + object.cluster = $root.vtadmin.Cluster.toObject(message.cluster, options); + if (message.shard != null && message.hasOwnProperty("shard")) + object.shard = $root.vtctldata.Shard.toObject(message.shard, options); + return object; + }; + + /** + * Converts this Shard to JSON. + * @function toJSON + * @memberof vtadmin.Shard + * @instance + * @returns {Object.} JSON object + */ + Shard.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for Shard + * @function getTypeUrl + * @memberof vtadmin.Shard + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Shard.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/vtadmin.Shard"; + }; + + return Shard; + })(); + + vtadmin.SrvVSchema = (function() { + + /** + * Properties of a SrvVSchema. + * @memberof vtadmin + * @interface ISrvVSchema + * @property {string|null} [cell] SrvVSchema cell + * @property {vtadmin.ICluster|null} [cluster] SrvVSchema cluster + * @property {vschema.ISrvVSchema|null} [srv_v_schema] SrvVSchema srv_v_schema + */ + + /** + * Constructs a new SrvVSchema. + * @memberof vtadmin + * @classdesc Represents a SrvVSchema. + * @implements ISrvVSchema + * @constructor + * @param {vtadmin.ISrvVSchema=} [properties] Properties to set + */ + function SrvVSchema(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]]; + } + + /** + * SrvVSchema cell. * @member {string} cell * @memberof vtadmin.SrvVSchema * @instance @@ -6437,25 +6905,25 @@ export const vtadmin = $root.vtadmin = (() => { return Workflow; })(); - vtadmin.CreateKeyspaceRequest = (function() { + vtadmin.ApplySchemaRequest = (function() { /** - * Properties of a CreateKeyspaceRequest. + * Properties of an ApplySchemaRequest. * @memberof vtadmin - * @interface ICreateKeyspaceRequest - * @property {string|null} [cluster_id] CreateKeyspaceRequest cluster_id - * @property {vtctldata.ICreateKeyspaceRequest|null} [options] CreateKeyspaceRequest options + * @interface IApplySchemaRequest + * @property {string|null} [cluster_id] ApplySchemaRequest cluster_id + * @property {vtctldata.IApplySchemaRequest|null} [request] ApplySchemaRequest request */ /** - * Constructs a new CreateKeyspaceRequest. + * Constructs a new ApplySchemaRequest. * @memberof vtadmin - * @classdesc Represents a CreateKeyspaceRequest. - * @implements ICreateKeyspaceRequest + * @classdesc Represents an ApplySchemaRequest. + * @implements IApplySchemaRequest * @constructor - * @param {vtadmin.ICreateKeyspaceRequest=} [properties] Properties to set + * @param {vtadmin.IApplySchemaRequest=} [properties] Properties to set */ - function CreateKeyspaceRequest(properties) { + function ApplySchemaRequest(properties) { if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -6463,80 +6931,80 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * CreateKeyspaceRequest cluster_id. + * ApplySchemaRequest cluster_id. * @member {string} cluster_id - * @memberof vtadmin.CreateKeyspaceRequest + * @memberof vtadmin.ApplySchemaRequest * @instance */ - CreateKeyspaceRequest.prototype.cluster_id = ""; + ApplySchemaRequest.prototype.cluster_id = ""; /** - * CreateKeyspaceRequest options. - * @member {vtctldata.ICreateKeyspaceRequest|null|undefined} options - * @memberof vtadmin.CreateKeyspaceRequest + * ApplySchemaRequest request. + * @member {vtctldata.IApplySchemaRequest|null|undefined} request + * @memberof vtadmin.ApplySchemaRequest * @instance */ - CreateKeyspaceRequest.prototype.options = null; + ApplySchemaRequest.prototype.request = null; /** - * Creates a new CreateKeyspaceRequest instance using the specified properties. + * Creates a new ApplySchemaRequest instance using the specified properties. * @function create - * @memberof vtadmin.CreateKeyspaceRequest + * @memberof vtadmin.ApplySchemaRequest * @static - * @param {vtadmin.ICreateKeyspaceRequest=} [properties] Properties to set - * @returns {vtadmin.CreateKeyspaceRequest} CreateKeyspaceRequest instance + * @param {vtadmin.IApplySchemaRequest=} [properties] Properties to set + * @returns {vtadmin.ApplySchemaRequest} ApplySchemaRequest instance */ - CreateKeyspaceRequest.create = function create(properties) { - return new CreateKeyspaceRequest(properties); + ApplySchemaRequest.create = function create(properties) { + return new ApplySchemaRequest(properties); }; /** - * Encodes the specified CreateKeyspaceRequest message. Does not implicitly {@link vtadmin.CreateKeyspaceRequest.verify|verify} messages. + * Encodes the specified ApplySchemaRequest message. Does not implicitly {@link vtadmin.ApplySchemaRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.CreateKeyspaceRequest + * @memberof vtadmin.ApplySchemaRequest * @static - * @param {vtadmin.ICreateKeyspaceRequest} message CreateKeyspaceRequest message or plain object to encode + * @param {vtadmin.IApplySchemaRequest} message ApplySchemaRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - CreateKeyspaceRequest.encode = function encode(message, writer) { + ApplySchemaRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.vtctldata.CreateKeyspaceRequest.encode(message.options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.request != null && Object.hasOwnProperty.call(message, "request")) + $root.vtctldata.ApplySchemaRequest.encode(message.request, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); return writer; }; /** - * Encodes the specified CreateKeyspaceRequest message, length delimited. Does not implicitly {@link vtadmin.CreateKeyspaceRequest.verify|verify} messages. + * Encodes the specified ApplySchemaRequest message, length delimited. Does not implicitly {@link vtadmin.ApplySchemaRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.CreateKeyspaceRequest + * @memberof vtadmin.ApplySchemaRequest * @static - * @param {vtadmin.ICreateKeyspaceRequest} message CreateKeyspaceRequest message or plain object to encode + * @param {vtadmin.IApplySchemaRequest} message ApplySchemaRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - CreateKeyspaceRequest.encodeDelimited = function encodeDelimited(message, writer) { + ApplySchemaRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a CreateKeyspaceRequest message from the specified reader or buffer. + * Decodes an ApplySchemaRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.CreateKeyspaceRequest + * @memberof vtadmin.ApplySchemaRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.CreateKeyspaceRequest} CreateKeyspaceRequest + * @returns {vtadmin.ApplySchemaRequest} ApplySchemaRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateKeyspaceRequest.decode = function decode(reader, length) { + ApplySchemaRequest.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.vtadmin.CreateKeyspaceRequest(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.ApplySchemaRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { @@ -6545,7 +7013,7 @@ export const vtadmin = $root.vtadmin = (() => { break; } case 2: { - message.options = $root.vtctldata.CreateKeyspaceRequest.decode(reader, reader.uint32()); + message.request = $root.vtctldata.ApplySchemaRequest.decode(reader, reader.uint32()); break; } default: @@ -6557,136 +7025,137 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a CreateKeyspaceRequest message from the specified reader or buffer, length delimited. + * Decodes an ApplySchemaRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.CreateKeyspaceRequest + * @memberof vtadmin.ApplySchemaRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.CreateKeyspaceRequest} CreateKeyspaceRequest + * @returns {vtadmin.ApplySchemaRequest} ApplySchemaRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateKeyspaceRequest.decodeDelimited = function decodeDelimited(reader) { + ApplySchemaRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a CreateKeyspaceRequest message. + * Verifies an ApplySchemaRequest message. * @function verify - * @memberof vtadmin.CreateKeyspaceRequest + * @memberof vtadmin.ApplySchemaRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateKeyspaceRequest.verify = function verify(message) { + ApplySchemaRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) if (!$util.isString(message.cluster_id)) return "cluster_id: string expected"; - if (message.options != null && message.hasOwnProperty("options")) { - let error = $root.vtctldata.CreateKeyspaceRequest.verify(message.options); + if (message.request != null && message.hasOwnProperty("request")) { + let error = $root.vtctldata.ApplySchemaRequest.verify(message.request); if (error) - return "options." + error; + return "request." + error; } return null; }; /** - * Creates a CreateKeyspaceRequest message from a plain object. Also converts values to their respective internal types. + * Creates an ApplySchemaRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.CreateKeyspaceRequest + * @memberof vtadmin.ApplySchemaRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.CreateKeyspaceRequest} CreateKeyspaceRequest + * @returns {vtadmin.ApplySchemaRequest} ApplySchemaRequest */ - CreateKeyspaceRequest.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.CreateKeyspaceRequest) + ApplySchemaRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.ApplySchemaRequest) return object; - let message = new $root.vtadmin.CreateKeyspaceRequest(); + let message = new $root.vtadmin.ApplySchemaRequest(); if (object.cluster_id != null) message.cluster_id = String(object.cluster_id); - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".vtadmin.CreateKeyspaceRequest.options: object expected"); - message.options = $root.vtctldata.CreateKeyspaceRequest.fromObject(object.options); + if (object.request != null) { + if (typeof object.request !== "object") + throw TypeError(".vtadmin.ApplySchemaRequest.request: object expected"); + message.request = $root.vtctldata.ApplySchemaRequest.fromObject(object.request); } return message; }; /** - * Creates a plain object from a CreateKeyspaceRequest message. Also converts values to other types if specified. + * Creates a plain object from an ApplySchemaRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.CreateKeyspaceRequest + * @memberof vtadmin.ApplySchemaRequest * @static - * @param {vtadmin.CreateKeyspaceRequest} message CreateKeyspaceRequest + * @param {vtadmin.ApplySchemaRequest} message ApplySchemaRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - CreateKeyspaceRequest.toObject = function toObject(message, options) { + ApplySchemaRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; if (options.defaults) { object.cluster_id = ""; - object.options = null; + object.request = null; } if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) object.cluster_id = message.cluster_id; - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.vtctldata.CreateKeyspaceRequest.toObject(message.options, options); + if (message.request != null && message.hasOwnProperty("request")) + object.request = $root.vtctldata.ApplySchemaRequest.toObject(message.request, options); return object; }; /** - * Converts this CreateKeyspaceRequest to JSON. + * Converts this ApplySchemaRequest to JSON. * @function toJSON - * @memberof vtadmin.CreateKeyspaceRequest + * @memberof vtadmin.ApplySchemaRequest * @instance * @returns {Object.} JSON object */ - CreateKeyspaceRequest.prototype.toJSON = function toJSON() { + ApplySchemaRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for CreateKeyspaceRequest + * Gets the default type url for ApplySchemaRequest * @function getTypeUrl - * @memberof vtadmin.CreateKeyspaceRequest + * @memberof vtadmin.ApplySchemaRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - CreateKeyspaceRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + ApplySchemaRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.CreateKeyspaceRequest"; + return typeUrlPrefix + "/vtadmin.ApplySchemaRequest"; }; - return CreateKeyspaceRequest; + return ApplySchemaRequest; })(); - vtadmin.CreateKeyspaceResponse = (function() { + vtadmin.CancelSchemaMigrationRequest = (function() { /** - * Properties of a CreateKeyspaceResponse. + * Properties of a CancelSchemaMigrationRequest. * @memberof vtadmin - * @interface ICreateKeyspaceResponse - * @property {vtadmin.IKeyspace|null} [keyspace] CreateKeyspaceResponse keyspace + * @interface ICancelSchemaMigrationRequest + * @property {string|null} [cluster_id] CancelSchemaMigrationRequest cluster_id + * @property {vtctldata.ICancelSchemaMigrationRequest|null} [request] CancelSchemaMigrationRequest request */ /** - * Constructs a new CreateKeyspaceResponse. + * Constructs a new CancelSchemaMigrationRequest. * @memberof vtadmin - * @classdesc Represents a CreateKeyspaceResponse. - * @implements ICreateKeyspaceResponse + * @classdesc Represents a CancelSchemaMigrationRequest. + * @implements ICancelSchemaMigrationRequest * @constructor - * @param {vtadmin.ICreateKeyspaceResponse=} [properties] Properties to set + * @param {vtadmin.ICancelSchemaMigrationRequest=} [properties] Properties to set */ - function CreateKeyspaceResponse(properties) { + function CancelSchemaMigrationRequest(properties) { if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -6694,75 +7163,89 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * CreateKeyspaceResponse keyspace. - * @member {vtadmin.IKeyspace|null|undefined} keyspace - * @memberof vtadmin.CreateKeyspaceResponse + * CancelSchemaMigrationRequest cluster_id. + * @member {string} cluster_id + * @memberof vtadmin.CancelSchemaMigrationRequest * @instance */ - CreateKeyspaceResponse.prototype.keyspace = null; + CancelSchemaMigrationRequest.prototype.cluster_id = ""; /** - * Creates a new CreateKeyspaceResponse instance using the specified properties. + * CancelSchemaMigrationRequest request. + * @member {vtctldata.ICancelSchemaMigrationRequest|null|undefined} request + * @memberof vtadmin.CancelSchemaMigrationRequest + * @instance + */ + CancelSchemaMigrationRequest.prototype.request = null; + + /** + * Creates a new CancelSchemaMigrationRequest instance using the specified properties. * @function create - * @memberof vtadmin.CreateKeyspaceResponse + * @memberof vtadmin.CancelSchemaMigrationRequest * @static - * @param {vtadmin.ICreateKeyspaceResponse=} [properties] Properties to set - * @returns {vtadmin.CreateKeyspaceResponse} CreateKeyspaceResponse instance + * @param {vtadmin.ICancelSchemaMigrationRequest=} [properties] Properties to set + * @returns {vtadmin.CancelSchemaMigrationRequest} CancelSchemaMigrationRequest instance */ - CreateKeyspaceResponse.create = function create(properties) { - return new CreateKeyspaceResponse(properties); + CancelSchemaMigrationRequest.create = function create(properties) { + return new CancelSchemaMigrationRequest(properties); }; /** - * Encodes the specified CreateKeyspaceResponse message. Does not implicitly {@link vtadmin.CreateKeyspaceResponse.verify|verify} messages. + * Encodes the specified CancelSchemaMigrationRequest message. Does not implicitly {@link vtadmin.CancelSchemaMigrationRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.CreateKeyspaceResponse + * @memberof vtadmin.CancelSchemaMigrationRequest * @static - * @param {vtadmin.ICreateKeyspaceResponse} message CreateKeyspaceResponse message or plain object to encode + * @param {vtadmin.ICancelSchemaMigrationRequest} message CancelSchemaMigrationRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - CreateKeyspaceResponse.encode = function encode(message, writer) { + CancelSchemaMigrationRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.keyspace != null && Object.hasOwnProperty.call(message, "keyspace")) - $root.vtadmin.Keyspace.encode(message.keyspace, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); + if (message.request != null && Object.hasOwnProperty.call(message, "request")) + $root.vtctldata.CancelSchemaMigrationRequest.encode(message.request, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); return writer; }; /** - * Encodes the specified CreateKeyspaceResponse message, length delimited. Does not implicitly {@link vtadmin.CreateKeyspaceResponse.verify|verify} messages. + * Encodes the specified CancelSchemaMigrationRequest message, length delimited. Does not implicitly {@link vtadmin.CancelSchemaMigrationRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.CreateKeyspaceResponse + * @memberof vtadmin.CancelSchemaMigrationRequest * @static - * @param {vtadmin.ICreateKeyspaceResponse} message CreateKeyspaceResponse message or plain object to encode + * @param {vtadmin.ICancelSchemaMigrationRequest} message CancelSchemaMigrationRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - CreateKeyspaceResponse.encodeDelimited = function encodeDelimited(message, writer) { + CancelSchemaMigrationRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a CreateKeyspaceResponse message from the specified reader or buffer. + * Decodes a CancelSchemaMigrationRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.CreateKeyspaceResponse + * @memberof vtadmin.CancelSchemaMigrationRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.CreateKeyspaceResponse} CreateKeyspaceResponse + * @returns {vtadmin.CancelSchemaMigrationRequest} CancelSchemaMigrationRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateKeyspaceResponse.decode = function decode(reader, length) { + CancelSchemaMigrationRequest.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.vtadmin.CreateKeyspaceResponse(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.CancelSchemaMigrationRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - message.keyspace = $root.vtadmin.Keyspace.decode(reader, reader.uint32()); + message.cluster_id = reader.string(); + break; + } + case 2: { + message.request = $root.vtctldata.CancelSchemaMigrationRequest.decode(reader, reader.uint32()); break; } default: @@ -6774,128 +7257,137 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a CreateKeyspaceResponse message from the specified reader or buffer, length delimited. + * Decodes a CancelSchemaMigrationRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.CreateKeyspaceResponse + * @memberof vtadmin.CancelSchemaMigrationRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.CreateKeyspaceResponse} CreateKeyspaceResponse + * @returns {vtadmin.CancelSchemaMigrationRequest} CancelSchemaMigrationRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateKeyspaceResponse.decodeDelimited = function decodeDelimited(reader) { + CancelSchemaMigrationRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a CreateKeyspaceResponse message. + * Verifies a CancelSchemaMigrationRequest message. * @function verify - * @memberof vtadmin.CreateKeyspaceResponse + * @memberof vtadmin.CancelSchemaMigrationRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateKeyspaceResponse.verify = function verify(message) { + CancelSchemaMigrationRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.keyspace != null && message.hasOwnProperty("keyspace")) { - let error = $root.vtadmin.Keyspace.verify(message.keyspace); + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + if (!$util.isString(message.cluster_id)) + return "cluster_id: string expected"; + if (message.request != null && message.hasOwnProperty("request")) { + let error = $root.vtctldata.CancelSchemaMigrationRequest.verify(message.request); if (error) - return "keyspace." + error; + return "request." + error; } return null; }; /** - * Creates a CreateKeyspaceResponse message from a plain object. Also converts values to their respective internal types. + * Creates a CancelSchemaMigrationRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.CreateKeyspaceResponse + * @memberof vtadmin.CancelSchemaMigrationRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.CreateKeyspaceResponse} CreateKeyspaceResponse + * @returns {vtadmin.CancelSchemaMigrationRequest} CancelSchemaMigrationRequest */ - CreateKeyspaceResponse.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.CreateKeyspaceResponse) + CancelSchemaMigrationRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.CancelSchemaMigrationRequest) return object; - let message = new $root.vtadmin.CreateKeyspaceResponse(); - if (object.keyspace != null) { - if (typeof object.keyspace !== "object") - throw TypeError(".vtadmin.CreateKeyspaceResponse.keyspace: object expected"); - message.keyspace = $root.vtadmin.Keyspace.fromObject(object.keyspace); + let message = new $root.vtadmin.CancelSchemaMigrationRequest(); + if (object.cluster_id != null) + message.cluster_id = String(object.cluster_id); + if (object.request != null) { + if (typeof object.request !== "object") + throw TypeError(".vtadmin.CancelSchemaMigrationRequest.request: object expected"); + message.request = $root.vtctldata.CancelSchemaMigrationRequest.fromObject(object.request); } return message; }; /** - * Creates a plain object from a CreateKeyspaceResponse message. Also converts values to other types if specified. + * Creates a plain object from a CancelSchemaMigrationRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.CreateKeyspaceResponse + * @memberof vtadmin.CancelSchemaMigrationRequest * @static - * @param {vtadmin.CreateKeyspaceResponse} message CreateKeyspaceResponse + * @param {vtadmin.CancelSchemaMigrationRequest} message CancelSchemaMigrationRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - CreateKeyspaceResponse.toObject = function toObject(message, options) { + CancelSchemaMigrationRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; - if (options.defaults) - object.keyspace = null; - if (message.keyspace != null && message.hasOwnProperty("keyspace")) - object.keyspace = $root.vtadmin.Keyspace.toObject(message.keyspace, options); + if (options.defaults) { + object.cluster_id = ""; + object.request = null; + } + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + object.cluster_id = message.cluster_id; + if (message.request != null && message.hasOwnProperty("request")) + object.request = $root.vtctldata.CancelSchemaMigrationRequest.toObject(message.request, options); return object; }; /** - * Converts this CreateKeyspaceResponse to JSON. + * Converts this CancelSchemaMigrationRequest to JSON. * @function toJSON - * @memberof vtadmin.CreateKeyspaceResponse + * @memberof vtadmin.CancelSchemaMigrationRequest * @instance * @returns {Object.} JSON object */ - CreateKeyspaceResponse.prototype.toJSON = function toJSON() { + CancelSchemaMigrationRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for CreateKeyspaceResponse + * Gets the default type url for CancelSchemaMigrationRequest * @function getTypeUrl - * @memberof vtadmin.CreateKeyspaceResponse + * @memberof vtadmin.CancelSchemaMigrationRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - CreateKeyspaceResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + CancelSchemaMigrationRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.CreateKeyspaceResponse"; + return typeUrlPrefix + "/vtadmin.CancelSchemaMigrationRequest"; }; - return CreateKeyspaceResponse; + return CancelSchemaMigrationRequest; })(); - vtadmin.CreateShardRequest = (function() { + vtadmin.CleanupSchemaMigrationRequest = (function() { /** - * Properties of a CreateShardRequest. + * Properties of a CleanupSchemaMigrationRequest. * @memberof vtadmin - * @interface ICreateShardRequest - * @property {string|null} [cluster_id] CreateShardRequest cluster_id - * @property {vtctldata.ICreateShardRequest|null} [options] CreateShardRequest options + * @interface ICleanupSchemaMigrationRequest + * @property {string|null} [cluster_id] CleanupSchemaMigrationRequest cluster_id + * @property {vtctldata.ICleanupSchemaMigrationRequest|null} [request] CleanupSchemaMigrationRequest request */ /** - * Constructs a new CreateShardRequest. + * Constructs a new CleanupSchemaMigrationRequest. * @memberof vtadmin - * @classdesc Represents a CreateShardRequest. - * @implements ICreateShardRequest + * @classdesc Represents a CleanupSchemaMigrationRequest. + * @implements ICleanupSchemaMigrationRequest * @constructor - * @param {vtadmin.ICreateShardRequest=} [properties] Properties to set + * @param {vtadmin.ICleanupSchemaMigrationRequest=} [properties] Properties to set */ - function CreateShardRequest(properties) { + function CleanupSchemaMigrationRequest(properties) { if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -6903,80 +7395,80 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * CreateShardRequest cluster_id. + * CleanupSchemaMigrationRequest cluster_id. * @member {string} cluster_id - * @memberof vtadmin.CreateShardRequest + * @memberof vtadmin.CleanupSchemaMigrationRequest * @instance */ - CreateShardRequest.prototype.cluster_id = ""; + CleanupSchemaMigrationRequest.prototype.cluster_id = ""; /** - * CreateShardRequest options. - * @member {vtctldata.ICreateShardRequest|null|undefined} options - * @memberof vtadmin.CreateShardRequest + * CleanupSchemaMigrationRequest request. + * @member {vtctldata.ICleanupSchemaMigrationRequest|null|undefined} request + * @memberof vtadmin.CleanupSchemaMigrationRequest * @instance */ - CreateShardRequest.prototype.options = null; + CleanupSchemaMigrationRequest.prototype.request = null; /** - * Creates a new CreateShardRequest instance using the specified properties. + * Creates a new CleanupSchemaMigrationRequest instance using the specified properties. * @function create - * @memberof vtadmin.CreateShardRequest + * @memberof vtadmin.CleanupSchemaMigrationRequest * @static - * @param {vtadmin.ICreateShardRequest=} [properties] Properties to set - * @returns {vtadmin.CreateShardRequest} CreateShardRequest instance + * @param {vtadmin.ICleanupSchemaMigrationRequest=} [properties] Properties to set + * @returns {vtadmin.CleanupSchemaMigrationRequest} CleanupSchemaMigrationRequest instance */ - CreateShardRequest.create = function create(properties) { - return new CreateShardRequest(properties); + CleanupSchemaMigrationRequest.create = function create(properties) { + return new CleanupSchemaMigrationRequest(properties); }; /** - * Encodes the specified CreateShardRequest message. Does not implicitly {@link vtadmin.CreateShardRequest.verify|verify} messages. + * Encodes the specified CleanupSchemaMigrationRequest message. Does not implicitly {@link vtadmin.CleanupSchemaMigrationRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.CreateShardRequest + * @memberof vtadmin.CleanupSchemaMigrationRequest * @static - * @param {vtadmin.ICreateShardRequest} message CreateShardRequest message or plain object to encode + * @param {vtadmin.ICleanupSchemaMigrationRequest} message CleanupSchemaMigrationRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - CreateShardRequest.encode = function encode(message, writer) { + CleanupSchemaMigrationRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.vtctldata.CreateShardRequest.encode(message.options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.request != null && Object.hasOwnProperty.call(message, "request")) + $root.vtctldata.CleanupSchemaMigrationRequest.encode(message.request, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); return writer; }; /** - * Encodes the specified CreateShardRequest message, length delimited. Does not implicitly {@link vtadmin.CreateShardRequest.verify|verify} messages. + * Encodes the specified CleanupSchemaMigrationRequest message, length delimited. Does not implicitly {@link vtadmin.CleanupSchemaMigrationRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.CreateShardRequest + * @memberof vtadmin.CleanupSchemaMigrationRequest * @static - * @param {vtadmin.ICreateShardRequest} message CreateShardRequest message or plain object to encode + * @param {vtadmin.ICleanupSchemaMigrationRequest} message CleanupSchemaMigrationRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - CreateShardRequest.encodeDelimited = function encodeDelimited(message, writer) { + CleanupSchemaMigrationRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a CreateShardRequest message from the specified reader or buffer. + * Decodes a CleanupSchemaMigrationRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.CreateShardRequest + * @memberof vtadmin.CleanupSchemaMigrationRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.CreateShardRequest} CreateShardRequest + * @returns {vtadmin.CleanupSchemaMigrationRequest} CleanupSchemaMigrationRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateShardRequest.decode = function decode(reader, length) { + CleanupSchemaMigrationRequest.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.vtadmin.CreateShardRequest(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.CleanupSchemaMigrationRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { @@ -6985,7 +7477,7 @@ export const vtadmin = $root.vtadmin = (() => { break; } case 2: { - message.options = $root.vtctldata.CreateShardRequest.decode(reader, reader.uint32()); + message.request = $root.vtctldata.CleanupSchemaMigrationRequest.decode(reader, reader.uint32()); break; } default: @@ -6997,137 +7489,137 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a CreateShardRequest message from the specified reader or buffer, length delimited. + * Decodes a CleanupSchemaMigrationRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.CreateShardRequest + * @memberof vtadmin.CleanupSchemaMigrationRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.CreateShardRequest} CreateShardRequest + * @returns {vtadmin.CleanupSchemaMigrationRequest} CleanupSchemaMigrationRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateShardRequest.decodeDelimited = function decodeDelimited(reader) { + CleanupSchemaMigrationRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a CreateShardRequest message. + * Verifies a CleanupSchemaMigrationRequest message. * @function verify - * @memberof vtadmin.CreateShardRequest + * @memberof vtadmin.CleanupSchemaMigrationRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateShardRequest.verify = function verify(message) { + CleanupSchemaMigrationRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) if (!$util.isString(message.cluster_id)) return "cluster_id: string expected"; - if (message.options != null && message.hasOwnProperty("options")) { - let error = $root.vtctldata.CreateShardRequest.verify(message.options); + if (message.request != null && message.hasOwnProperty("request")) { + let error = $root.vtctldata.CleanupSchemaMigrationRequest.verify(message.request); if (error) - return "options." + error; + return "request." + error; } return null; }; /** - * Creates a CreateShardRequest message from a plain object. Also converts values to their respective internal types. + * Creates a CleanupSchemaMigrationRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.CreateShardRequest + * @memberof vtadmin.CleanupSchemaMigrationRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.CreateShardRequest} CreateShardRequest + * @returns {vtadmin.CleanupSchemaMigrationRequest} CleanupSchemaMigrationRequest */ - CreateShardRequest.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.CreateShardRequest) + CleanupSchemaMigrationRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.CleanupSchemaMigrationRequest) return object; - let message = new $root.vtadmin.CreateShardRequest(); + let message = new $root.vtadmin.CleanupSchemaMigrationRequest(); if (object.cluster_id != null) message.cluster_id = String(object.cluster_id); - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".vtadmin.CreateShardRequest.options: object expected"); - message.options = $root.vtctldata.CreateShardRequest.fromObject(object.options); + if (object.request != null) { + if (typeof object.request !== "object") + throw TypeError(".vtadmin.CleanupSchemaMigrationRequest.request: object expected"); + message.request = $root.vtctldata.CleanupSchemaMigrationRequest.fromObject(object.request); } return message; }; /** - * Creates a plain object from a CreateShardRequest message. Also converts values to other types if specified. + * Creates a plain object from a CleanupSchemaMigrationRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.CreateShardRequest + * @memberof vtadmin.CleanupSchemaMigrationRequest * @static - * @param {vtadmin.CreateShardRequest} message CreateShardRequest + * @param {vtadmin.CleanupSchemaMigrationRequest} message CleanupSchemaMigrationRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - CreateShardRequest.toObject = function toObject(message, options) { + CleanupSchemaMigrationRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; if (options.defaults) { object.cluster_id = ""; - object.options = null; + object.request = null; } if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) object.cluster_id = message.cluster_id; - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.vtctldata.CreateShardRequest.toObject(message.options, options); + if (message.request != null && message.hasOwnProperty("request")) + object.request = $root.vtctldata.CleanupSchemaMigrationRequest.toObject(message.request, options); return object; }; /** - * Converts this CreateShardRequest to JSON. + * Converts this CleanupSchemaMigrationRequest to JSON. * @function toJSON - * @memberof vtadmin.CreateShardRequest + * @memberof vtadmin.CleanupSchemaMigrationRequest * @instance * @returns {Object.} JSON object */ - CreateShardRequest.prototype.toJSON = function toJSON() { + CleanupSchemaMigrationRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for CreateShardRequest + * Gets the default type url for CleanupSchemaMigrationRequest * @function getTypeUrl - * @memberof vtadmin.CreateShardRequest + * @memberof vtadmin.CleanupSchemaMigrationRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - CreateShardRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + CleanupSchemaMigrationRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.CreateShardRequest"; + return typeUrlPrefix + "/vtadmin.CleanupSchemaMigrationRequest"; }; - return CreateShardRequest; + return CleanupSchemaMigrationRequest; })(); - vtadmin.DeleteKeyspaceRequest = (function() { + vtadmin.CompleteSchemaMigrationRequest = (function() { /** - * Properties of a DeleteKeyspaceRequest. + * Properties of a CompleteSchemaMigrationRequest. * @memberof vtadmin - * @interface IDeleteKeyspaceRequest - * @property {string|null} [cluster_id] DeleteKeyspaceRequest cluster_id - * @property {vtctldata.IDeleteKeyspaceRequest|null} [options] DeleteKeyspaceRequest options + * @interface ICompleteSchemaMigrationRequest + * @property {string|null} [cluster_id] CompleteSchemaMigrationRequest cluster_id + * @property {vtctldata.ICompleteSchemaMigrationRequest|null} [request] CompleteSchemaMigrationRequest request */ /** - * Constructs a new DeleteKeyspaceRequest. + * Constructs a new CompleteSchemaMigrationRequest. * @memberof vtadmin - * @classdesc Represents a DeleteKeyspaceRequest. - * @implements IDeleteKeyspaceRequest + * @classdesc Represents a CompleteSchemaMigrationRequest. + * @implements ICompleteSchemaMigrationRequest * @constructor - * @param {vtadmin.IDeleteKeyspaceRequest=} [properties] Properties to set + * @param {vtadmin.ICompleteSchemaMigrationRequest=} [properties] Properties to set */ - function DeleteKeyspaceRequest(properties) { + function CompleteSchemaMigrationRequest(properties) { if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -7135,80 +7627,80 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * DeleteKeyspaceRequest cluster_id. + * CompleteSchemaMigrationRequest cluster_id. * @member {string} cluster_id - * @memberof vtadmin.DeleteKeyspaceRequest + * @memberof vtadmin.CompleteSchemaMigrationRequest * @instance */ - DeleteKeyspaceRequest.prototype.cluster_id = ""; + CompleteSchemaMigrationRequest.prototype.cluster_id = ""; /** - * DeleteKeyspaceRequest options. - * @member {vtctldata.IDeleteKeyspaceRequest|null|undefined} options - * @memberof vtadmin.DeleteKeyspaceRequest + * CompleteSchemaMigrationRequest request. + * @member {vtctldata.ICompleteSchemaMigrationRequest|null|undefined} request + * @memberof vtadmin.CompleteSchemaMigrationRequest * @instance */ - DeleteKeyspaceRequest.prototype.options = null; + CompleteSchemaMigrationRequest.prototype.request = null; /** - * Creates a new DeleteKeyspaceRequest instance using the specified properties. + * Creates a new CompleteSchemaMigrationRequest instance using the specified properties. * @function create - * @memberof vtadmin.DeleteKeyspaceRequest + * @memberof vtadmin.CompleteSchemaMigrationRequest * @static - * @param {vtadmin.IDeleteKeyspaceRequest=} [properties] Properties to set - * @returns {vtadmin.DeleteKeyspaceRequest} DeleteKeyspaceRequest instance + * @param {vtadmin.ICompleteSchemaMigrationRequest=} [properties] Properties to set + * @returns {vtadmin.CompleteSchemaMigrationRequest} CompleteSchemaMigrationRequest instance */ - DeleteKeyspaceRequest.create = function create(properties) { - return new DeleteKeyspaceRequest(properties); + CompleteSchemaMigrationRequest.create = function create(properties) { + return new CompleteSchemaMigrationRequest(properties); }; /** - * Encodes the specified DeleteKeyspaceRequest message. Does not implicitly {@link vtadmin.DeleteKeyspaceRequest.verify|verify} messages. + * Encodes the specified CompleteSchemaMigrationRequest message. Does not implicitly {@link vtadmin.CompleteSchemaMigrationRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.DeleteKeyspaceRequest + * @memberof vtadmin.CompleteSchemaMigrationRequest * @static - * @param {vtadmin.IDeleteKeyspaceRequest} message DeleteKeyspaceRequest message or plain object to encode + * @param {vtadmin.ICompleteSchemaMigrationRequest} message CompleteSchemaMigrationRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - DeleteKeyspaceRequest.encode = function encode(message, writer) { + CompleteSchemaMigrationRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.vtctldata.DeleteKeyspaceRequest.encode(message.options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.request != null && Object.hasOwnProperty.call(message, "request")) + $root.vtctldata.CompleteSchemaMigrationRequest.encode(message.request, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); return writer; }; /** - * Encodes the specified DeleteKeyspaceRequest message, length delimited. Does not implicitly {@link vtadmin.DeleteKeyspaceRequest.verify|verify} messages. + * Encodes the specified CompleteSchemaMigrationRequest message, length delimited. Does not implicitly {@link vtadmin.CompleteSchemaMigrationRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.DeleteKeyspaceRequest + * @memberof vtadmin.CompleteSchemaMigrationRequest * @static - * @param {vtadmin.IDeleteKeyspaceRequest} message DeleteKeyspaceRequest message or plain object to encode + * @param {vtadmin.ICompleteSchemaMigrationRequest} message CompleteSchemaMigrationRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - DeleteKeyspaceRequest.encodeDelimited = function encodeDelimited(message, writer) { + CompleteSchemaMigrationRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a DeleteKeyspaceRequest message from the specified reader or buffer. + * Decodes a CompleteSchemaMigrationRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.DeleteKeyspaceRequest + * @memberof vtadmin.CompleteSchemaMigrationRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.DeleteKeyspaceRequest} DeleteKeyspaceRequest + * @returns {vtadmin.CompleteSchemaMigrationRequest} CompleteSchemaMigrationRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteKeyspaceRequest.decode = function decode(reader, length) { + CompleteSchemaMigrationRequest.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.vtadmin.DeleteKeyspaceRequest(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.CompleteSchemaMigrationRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { @@ -7217,7 +7709,7 @@ export const vtadmin = $root.vtadmin = (() => { break; } case 2: { - message.options = $root.vtctldata.DeleteKeyspaceRequest.decode(reader, reader.uint32()); + message.request = $root.vtctldata.CompleteSchemaMigrationRequest.decode(reader, reader.uint32()); break; } default: @@ -7229,137 +7721,137 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a DeleteKeyspaceRequest message from the specified reader or buffer, length delimited. + * Decodes a CompleteSchemaMigrationRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.DeleteKeyspaceRequest + * @memberof vtadmin.CompleteSchemaMigrationRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.DeleteKeyspaceRequest} DeleteKeyspaceRequest + * @returns {vtadmin.CompleteSchemaMigrationRequest} CompleteSchemaMigrationRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteKeyspaceRequest.decodeDelimited = function decodeDelimited(reader) { + CompleteSchemaMigrationRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a DeleteKeyspaceRequest message. + * Verifies a CompleteSchemaMigrationRequest message. * @function verify - * @memberof vtadmin.DeleteKeyspaceRequest + * @memberof vtadmin.CompleteSchemaMigrationRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteKeyspaceRequest.verify = function verify(message) { + CompleteSchemaMigrationRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) if (!$util.isString(message.cluster_id)) return "cluster_id: string expected"; - if (message.options != null && message.hasOwnProperty("options")) { - let error = $root.vtctldata.DeleteKeyspaceRequest.verify(message.options); + if (message.request != null && message.hasOwnProperty("request")) { + let error = $root.vtctldata.CompleteSchemaMigrationRequest.verify(message.request); if (error) - return "options." + error; + return "request." + error; } return null; }; /** - * Creates a DeleteKeyspaceRequest message from a plain object. Also converts values to their respective internal types. + * Creates a CompleteSchemaMigrationRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.DeleteKeyspaceRequest + * @memberof vtadmin.CompleteSchemaMigrationRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.DeleteKeyspaceRequest} DeleteKeyspaceRequest + * @returns {vtadmin.CompleteSchemaMigrationRequest} CompleteSchemaMigrationRequest */ - DeleteKeyspaceRequest.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.DeleteKeyspaceRequest) + CompleteSchemaMigrationRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.CompleteSchemaMigrationRequest) return object; - let message = new $root.vtadmin.DeleteKeyspaceRequest(); + let message = new $root.vtadmin.CompleteSchemaMigrationRequest(); if (object.cluster_id != null) message.cluster_id = String(object.cluster_id); - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".vtadmin.DeleteKeyspaceRequest.options: object expected"); - message.options = $root.vtctldata.DeleteKeyspaceRequest.fromObject(object.options); + if (object.request != null) { + if (typeof object.request !== "object") + throw TypeError(".vtadmin.CompleteSchemaMigrationRequest.request: object expected"); + message.request = $root.vtctldata.CompleteSchemaMigrationRequest.fromObject(object.request); } return message; }; /** - * Creates a plain object from a DeleteKeyspaceRequest message. Also converts values to other types if specified. + * Creates a plain object from a CompleteSchemaMigrationRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.DeleteKeyspaceRequest + * @memberof vtadmin.CompleteSchemaMigrationRequest * @static - * @param {vtadmin.DeleteKeyspaceRequest} message DeleteKeyspaceRequest + * @param {vtadmin.CompleteSchemaMigrationRequest} message CompleteSchemaMigrationRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - DeleteKeyspaceRequest.toObject = function toObject(message, options) { + CompleteSchemaMigrationRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; if (options.defaults) { object.cluster_id = ""; - object.options = null; + object.request = null; } if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) object.cluster_id = message.cluster_id; - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.vtctldata.DeleteKeyspaceRequest.toObject(message.options, options); + if (message.request != null && message.hasOwnProperty("request")) + object.request = $root.vtctldata.CompleteSchemaMigrationRequest.toObject(message.request, options); return object; }; /** - * Converts this DeleteKeyspaceRequest to JSON. + * Converts this CompleteSchemaMigrationRequest to JSON. * @function toJSON - * @memberof vtadmin.DeleteKeyspaceRequest + * @memberof vtadmin.CompleteSchemaMigrationRequest * @instance * @returns {Object.} JSON object */ - DeleteKeyspaceRequest.prototype.toJSON = function toJSON() { + CompleteSchemaMigrationRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for DeleteKeyspaceRequest + * Gets the default type url for CompleteSchemaMigrationRequest * @function getTypeUrl - * @memberof vtadmin.DeleteKeyspaceRequest + * @memberof vtadmin.CompleteSchemaMigrationRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - DeleteKeyspaceRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + CompleteSchemaMigrationRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.DeleteKeyspaceRequest"; + return typeUrlPrefix + "/vtadmin.CompleteSchemaMigrationRequest"; }; - return DeleteKeyspaceRequest; + return CompleteSchemaMigrationRequest; })(); - vtadmin.DeleteShardsRequest = (function() { + vtadmin.CreateKeyspaceRequest = (function() { /** - * Properties of a DeleteShardsRequest. + * Properties of a CreateKeyspaceRequest. * @memberof vtadmin - * @interface IDeleteShardsRequest - * @property {string|null} [cluster_id] DeleteShardsRequest cluster_id - * @property {vtctldata.IDeleteShardsRequest|null} [options] DeleteShardsRequest options + * @interface ICreateKeyspaceRequest + * @property {string|null} [cluster_id] CreateKeyspaceRequest cluster_id + * @property {vtctldata.ICreateKeyspaceRequest|null} [options] CreateKeyspaceRequest options */ /** - * Constructs a new DeleteShardsRequest. + * Constructs a new CreateKeyspaceRequest. * @memberof vtadmin - * @classdesc Represents a DeleteShardsRequest. - * @implements IDeleteShardsRequest + * @classdesc Represents a CreateKeyspaceRequest. + * @implements ICreateKeyspaceRequest * @constructor - * @param {vtadmin.IDeleteShardsRequest=} [properties] Properties to set + * @param {vtadmin.ICreateKeyspaceRequest=} [properties] Properties to set */ - function DeleteShardsRequest(properties) { + function CreateKeyspaceRequest(properties) { if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -7367,80 +7859,80 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * DeleteShardsRequest cluster_id. + * CreateKeyspaceRequest cluster_id. * @member {string} cluster_id - * @memberof vtadmin.DeleteShardsRequest + * @memberof vtadmin.CreateKeyspaceRequest * @instance */ - DeleteShardsRequest.prototype.cluster_id = ""; + CreateKeyspaceRequest.prototype.cluster_id = ""; /** - * DeleteShardsRequest options. - * @member {vtctldata.IDeleteShardsRequest|null|undefined} options - * @memberof vtadmin.DeleteShardsRequest + * CreateKeyspaceRequest options. + * @member {vtctldata.ICreateKeyspaceRequest|null|undefined} options + * @memberof vtadmin.CreateKeyspaceRequest * @instance */ - DeleteShardsRequest.prototype.options = null; + CreateKeyspaceRequest.prototype.options = null; /** - * Creates a new DeleteShardsRequest instance using the specified properties. + * Creates a new CreateKeyspaceRequest instance using the specified properties. * @function create - * @memberof vtadmin.DeleteShardsRequest + * @memberof vtadmin.CreateKeyspaceRequest * @static - * @param {vtadmin.IDeleteShardsRequest=} [properties] Properties to set - * @returns {vtadmin.DeleteShardsRequest} DeleteShardsRequest instance + * @param {vtadmin.ICreateKeyspaceRequest=} [properties] Properties to set + * @returns {vtadmin.CreateKeyspaceRequest} CreateKeyspaceRequest instance */ - DeleteShardsRequest.create = function create(properties) { - return new DeleteShardsRequest(properties); + CreateKeyspaceRequest.create = function create(properties) { + return new CreateKeyspaceRequest(properties); }; /** - * Encodes the specified DeleteShardsRequest message. Does not implicitly {@link vtadmin.DeleteShardsRequest.verify|verify} messages. + * Encodes the specified CreateKeyspaceRequest message. Does not implicitly {@link vtadmin.CreateKeyspaceRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.DeleteShardsRequest + * @memberof vtadmin.CreateKeyspaceRequest * @static - * @param {vtadmin.IDeleteShardsRequest} message DeleteShardsRequest message or plain object to encode + * @param {vtadmin.ICreateKeyspaceRequest} message CreateKeyspaceRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - DeleteShardsRequest.encode = function encode(message, writer) { + CreateKeyspaceRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.vtctldata.DeleteShardsRequest.encode(message.options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + $root.vtctldata.CreateKeyspaceRequest.encode(message.options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); return writer; }; /** - * Encodes the specified DeleteShardsRequest message, length delimited. Does not implicitly {@link vtadmin.DeleteShardsRequest.verify|verify} messages. + * Encodes the specified CreateKeyspaceRequest message, length delimited. Does not implicitly {@link vtadmin.CreateKeyspaceRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.DeleteShardsRequest + * @memberof vtadmin.CreateKeyspaceRequest * @static - * @param {vtadmin.IDeleteShardsRequest} message DeleteShardsRequest message or plain object to encode + * @param {vtadmin.ICreateKeyspaceRequest} message CreateKeyspaceRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - DeleteShardsRequest.encodeDelimited = function encodeDelimited(message, writer) { + CreateKeyspaceRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a DeleteShardsRequest message from the specified reader or buffer. + * Decodes a CreateKeyspaceRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.DeleteShardsRequest + * @memberof vtadmin.CreateKeyspaceRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.DeleteShardsRequest} DeleteShardsRequest + * @returns {vtadmin.CreateKeyspaceRequest} CreateKeyspaceRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteShardsRequest.decode = function decode(reader, length) { + CreateKeyspaceRequest.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.vtadmin.DeleteShardsRequest(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.CreateKeyspaceRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { @@ -7449,7 +7941,7 @@ export const vtadmin = $root.vtadmin = (() => { break; } case 2: { - message.options = $root.vtctldata.DeleteShardsRequest.decode(reader, reader.uint32()); + message.options = $root.vtctldata.CreateKeyspaceRequest.decode(reader, reader.uint32()); break; } default: @@ -7461,37 +7953,37 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a DeleteShardsRequest message from the specified reader or buffer, length delimited. + * Decodes a CreateKeyspaceRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.DeleteShardsRequest + * @memberof vtadmin.CreateKeyspaceRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.DeleteShardsRequest} DeleteShardsRequest + * @returns {vtadmin.CreateKeyspaceRequest} CreateKeyspaceRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteShardsRequest.decodeDelimited = function decodeDelimited(reader) { + CreateKeyspaceRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a DeleteShardsRequest message. + * Verifies a CreateKeyspaceRequest message. * @function verify - * @memberof vtadmin.DeleteShardsRequest + * @memberof vtadmin.CreateKeyspaceRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteShardsRequest.verify = function verify(message) { + CreateKeyspaceRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) if (!$util.isString(message.cluster_id)) return "cluster_id: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - let error = $root.vtctldata.DeleteShardsRequest.verify(message.options); + let error = $root.vtctldata.CreateKeyspaceRequest.verify(message.options); if (error) return "options." + error; } @@ -7499,37 +7991,37 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Creates a DeleteShardsRequest message from a plain object. Also converts values to their respective internal types. + * Creates a CreateKeyspaceRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.DeleteShardsRequest + * @memberof vtadmin.CreateKeyspaceRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.DeleteShardsRequest} DeleteShardsRequest + * @returns {vtadmin.CreateKeyspaceRequest} CreateKeyspaceRequest */ - DeleteShardsRequest.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.DeleteShardsRequest) + CreateKeyspaceRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.CreateKeyspaceRequest) return object; - let message = new $root.vtadmin.DeleteShardsRequest(); + let message = new $root.vtadmin.CreateKeyspaceRequest(); if (object.cluster_id != null) message.cluster_id = String(object.cluster_id); if (object.options != null) { if (typeof object.options !== "object") - throw TypeError(".vtadmin.DeleteShardsRequest.options: object expected"); - message.options = $root.vtctldata.DeleteShardsRequest.fromObject(object.options); + throw TypeError(".vtadmin.CreateKeyspaceRequest.options: object expected"); + message.options = $root.vtctldata.CreateKeyspaceRequest.fromObject(object.options); } return message; }; /** - * Creates a plain object from a DeleteShardsRequest message. Also converts values to other types if specified. + * Creates a plain object from a CreateKeyspaceRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.DeleteShardsRequest + * @memberof vtadmin.CreateKeyspaceRequest * @static - * @param {vtadmin.DeleteShardsRequest} message DeleteShardsRequest + * @param {vtadmin.CreateKeyspaceRequest} message CreateKeyspaceRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - DeleteShardsRequest.toObject = function toObject(message, options) { + CreateKeyspaceRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; @@ -7540,60 +8032,57 @@ export const vtadmin = $root.vtadmin = (() => { if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) object.cluster_id = message.cluster_id; if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.vtctldata.DeleteShardsRequest.toObject(message.options, options); + object.options = $root.vtctldata.CreateKeyspaceRequest.toObject(message.options, options); return object; }; /** - * Converts this DeleteShardsRequest to JSON. + * Converts this CreateKeyspaceRequest to JSON. * @function toJSON - * @memberof vtadmin.DeleteShardsRequest + * @memberof vtadmin.CreateKeyspaceRequest * @instance * @returns {Object.} JSON object */ - DeleteShardsRequest.prototype.toJSON = function toJSON() { + CreateKeyspaceRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for DeleteShardsRequest + * Gets the default type url for CreateKeyspaceRequest * @function getTypeUrl - * @memberof vtadmin.DeleteShardsRequest + * @memberof vtadmin.CreateKeyspaceRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - DeleteShardsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + CreateKeyspaceRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.DeleteShardsRequest"; + return typeUrlPrefix + "/vtadmin.CreateKeyspaceRequest"; }; - return DeleteShardsRequest; + return CreateKeyspaceRequest; })(); - vtadmin.DeleteTabletRequest = (function() { + vtadmin.CreateKeyspaceResponse = (function() { /** - * Properties of a DeleteTabletRequest. + * Properties of a CreateKeyspaceResponse. * @memberof vtadmin - * @interface IDeleteTabletRequest - * @property {topodata.ITabletAlias|null} [alias] DeleteTabletRequest alias - * @property {Array.|null} [cluster_ids] DeleteTabletRequest cluster_ids - * @property {boolean|null} [allow_primary] DeleteTabletRequest allow_primary + * @interface ICreateKeyspaceResponse + * @property {vtadmin.IKeyspace|null} [keyspace] CreateKeyspaceResponse keyspace */ /** - * Constructs a new DeleteTabletRequest. + * Constructs a new CreateKeyspaceResponse. * @memberof vtadmin - * @classdesc Represents a DeleteTabletRequest. - * @implements IDeleteTabletRequest + * @classdesc Represents a CreateKeyspaceResponse. + * @implements ICreateKeyspaceResponse * @constructor - * @param {vtadmin.IDeleteTabletRequest=} [properties] Properties to set + * @param {vtadmin.ICreateKeyspaceResponse=} [properties] Properties to set */ - function DeleteTabletRequest(properties) { - this.cluster_ids = []; + function CreateKeyspaceResponse(properties) { if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -7601,106 +8090,75 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * DeleteTabletRequest alias. - * @member {topodata.ITabletAlias|null|undefined} alias - * @memberof vtadmin.DeleteTabletRequest - * @instance - */ - DeleteTabletRequest.prototype.alias = null; - - /** - * DeleteTabletRequest cluster_ids. - * @member {Array.} cluster_ids - * @memberof vtadmin.DeleteTabletRequest - * @instance - */ - DeleteTabletRequest.prototype.cluster_ids = $util.emptyArray; - - /** - * DeleteTabletRequest allow_primary. - * @member {boolean} allow_primary - * @memberof vtadmin.DeleteTabletRequest + * CreateKeyspaceResponse keyspace. + * @member {vtadmin.IKeyspace|null|undefined} keyspace + * @memberof vtadmin.CreateKeyspaceResponse * @instance */ - DeleteTabletRequest.prototype.allow_primary = false; + CreateKeyspaceResponse.prototype.keyspace = null; /** - * Creates a new DeleteTabletRequest instance using the specified properties. + * Creates a new CreateKeyspaceResponse instance using the specified properties. * @function create - * @memberof vtadmin.DeleteTabletRequest + * @memberof vtadmin.CreateKeyspaceResponse * @static - * @param {vtadmin.IDeleteTabletRequest=} [properties] Properties to set - * @returns {vtadmin.DeleteTabletRequest} DeleteTabletRequest instance + * @param {vtadmin.ICreateKeyspaceResponse=} [properties] Properties to set + * @returns {vtadmin.CreateKeyspaceResponse} CreateKeyspaceResponse instance */ - DeleteTabletRequest.create = function create(properties) { - return new DeleteTabletRequest(properties); + CreateKeyspaceResponse.create = function create(properties) { + return new CreateKeyspaceResponse(properties); }; /** - * Encodes the specified DeleteTabletRequest message. Does not implicitly {@link vtadmin.DeleteTabletRequest.verify|verify} messages. + * Encodes the specified CreateKeyspaceResponse message. Does not implicitly {@link vtadmin.CreateKeyspaceResponse.verify|verify} messages. * @function encode - * @memberof vtadmin.DeleteTabletRequest + * @memberof vtadmin.CreateKeyspaceResponse * @static - * @param {vtadmin.IDeleteTabletRequest} message DeleteTabletRequest message or plain object to encode + * @param {vtadmin.ICreateKeyspaceResponse} message CreateKeyspaceResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - DeleteTabletRequest.encode = function encode(message, writer) { + CreateKeyspaceResponse.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.alias != null && Object.hasOwnProperty.call(message, "alias")) - $root.topodata.TabletAlias.encode(message.alias, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.cluster_ids != null && message.cluster_ids.length) - for (let i = 0; i < message.cluster_ids.length; ++i) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.cluster_ids[i]); - if (message.allow_primary != null && Object.hasOwnProperty.call(message, "allow_primary")) - writer.uint32(/* id 3, wireType 0 =*/24).bool(message.allow_primary); + if (message.keyspace != null && Object.hasOwnProperty.call(message, "keyspace")) + $root.vtadmin.Keyspace.encode(message.keyspace, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); return writer; }; /** - * Encodes the specified DeleteTabletRequest message, length delimited. Does not implicitly {@link vtadmin.DeleteTabletRequest.verify|verify} messages. + * Encodes the specified CreateKeyspaceResponse message, length delimited. Does not implicitly {@link vtadmin.CreateKeyspaceResponse.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.DeleteTabletRequest + * @memberof vtadmin.CreateKeyspaceResponse * @static - * @param {vtadmin.IDeleteTabletRequest} message DeleteTabletRequest message or plain object to encode + * @param {vtadmin.ICreateKeyspaceResponse} message CreateKeyspaceResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - DeleteTabletRequest.encodeDelimited = function encodeDelimited(message, writer) { + CreateKeyspaceResponse.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a DeleteTabletRequest message from the specified reader or buffer. + * Decodes a CreateKeyspaceResponse message from the specified reader or buffer. * @function decode - * @memberof vtadmin.DeleteTabletRequest + * @memberof vtadmin.CreateKeyspaceResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.DeleteTabletRequest} DeleteTabletRequest + * @returns {vtadmin.CreateKeyspaceResponse} CreateKeyspaceResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteTabletRequest.decode = function decode(reader, length) { + CreateKeyspaceResponse.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.vtadmin.DeleteTabletRequest(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.CreateKeyspaceResponse(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - message.alias = $root.topodata.TabletAlias.decode(reader, reader.uint32()); - break; - } - case 2: { - if (!(message.cluster_ids && message.cluster_ids.length)) - message.cluster_ids = []; - message.cluster_ids.push(reader.string()); - break; - } - case 3: { - message.allow_primary = reader.bool(); + message.keyspace = $root.vtadmin.Keyspace.decode(reader, reader.uint32()); break; } default: @@ -7712,158 +8170,128 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a DeleteTabletRequest message from the specified reader or buffer, length delimited. + * Decodes a CreateKeyspaceResponse message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.DeleteTabletRequest + * @memberof vtadmin.CreateKeyspaceResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.DeleteTabletRequest} DeleteTabletRequest + * @returns {vtadmin.CreateKeyspaceResponse} CreateKeyspaceResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteTabletRequest.decodeDelimited = function decodeDelimited(reader) { + CreateKeyspaceResponse.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a DeleteTabletRequest message. + * Verifies a CreateKeyspaceResponse message. * @function verify - * @memberof vtadmin.DeleteTabletRequest + * @memberof vtadmin.CreateKeyspaceResponse * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteTabletRequest.verify = function verify(message) { + CreateKeyspaceResponse.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.alias != null && message.hasOwnProperty("alias")) { - let error = $root.topodata.TabletAlias.verify(message.alias); + if (message.keyspace != null && message.hasOwnProperty("keyspace")) { + let error = $root.vtadmin.Keyspace.verify(message.keyspace); if (error) - return "alias." + error; - } - if (message.cluster_ids != null && message.hasOwnProperty("cluster_ids")) { - if (!Array.isArray(message.cluster_ids)) - return "cluster_ids: array expected"; - for (let i = 0; i < message.cluster_ids.length; ++i) - if (!$util.isString(message.cluster_ids[i])) - return "cluster_ids: string[] expected"; + return "keyspace." + error; } - if (message.allow_primary != null && message.hasOwnProperty("allow_primary")) - if (typeof message.allow_primary !== "boolean") - return "allow_primary: boolean expected"; return null; }; /** - * Creates a DeleteTabletRequest message from a plain object. Also converts values to their respective internal types. + * Creates a CreateKeyspaceResponse message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.DeleteTabletRequest + * @memberof vtadmin.CreateKeyspaceResponse * @static * @param {Object.} object Plain object - * @returns {vtadmin.DeleteTabletRequest} DeleteTabletRequest + * @returns {vtadmin.CreateKeyspaceResponse} CreateKeyspaceResponse */ - DeleteTabletRequest.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.DeleteTabletRequest) + CreateKeyspaceResponse.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.CreateKeyspaceResponse) return object; - let message = new $root.vtadmin.DeleteTabletRequest(); - if (object.alias != null) { - if (typeof object.alias !== "object") - throw TypeError(".vtadmin.DeleteTabletRequest.alias: object expected"); - message.alias = $root.topodata.TabletAlias.fromObject(object.alias); - } - if (object.cluster_ids) { - if (!Array.isArray(object.cluster_ids)) - throw TypeError(".vtadmin.DeleteTabletRequest.cluster_ids: array expected"); - message.cluster_ids = []; - for (let i = 0; i < object.cluster_ids.length; ++i) - message.cluster_ids[i] = String(object.cluster_ids[i]); + let message = new $root.vtadmin.CreateKeyspaceResponse(); + if (object.keyspace != null) { + if (typeof object.keyspace !== "object") + throw TypeError(".vtadmin.CreateKeyspaceResponse.keyspace: object expected"); + message.keyspace = $root.vtadmin.Keyspace.fromObject(object.keyspace); } - if (object.allow_primary != null) - message.allow_primary = Boolean(object.allow_primary); return message; }; /** - * Creates a plain object from a DeleteTabletRequest message. Also converts values to other types if specified. + * Creates a plain object from a CreateKeyspaceResponse message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.DeleteTabletRequest + * @memberof vtadmin.CreateKeyspaceResponse * @static - * @param {vtadmin.DeleteTabletRequest} message DeleteTabletRequest + * @param {vtadmin.CreateKeyspaceResponse} message CreateKeyspaceResponse * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - DeleteTabletRequest.toObject = function toObject(message, options) { + CreateKeyspaceResponse.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; - if (options.arrays || options.defaults) - object.cluster_ids = []; - if (options.defaults) { - object.alias = null; - object.allow_primary = false; - } - if (message.alias != null && message.hasOwnProperty("alias")) - object.alias = $root.topodata.TabletAlias.toObject(message.alias, options); - if (message.cluster_ids && message.cluster_ids.length) { - object.cluster_ids = []; - for (let j = 0; j < message.cluster_ids.length; ++j) - object.cluster_ids[j] = message.cluster_ids[j]; - } - if (message.allow_primary != null && message.hasOwnProperty("allow_primary")) - object.allow_primary = message.allow_primary; + if (options.defaults) + object.keyspace = null; + if (message.keyspace != null && message.hasOwnProperty("keyspace")) + object.keyspace = $root.vtadmin.Keyspace.toObject(message.keyspace, options); return object; }; /** - * Converts this DeleteTabletRequest to JSON. + * Converts this CreateKeyspaceResponse to JSON. * @function toJSON - * @memberof vtadmin.DeleteTabletRequest + * @memberof vtadmin.CreateKeyspaceResponse * @instance * @returns {Object.} JSON object */ - DeleteTabletRequest.prototype.toJSON = function toJSON() { + CreateKeyspaceResponse.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for DeleteTabletRequest + * Gets the default type url for CreateKeyspaceResponse * @function getTypeUrl - * @memberof vtadmin.DeleteTabletRequest + * @memberof vtadmin.CreateKeyspaceResponse * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - DeleteTabletRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + CreateKeyspaceResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.DeleteTabletRequest"; + return typeUrlPrefix + "/vtadmin.CreateKeyspaceResponse"; }; - return DeleteTabletRequest; + return CreateKeyspaceResponse; })(); - vtadmin.DeleteTabletResponse = (function() { + vtadmin.CreateShardRequest = (function() { /** - * Properties of a DeleteTabletResponse. + * Properties of a CreateShardRequest. * @memberof vtadmin - * @interface IDeleteTabletResponse - * @property {string|null} [status] DeleteTabletResponse status - * @property {vtadmin.ICluster|null} [cluster] DeleteTabletResponse cluster + * @interface ICreateShardRequest + * @property {string|null} [cluster_id] CreateShardRequest cluster_id + * @property {vtctldata.ICreateShardRequest|null} [options] CreateShardRequest options */ /** - * Constructs a new DeleteTabletResponse. + * Constructs a new CreateShardRequest. * @memberof vtadmin - * @classdesc Represents a DeleteTabletResponse. - * @implements IDeleteTabletResponse + * @classdesc Represents a CreateShardRequest. + * @implements ICreateShardRequest * @constructor - * @param {vtadmin.IDeleteTabletResponse=} [properties] Properties to set + * @param {vtadmin.ICreateShardRequest=} [properties] Properties to set */ - function DeleteTabletResponse(properties) { + function CreateShardRequest(properties) { if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -7871,89 +8299,89 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * DeleteTabletResponse status. - * @member {string} status - * @memberof vtadmin.DeleteTabletResponse + * CreateShardRequest cluster_id. + * @member {string} cluster_id + * @memberof vtadmin.CreateShardRequest * @instance */ - DeleteTabletResponse.prototype.status = ""; + CreateShardRequest.prototype.cluster_id = ""; /** - * DeleteTabletResponse cluster. - * @member {vtadmin.ICluster|null|undefined} cluster - * @memberof vtadmin.DeleteTabletResponse + * CreateShardRequest options. + * @member {vtctldata.ICreateShardRequest|null|undefined} options + * @memberof vtadmin.CreateShardRequest * @instance */ - DeleteTabletResponse.prototype.cluster = null; + CreateShardRequest.prototype.options = null; /** - * Creates a new DeleteTabletResponse instance using the specified properties. + * Creates a new CreateShardRequest instance using the specified properties. * @function create - * @memberof vtadmin.DeleteTabletResponse + * @memberof vtadmin.CreateShardRequest * @static - * @param {vtadmin.IDeleteTabletResponse=} [properties] Properties to set - * @returns {vtadmin.DeleteTabletResponse} DeleteTabletResponse instance + * @param {vtadmin.ICreateShardRequest=} [properties] Properties to set + * @returns {vtadmin.CreateShardRequest} CreateShardRequest instance */ - DeleteTabletResponse.create = function create(properties) { - return new DeleteTabletResponse(properties); + CreateShardRequest.create = function create(properties) { + return new CreateShardRequest(properties); }; /** - * Encodes the specified DeleteTabletResponse message. Does not implicitly {@link vtadmin.DeleteTabletResponse.verify|verify} messages. + * Encodes the specified CreateShardRequest message. Does not implicitly {@link vtadmin.CreateShardRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.DeleteTabletResponse + * @memberof vtadmin.CreateShardRequest * @static - * @param {vtadmin.IDeleteTabletResponse} message DeleteTabletResponse message or plain object to encode + * @param {vtadmin.ICreateShardRequest} message CreateShardRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - DeleteTabletResponse.encode = function encode(message, writer) { + CreateShardRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.status != null && Object.hasOwnProperty.call(message, "status")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.status); - if (message.cluster != null && Object.hasOwnProperty.call(message, "cluster")) - $root.vtadmin.Cluster.encode(message.cluster, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.vtctldata.CreateShardRequest.encode(message.options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); return writer; }; /** - * Encodes the specified DeleteTabletResponse message, length delimited. Does not implicitly {@link vtadmin.DeleteTabletResponse.verify|verify} messages. + * Encodes the specified CreateShardRequest message, length delimited. Does not implicitly {@link vtadmin.CreateShardRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.DeleteTabletResponse + * @memberof vtadmin.CreateShardRequest * @static - * @param {vtadmin.IDeleteTabletResponse} message DeleteTabletResponse message or plain object to encode + * @param {vtadmin.ICreateShardRequest} message CreateShardRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - DeleteTabletResponse.encodeDelimited = function encodeDelimited(message, writer) { + CreateShardRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a DeleteTabletResponse message from the specified reader or buffer. + * Decodes a CreateShardRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.DeleteTabletResponse + * @memberof vtadmin.CreateShardRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.DeleteTabletResponse} DeleteTabletResponse + * @returns {vtadmin.CreateShardRequest} CreateShardRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteTabletResponse.decode = function decode(reader, length) { + CreateShardRequest.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.vtadmin.DeleteTabletResponse(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.CreateShardRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - message.status = reader.string(); + message.cluster_id = reader.string(); break; } case 2: { - message.cluster = $root.vtadmin.Cluster.decode(reader, reader.uint32()); + message.options = $root.vtctldata.CreateShardRequest.decode(reader, reader.uint32()); break; } default: @@ -7965,137 +8393,137 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a DeleteTabletResponse message from the specified reader or buffer, length delimited. + * Decodes a CreateShardRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.DeleteTabletResponse + * @memberof vtadmin.CreateShardRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.DeleteTabletResponse} DeleteTabletResponse + * @returns {vtadmin.CreateShardRequest} CreateShardRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteTabletResponse.decodeDelimited = function decodeDelimited(reader) { + CreateShardRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a DeleteTabletResponse message. + * Verifies a CreateShardRequest message. * @function verify - * @memberof vtadmin.DeleteTabletResponse + * @memberof vtadmin.CreateShardRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteTabletResponse.verify = function verify(message) { + CreateShardRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.status != null && message.hasOwnProperty("status")) - if (!$util.isString(message.status)) - return "status: string expected"; - if (message.cluster != null && message.hasOwnProperty("cluster")) { - let error = $root.vtadmin.Cluster.verify(message.cluster); + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + if (!$util.isString(message.cluster_id)) + return "cluster_id: string expected"; + if (message.options != null && message.hasOwnProperty("options")) { + let error = $root.vtctldata.CreateShardRequest.verify(message.options); if (error) - return "cluster." + error; + return "options." + error; } return null; }; /** - * Creates a DeleteTabletResponse message from a plain object. Also converts values to their respective internal types. + * Creates a CreateShardRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.DeleteTabletResponse + * @memberof vtadmin.CreateShardRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.DeleteTabletResponse} DeleteTabletResponse + * @returns {vtadmin.CreateShardRequest} CreateShardRequest */ - DeleteTabletResponse.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.DeleteTabletResponse) + CreateShardRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.CreateShardRequest) return object; - let message = new $root.vtadmin.DeleteTabletResponse(); - if (object.status != null) - message.status = String(object.status); - if (object.cluster != null) { - if (typeof object.cluster !== "object") - throw TypeError(".vtadmin.DeleteTabletResponse.cluster: object expected"); - message.cluster = $root.vtadmin.Cluster.fromObject(object.cluster); + let message = new $root.vtadmin.CreateShardRequest(); + if (object.cluster_id != null) + message.cluster_id = String(object.cluster_id); + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".vtadmin.CreateShardRequest.options: object expected"); + message.options = $root.vtctldata.CreateShardRequest.fromObject(object.options); } return message; }; /** - * Creates a plain object from a DeleteTabletResponse message. Also converts values to other types if specified. + * Creates a plain object from a CreateShardRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.DeleteTabletResponse + * @memberof vtadmin.CreateShardRequest * @static - * @param {vtadmin.DeleteTabletResponse} message DeleteTabletResponse + * @param {vtadmin.CreateShardRequest} message CreateShardRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - DeleteTabletResponse.toObject = function toObject(message, options) { + CreateShardRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; if (options.defaults) { - object.status = ""; - object.cluster = null; + object.cluster_id = ""; + object.options = null; } - if (message.status != null && message.hasOwnProperty("status")) - object.status = message.status; - if (message.cluster != null && message.hasOwnProperty("cluster")) - object.cluster = $root.vtadmin.Cluster.toObject(message.cluster, options); + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + object.cluster_id = message.cluster_id; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.vtctldata.CreateShardRequest.toObject(message.options, options); return object; }; /** - * Converts this DeleteTabletResponse to JSON. + * Converts this CreateShardRequest to JSON. * @function toJSON - * @memberof vtadmin.DeleteTabletResponse + * @memberof vtadmin.CreateShardRequest * @instance * @returns {Object.} JSON object */ - DeleteTabletResponse.prototype.toJSON = function toJSON() { + CreateShardRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for DeleteTabletResponse + * Gets the default type url for CreateShardRequest * @function getTypeUrl - * @memberof vtadmin.DeleteTabletResponse + * @memberof vtadmin.CreateShardRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - DeleteTabletResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + CreateShardRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.DeleteTabletResponse"; + return typeUrlPrefix + "/vtadmin.CreateShardRequest"; }; - return DeleteTabletResponse; + return CreateShardRequest; })(); - vtadmin.EmergencyFailoverShardRequest = (function() { + vtadmin.DeleteKeyspaceRequest = (function() { /** - * Properties of an EmergencyFailoverShardRequest. + * Properties of a DeleteKeyspaceRequest. * @memberof vtadmin - * @interface IEmergencyFailoverShardRequest - * @property {string|null} [cluster_id] EmergencyFailoverShardRequest cluster_id - * @property {vtctldata.IEmergencyReparentShardRequest|null} [options] EmergencyFailoverShardRequest options + * @interface IDeleteKeyspaceRequest + * @property {string|null} [cluster_id] DeleteKeyspaceRequest cluster_id + * @property {vtctldata.IDeleteKeyspaceRequest|null} [options] DeleteKeyspaceRequest options */ /** - * Constructs a new EmergencyFailoverShardRequest. + * Constructs a new DeleteKeyspaceRequest. * @memberof vtadmin - * @classdesc Represents an EmergencyFailoverShardRequest. - * @implements IEmergencyFailoverShardRequest + * @classdesc Represents a DeleteKeyspaceRequest. + * @implements IDeleteKeyspaceRequest * @constructor - * @param {vtadmin.IEmergencyFailoverShardRequest=} [properties] Properties to set + * @param {vtadmin.IDeleteKeyspaceRequest=} [properties] Properties to set */ - function EmergencyFailoverShardRequest(properties) { + function DeleteKeyspaceRequest(properties) { if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -8103,80 +8531,80 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * EmergencyFailoverShardRequest cluster_id. + * DeleteKeyspaceRequest cluster_id. * @member {string} cluster_id - * @memberof vtadmin.EmergencyFailoverShardRequest + * @memberof vtadmin.DeleteKeyspaceRequest * @instance */ - EmergencyFailoverShardRequest.prototype.cluster_id = ""; + DeleteKeyspaceRequest.prototype.cluster_id = ""; /** - * EmergencyFailoverShardRequest options. - * @member {vtctldata.IEmergencyReparentShardRequest|null|undefined} options - * @memberof vtadmin.EmergencyFailoverShardRequest + * DeleteKeyspaceRequest options. + * @member {vtctldata.IDeleteKeyspaceRequest|null|undefined} options + * @memberof vtadmin.DeleteKeyspaceRequest * @instance */ - EmergencyFailoverShardRequest.prototype.options = null; + DeleteKeyspaceRequest.prototype.options = null; /** - * Creates a new EmergencyFailoverShardRequest instance using the specified properties. + * Creates a new DeleteKeyspaceRequest instance using the specified properties. * @function create - * @memberof vtadmin.EmergencyFailoverShardRequest + * @memberof vtadmin.DeleteKeyspaceRequest * @static - * @param {vtadmin.IEmergencyFailoverShardRequest=} [properties] Properties to set - * @returns {vtadmin.EmergencyFailoverShardRequest} EmergencyFailoverShardRequest instance + * @param {vtadmin.IDeleteKeyspaceRequest=} [properties] Properties to set + * @returns {vtadmin.DeleteKeyspaceRequest} DeleteKeyspaceRequest instance */ - EmergencyFailoverShardRequest.create = function create(properties) { - return new EmergencyFailoverShardRequest(properties); + DeleteKeyspaceRequest.create = function create(properties) { + return new DeleteKeyspaceRequest(properties); }; /** - * Encodes the specified EmergencyFailoverShardRequest message. Does not implicitly {@link vtadmin.EmergencyFailoverShardRequest.verify|verify} messages. + * Encodes the specified DeleteKeyspaceRequest message. Does not implicitly {@link vtadmin.DeleteKeyspaceRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.EmergencyFailoverShardRequest + * @memberof vtadmin.DeleteKeyspaceRequest * @static - * @param {vtadmin.IEmergencyFailoverShardRequest} message EmergencyFailoverShardRequest message or plain object to encode + * @param {vtadmin.IDeleteKeyspaceRequest} message DeleteKeyspaceRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - EmergencyFailoverShardRequest.encode = function encode(message, writer) { + DeleteKeyspaceRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.vtctldata.EmergencyReparentShardRequest.encode(message.options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + $root.vtctldata.DeleteKeyspaceRequest.encode(message.options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); return writer; }; /** - * Encodes the specified EmergencyFailoverShardRequest message, length delimited. Does not implicitly {@link vtadmin.EmergencyFailoverShardRequest.verify|verify} messages. + * Encodes the specified DeleteKeyspaceRequest message, length delimited. Does not implicitly {@link vtadmin.DeleteKeyspaceRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.EmergencyFailoverShardRequest + * @memberof vtadmin.DeleteKeyspaceRequest * @static - * @param {vtadmin.IEmergencyFailoverShardRequest} message EmergencyFailoverShardRequest message or plain object to encode + * @param {vtadmin.IDeleteKeyspaceRequest} message DeleteKeyspaceRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - EmergencyFailoverShardRequest.encodeDelimited = function encodeDelimited(message, writer) { + DeleteKeyspaceRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes an EmergencyFailoverShardRequest message from the specified reader or buffer. + * Decodes a DeleteKeyspaceRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.EmergencyFailoverShardRequest + * @memberof vtadmin.DeleteKeyspaceRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.EmergencyFailoverShardRequest} EmergencyFailoverShardRequest + * @returns {vtadmin.DeleteKeyspaceRequest} DeleteKeyspaceRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EmergencyFailoverShardRequest.decode = function decode(reader, length) { + DeleteKeyspaceRequest.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.vtadmin.EmergencyFailoverShardRequest(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.DeleteKeyspaceRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { @@ -8185,7 +8613,7 @@ export const vtadmin = $root.vtadmin = (() => { break; } case 2: { - message.options = $root.vtctldata.EmergencyReparentShardRequest.decode(reader, reader.uint32()); + message.options = $root.vtctldata.DeleteKeyspaceRequest.decode(reader, reader.uint32()); break; } default: @@ -8197,37 +8625,37 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes an EmergencyFailoverShardRequest message from the specified reader or buffer, length delimited. + * Decodes a DeleteKeyspaceRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.EmergencyFailoverShardRequest + * @memberof vtadmin.DeleteKeyspaceRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.EmergencyFailoverShardRequest} EmergencyFailoverShardRequest + * @returns {vtadmin.DeleteKeyspaceRequest} DeleteKeyspaceRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EmergencyFailoverShardRequest.decodeDelimited = function decodeDelimited(reader) { + DeleteKeyspaceRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies an EmergencyFailoverShardRequest message. + * Verifies a DeleteKeyspaceRequest message. * @function verify - * @memberof vtadmin.EmergencyFailoverShardRequest + * @memberof vtadmin.DeleteKeyspaceRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EmergencyFailoverShardRequest.verify = function verify(message) { + DeleteKeyspaceRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) if (!$util.isString(message.cluster_id)) return "cluster_id: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - let error = $root.vtctldata.EmergencyReparentShardRequest.verify(message.options); + let error = $root.vtctldata.DeleteKeyspaceRequest.verify(message.options); if (error) return "options." + error; } @@ -8235,37 +8663,37 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Creates an EmergencyFailoverShardRequest message from a plain object. Also converts values to their respective internal types. + * Creates a DeleteKeyspaceRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.EmergencyFailoverShardRequest + * @memberof vtadmin.DeleteKeyspaceRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.EmergencyFailoverShardRequest} EmergencyFailoverShardRequest + * @returns {vtadmin.DeleteKeyspaceRequest} DeleteKeyspaceRequest */ - EmergencyFailoverShardRequest.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.EmergencyFailoverShardRequest) + DeleteKeyspaceRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.DeleteKeyspaceRequest) return object; - let message = new $root.vtadmin.EmergencyFailoverShardRequest(); + let message = new $root.vtadmin.DeleteKeyspaceRequest(); if (object.cluster_id != null) message.cluster_id = String(object.cluster_id); if (object.options != null) { if (typeof object.options !== "object") - throw TypeError(".vtadmin.EmergencyFailoverShardRequest.options: object expected"); - message.options = $root.vtctldata.EmergencyReparentShardRequest.fromObject(object.options); + throw TypeError(".vtadmin.DeleteKeyspaceRequest.options: object expected"); + message.options = $root.vtctldata.DeleteKeyspaceRequest.fromObject(object.options); } return message; }; /** - * Creates a plain object from an EmergencyFailoverShardRequest message. Also converts values to other types if specified. + * Creates a plain object from a DeleteKeyspaceRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.EmergencyFailoverShardRequest + * @memberof vtadmin.DeleteKeyspaceRequest * @static - * @param {vtadmin.EmergencyFailoverShardRequest} message EmergencyFailoverShardRequest + * @param {vtadmin.DeleteKeyspaceRequest} message DeleteKeyspaceRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - EmergencyFailoverShardRequest.toObject = function toObject(message, options) { + DeleteKeyspaceRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; @@ -8276,62 +8704,58 @@ export const vtadmin = $root.vtadmin = (() => { if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) object.cluster_id = message.cluster_id; if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.vtctldata.EmergencyReparentShardRequest.toObject(message.options, options); + object.options = $root.vtctldata.DeleteKeyspaceRequest.toObject(message.options, options); return object; }; /** - * Converts this EmergencyFailoverShardRequest to JSON. + * Converts this DeleteKeyspaceRequest to JSON. * @function toJSON - * @memberof vtadmin.EmergencyFailoverShardRequest + * @memberof vtadmin.DeleteKeyspaceRequest * @instance * @returns {Object.} JSON object */ - EmergencyFailoverShardRequest.prototype.toJSON = function toJSON() { + DeleteKeyspaceRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for EmergencyFailoverShardRequest + * Gets the default type url for DeleteKeyspaceRequest * @function getTypeUrl - * @memberof vtadmin.EmergencyFailoverShardRequest + * @memberof vtadmin.DeleteKeyspaceRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - EmergencyFailoverShardRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + DeleteKeyspaceRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.EmergencyFailoverShardRequest"; + return typeUrlPrefix + "/vtadmin.DeleteKeyspaceRequest"; }; - return EmergencyFailoverShardRequest; + return DeleteKeyspaceRequest; })(); - vtadmin.EmergencyFailoverShardResponse = (function() { + vtadmin.DeleteShardsRequest = (function() { /** - * Properties of an EmergencyFailoverShardResponse. + * Properties of a DeleteShardsRequest. * @memberof vtadmin - * @interface IEmergencyFailoverShardResponse - * @property {vtadmin.ICluster|null} [cluster] EmergencyFailoverShardResponse cluster - * @property {string|null} [keyspace] EmergencyFailoverShardResponse keyspace - * @property {string|null} [shard] EmergencyFailoverShardResponse shard - * @property {topodata.ITabletAlias|null} [promoted_primary] EmergencyFailoverShardResponse promoted_primary - * @property {Array.|null} [events] EmergencyFailoverShardResponse events + * @interface IDeleteShardsRequest + * @property {string|null} [cluster_id] DeleteShardsRequest cluster_id + * @property {vtctldata.IDeleteShardsRequest|null} [options] DeleteShardsRequest options */ /** - * Constructs a new EmergencyFailoverShardResponse. + * Constructs a new DeleteShardsRequest. * @memberof vtadmin - * @classdesc Represents an EmergencyFailoverShardResponse. - * @implements IEmergencyFailoverShardResponse + * @classdesc Represents a DeleteShardsRequest. + * @implements IDeleteShardsRequest * @constructor - * @param {vtadmin.IEmergencyFailoverShardResponse=} [properties] Properties to set + * @param {vtadmin.IDeleteShardsRequest=} [properties] Properties to set */ - function EmergencyFailoverShardResponse(properties) { - this.events = []; + function DeleteShardsRequest(properties) { if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -8339,134 +8763,89 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * EmergencyFailoverShardResponse cluster. - * @member {vtadmin.ICluster|null|undefined} cluster - * @memberof vtadmin.EmergencyFailoverShardResponse - * @instance - */ - EmergencyFailoverShardResponse.prototype.cluster = null; - - /** - * EmergencyFailoverShardResponse keyspace. - * @member {string} keyspace - * @memberof vtadmin.EmergencyFailoverShardResponse - * @instance - */ - EmergencyFailoverShardResponse.prototype.keyspace = ""; - - /** - * EmergencyFailoverShardResponse shard. - * @member {string} shard - * @memberof vtadmin.EmergencyFailoverShardResponse - * @instance - */ - EmergencyFailoverShardResponse.prototype.shard = ""; - - /** - * EmergencyFailoverShardResponse promoted_primary. - * @member {topodata.ITabletAlias|null|undefined} promoted_primary - * @memberof vtadmin.EmergencyFailoverShardResponse + * DeleteShardsRequest cluster_id. + * @member {string} cluster_id + * @memberof vtadmin.DeleteShardsRequest * @instance */ - EmergencyFailoverShardResponse.prototype.promoted_primary = null; + DeleteShardsRequest.prototype.cluster_id = ""; /** - * EmergencyFailoverShardResponse events. - * @member {Array.} events - * @memberof vtadmin.EmergencyFailoverShardResponse + * DeleteShardsRequest options. + * @member {vtctldata.IDeleteShardsRequest|null|undefined} options + * @memberof vtadmin.DeleteShardsRequest * @instance */ - EmergencyFailoverShardResponse.prototype.events = $util.emptyArray; + DeleteShardsRequest.prototype.options = null; /** - * Creates a new EmergencyFailoverShardResponse instance using the specified properties. + * Creates a new DeleteShardsRequest instance using the specified properties. * @function create - * @memberof vtadmin.EmergencyFailoverShardResponse + * @memberof vtadmin.DeleteShardsRequest * @static - * @param {vtadmin.IEmergencyFailoverShardResponse=} [properties] Properties to set - * @returns {vtadmin.EmergencyFailoverShardResponse} EmergencyFailoverShardResponse instance + * @param {vtadmin.IDeleteShardsRequest=} [properties] Properties to set + * @returns {vtadmin.DeleteShardsRequest} DeleteShardsRequest instance */ - EmergencyFailoverShardResponse.create = function create(properties) { - return new EmergencyFailoverShardResponse(properties); + DeleteShardsRequest.create = function create(properties) { + return new DeleteShardsRequest(properties); }; /** - * Encodes the specified EmergencyFailoverShardResponse message. Does not implicitly {@link vtadmin.EmergencyFailoverShardResponse.verify|verify} messages. + * Encodes the specified DeleteShardsRequest message. Does not implicitly {@link vtadmin.DeleteShardsRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.EmergencyFailoverShardResponse + * @memberof vtadmin.DeleteShardsRequest * @static - * @param {vtadmin.IEmergencyFailoverShardResponse} message EmergencyFailoverShardResponse message or plain object to encode + * @param {vtadmin.IDeleteShardsRequest} message DeleteShardsRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - EmergencyFailoverShardResponse.encode = function encode(message, writer) { + DeleteShardsRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.cluster != null && Object.hasOwnProperty.call(message, "cluster")) - $root.vtadmin.Cluster.encode(message.cluster, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.keyspace != null && Object.hasOwnProperty.call(message, "keyspace")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.keyspace); - if (message.shard != null && Object.hasOwnProperty.call(message, "shard")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.shard); - if (message.promoted_primary != null && Object.hasOwnProperty.call(message, "promoted_primary")) - $root.topodata.TabletAlias.encode(message.promoted_primary, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); - if (message.events != null && message.events.length) - for (let i = 0; i < message.events.length; ++i) - $root.logutil.Event.encode(message.events[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.vtctldata.DeleteShardsRequest.encode(message.options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); return writer; }; /** - * Encodes the specified EmergencyFailoverShardResponse message, length delimited. Does not implicitly {@link vtadmin.EmergencyFailoverShardResponse.verify|verify} messages. + * Encodes the specified DeleteShardsRequest message, length delimited. Does not implicitly {@link vtadmin.DeleteShardsRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.EmergencyFailoverShardResponse + * @memberof vtadmin.DeleteShardsRequest * @static - * @param {vtadmin.IEmergencyFailoverShardResponse} message EmergencyFailoverShardResponse message or plain object to encode + * @param {vtadmin.IDeleteShardsRequest} message DeleteShardsRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - EmergencyFailoverShardResponse.encodeDelimited = function encodeDelimited(message, writer) { + DeleteShardsRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes an EmergencyFailoverShardResponse message from the specified reader or buffer. + * Decodes a DeleteShardsRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.EmergencyFailoverShardResponse + * @memberof vtadmin.DeleteShardsRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.EmergencyFailoverShardResponse} EmergencyFailoverShardResponse + * @returns {vtadmin.DeleteShardsRequest} DeleteShardsRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EmergencyFailoverShardResponse.decode = function decode(reader, length) { + DeleteShardsRequest.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.vtadmin.EmergencyFailoverShardResponse(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.DeleteShardsRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - message.cluster = $root.vtadmin.Cluster.decode(reader, reader.uint32()); + message.cluster_id = reader.string(); break; } case 2: { - message.keyspace = reader.string(); - break; - } - case 3: { - message.shard = reader.string(); - break; - } - case 4: { - message.promoted_primary = $root.topodata.TabletAlias.decode(reader, reader.uint32()); - break; - } - case 5: { - if (!(message.events && message.events.length)) - message.events = []; - message.events.push($root.logutil.Event.decode(reader, reader.uint32())); + message.options = $root.vtctldata.DeleteShardsRequest.decode(reader, reader.uint32()); break; } default: @@ -8478,185 +8857,138 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes an EmergencyFailoverShardResponse message from the specified reader or buffer, length delimited. + * Decodes a DeleteShardsRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.EmergencyFailoverShardResponse + * @memberof vtadmin.DeleteShardsRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.EmergencyFailoverShardResponse} EmergencyFailoverShardResponse + * @returns {vtadmin.DeleteShardsRequest} DeleteShardsRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EmergencyFailoverShardResponse.decodeDelimited = function decodeDelimited(reader) { + DeleteShardsRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies an EmergencyFailoverShardResponse message. + * Verifies a DeleteShardsRequest message. * @function verify - * @memberof vtadmin.EmergencyFailoverShardResponse + * @memberof vtadmin.DeleteShardsRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EmergencyFailoverShardResponse.verify = function verify(message) { + DeleteShardsRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.cluster != null && message.hasOwnProperty("cluster")) { - let error = $root.vtadmin.Cluster.verify(message.cluster); - if (error) - return "cluster." + error; - } - if (message.keyspace != null && message.hasOwnProperty("keyspace")) - if (!$util.isString(message.keyspace)) - return "keyspace: string expected"; - if (message.shard != null && message.hasOwnProperty("shard")) - if (!$util.isString(message.shard)) - return "shard: string expected"; - if (message.promoted_primary != null && message.hasOwnProperty("promoted_primary")) { - let error = $root.topodata.TabletAlias.verify(message.promoted_primary); + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + if (!$util.isString(message.cluster_id)) + return "cluster_id: string expected"; + if (message.options != null && message.hasOwnProperty("options")) { + let error = $root.vtctldata.DeleteShardsRequest.verify(message.options); if (error) - return "promoted_primary." + error; - } - if (message.events != null && message.hasOwnProperty("events")) { - if (!Array.isArray(message.events)) - return "events: array expected"; - for (let i = 0; i < message.events.length; ++i) { - let error = $root.logutil.Event.verify(message.events[i]); - if (error) - return "events." + error; - } + return "options." + error; } return null; }; /** - * Creates an EmergencyFailoverShardResponse message from a plain object. Also converts values to their respective internal types. + * Creates a DeleteShardsRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.EmergencyFailoverShardResponse + * @memberof vtadmin.DeleteShardsRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.EmergencyFailoverShardResponse} EmergencyFailoverShardResponse + * @returns {vtadmin.DeleteShardsRequest} DeleteShardsRequest */ - EmergencyFailoverShardResponse.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.EmergencyFailoverShardResponse) + DeleteShardsRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.DeleteShardsRequest) return object; - let message = new $root.vtadmin.EmergencyFailoverShardResponse(); - if (object.cluster != null) { - if (typeof object.cluster !== "object") - throw TypeError(".vtadmin.EmergencyFailoverShardResponse.cluster: object expected"); - message.cluster = $root.vtadmin.Cluster.fromObject(object.cluster); - } - if (object.keyspace != null) - message.keyspace = String(object.keyspace); - if (object.shard != null) - message.shard = String(object.shard); - if (object.promoted_primary != null) { - if (typeof object.promoted_primary !== "object") - throw TypeError(".vtadmin.EmergencyFailoverShardResponse.promoted_primary: object expected"); - message.promoted_primary = $root.topodata.TabletAlias.fromObject(object.promoted_primary); - } - if (object.events) { - if (!Array.isArray(object.events)) - throw TypeError(".vtadmin.EmergencyFailoverShardResponse.events: array expected"); - message.events = []; - for (let i = 0; i < object.events.length; ++i) { - if (typeof object.events[i] !== "object") - throw TypeError(".vtadmin.EmergencyFailoverShardResponse.events: object expected"); - message.events[i] = $root.logutil.Event.fromObject(object.events[i]); - } + let message = new $root.vtadmin.DeleteShardsRequest(); + if (object.cluster_id != null) + message.cluster_id = String(object.cluster_id); + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".vtadmin.DeleteShardsRequest.options: object expected"); + message.options = $root.vtctldata.DeleteShardsRequest.fromObject(object.options); } return message; }; /** - * Creates a plain object from an EmergencyFailoverShardResponse message. Also converts values to other types if specified. + * Creates a plain object from a DeleteShardsRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.EmergencyFailoverShardResponse + * @memberof vtadmin.DeleteShardsRequest * @static - * @param {vtadmin.EmergencyFailoverShardResponse} message EmergencyFailoverShardResponse + * @param {vtadmin.DeleteShardsRequest} message DeleteShardsRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - EmergencyFailoverShardResponse.toObject = function toObject(message, options) { + DeleteShardsRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; - if (options.arrays || options.defaults) - object.events = []; if (options.defaults) { - object.cluster = null; - object.keyspace = ""; - object.shard = ""; - object.promoted_primary = null; - } - if (message.cluster != null && message.hasOwnProperty("cluster")) - object.cluster = $root.vtadmin.Cluster.toObject(message.cluster, options); - if (message.keyspace != null && message.hasOwnProperty("keyspace")) - object.keyspace = message.keyspace; - if (message.shard != null && message.hasOwnProperty("shard")) - object.shard = message.shard; - if (message.promoted_primary != null && message.hasOwnProperty("promoted_primary")) - object.promoted_primary = $root.topodata.TabletAlias.toObject(message.promoted_primary, options); - if (message.events && message.events.length) { - object.events = []; - for (let j = 0; j < message.events.length; ++j) - object.events[j] = $root.logutil.Event.toObject(message.events[j], options); + object.cluster_id = ""; + object.options = null; } + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + object.cluster_id = message.cluster_id; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.vtctldata.DeleteShardsRequest.toObject(message.options, options); return object; }; /** - * Converts this EmergencyFailoverShardResponse to JSON. + * Converts this DeleteShardsRequest to JSON. * @function toJSON - * @memberof vtadmin.EmergencyFailoverShardResponse + * @memberof vtadmin.DeleteShardsRequest * @instance * @returns {Object.} JSON object */ - EmergencyFailoverShardResponse.prototype.toJSON = function toJSON() { + DeleteShardsRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for EmergencyFailoverShardResponse + * Gets the default type url for DeleteShardsRequest * @function getTypeUrl - * @memberof vtadmin.EmergencyFailoverShardResponse + * @memberof vtadmin.DeleteShardsRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - EmergencyFailoverShardResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + DeleteShardsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.EmergencyFailoverShardResponse"; + return typeUrlPrefix + "/vtadmin.DeleteShardsRequest"; }; - return EmergencyFailoverShardResponse; + return DeleteShardsRequest; })(); - vtadmin.FindSchemaRequest = (function() { + vtadmin.DeleteTabletRequest = (function() { /** - * Properties of a FindSchemaRequest. + * Properties of a DeleteTabletRequest. * @memberof vtadmin - * @interface IFindSchemaRequest - * @property {string|null} [table] FindSchemaRequest table - * @property {Array.|null} [cluster_ids] FindSchemaRequest cluster_ids - * @property {vtadmin.IGetSchemaTableSizeOptions|null} [table_size_options] FindSchemaRequest table_size_options + * @interface IDeleteTabletRequest + * @property {topodata.ITabletAlias|null} [alias] DeleteTabletRequest alias + * @property {Array.|null} [cluster_ids] DeleteTabletRequest cluster_ids + * @property {boolean|null} [allow_primary] DeleteTabletRequest allow_primary */ /** - * Constructs a new FindSchemaRequest. + * Constructs a new DeleteTabletRequest. * @memberof vtadmin - * @classdesc Represents a FindSchemaRequest. - * @implements IFindSchemaRequest + * @classdesc Represents a DeleteTabletRequest. + * @implements IDeleteTabletRequest * @constructor - * @param {vtadmin.IFindSchemaRequest=} [properties] Properties to set + * @param {vtadmin.IDeleteTabletRequest=} [properties] Properties to set */ - function FindSchemaRequest(properties) { + function DeleteTabletRequest(properties) { this.cluster_ids = []; if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) @@ -8665,96 +8997,96 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * FindSchemaRequest table. - * @member {string} table - * @memberof vtadmin.FindSchemaRequest + * DeleteTabletRequest alias. + * @member {topodata.ITabletAlias|null|undefined} alias + * @memberof vtadmin.DeleteTabletRequest * @instance */ - FindSchemaRequest.prototype.table = ""; + DeleteTabletRequest.prototype.alias = null; /** - * FindSchemaRequest cluster_ids. + * DeleteTabletRequest cluster_ids. * @member {Array.} cluster_ids - * @memberof vtadmin.FindSchemaRequest + * @memberof vtadmin.DeleteTabletRequest * @instance */ - FindSchemaRequest.prototype.cluster_ids = $util.emptyArray; + DeleteTabletRequest.prototype.cluster_ids = $util.emptyArray; /** - * FindSchemaRequest table_size_options. - * @member {vtadmin.IGetSchemaTableSizeOptions|null|undefined} table_size_options - * @memberof vtadmin.FindSchemaRequest + * DeleteTabletRequest allow_primary. + * @member {boolean} allow_primary + * @memberof vtadmin.DeleteTabletRequest * @instance */ - FindSchemaRequest.prototype.table_size_options = null; + DeleteTabletRequest.prototype.allow_primary = false; /** - * Creates a new FindSchemaRequest instance using the specified properties. + * Creates a new DeleteTabletRequest instance using the specified properties. * @function create - * @memberof vtadmin.FindSchemaRequest + * @memberof vtadmin.DeleteTabletRequest * @static - * @param {vtadmin.IFindSchemaRequest=} [properties] Properties to set - * @returns {vtadmin.FindSchemaRequest} FindSchemaRequest instance + * @param {vtadmin.IDeleteTabletRequest=} [properties] Properties to set + * @returns {vtadmin.DeleteTabletRequest} DeleteTabletRequest instance */ - FindSchemaRequest.create = function create(properties) { - return new FindSchemaRequest(properties); + DeleteTabletRequest.create = function create(properties) { + return new DeleteTabletRequest(properties); }; /** - * Encodes the specified FindSchemaRequest message. Does not implicitly {@link vtadmin.FindSchemaRequest.verify|verify} messages. + * Encodes the specified DeleteTabletRequest message. Does not implicitly {@link vtadmin.DeleteTabletRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.FindSchemaRequest + * @memberof vtadmin.DeleteTabletRequest * @static - * @param {vtadmin.IFindSchemaRequest} message FindSchemaRequest message or plain object to encode + * @param {vtadmin.IDeleteTabletRequest} message DeleteTabletRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - FindSchemaRequest.encode = function encode(message, writer) { + DeleteTabletRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.table != null && Object.hasOwnProperty.call(message, "table")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.table); + if (message.alias != null && Object.hasOwnProperty.call(message, "alias")) + $root.topodata.TabletAlias.encode(message.alias, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); if (message.cluster_ids != null && message.cluster_ids.length) for (let i = 0; i < message.cluster_ids.length; ++i) writer.uint32(/* id 2, wireType 2 =*/18).string(message.cluster_ids[i]); - if (message.table_size_options != null && Object.hasOwnProperty.call(message, "table_size_options")) - $root.vtadmin.GetSchemaTableSizeOptions.encode(message.table_size_options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.allow_primary != null && Object.hasOwnProperty.call(message, "allow_primary")) + writer.uint32(/* id 3, wireType 0 =*/24).bool(message.allow_primary); return writer; }; /** - * Encodes the specified FindSchemaRequest message, length delimited. Does not implicitly {@link vtadmin.FindSchemaRequest.verify|verify} messages. + * Encodes the specified DeleteTabletRequest message, length delimited. Does not implicitly {@link vtadmin.DeleteTabletRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.FindSchemaRequest + * @memberof vtadmin.DeleteTabletRequest * @static - * @param {vtadmin.IFindSchemaRequest} message FindSchemaRequest message or plain object to encode + * @param {vtadmin.IDeleteTabletRequest} message DeleteTabletRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - FindSchemaRequest.encodeDelimited = function encodeDelimited(message, writer) { + DeleteTabletRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a FindSchemaRequest message from the specified reader or buffer. + * Decodes a DeleteTabletRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.FindSchemaRequest + * @memberof vtadmin.DeleteTabletRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.FindSchemaRequest} FindSchemaRequest + * @returns {vtadmin.DeleteTabletRequest} DeleteTabletRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FindSchemaRequest.decode = function decode(reader, length) { + DeleteTabletRequest.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.vtadmin.FindSchemaRequest(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.DeleteTabletRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - message.table = reader.string(); + message.alias = $root.topodata.TabletAlias.decode(reader, reader.uint32()); break; } case 2: { @@ -8764,7 +9096,7 @@ export const vtadmin = $root.vtadmin = (() => { break; } case 3: { - message.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.decode(reader, reader.uint32()); + message.allow_primary = reader.bool(); break; } default: @@ -8776,35 +9108,37 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a FindSchemaRequest message from the specified reader or buffer, length delimited. + * Decodes a DeleteTabletRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.FindSchemaRequest + * @memberof vtadmin.DeleteTabletRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.FindSchemaRequest} FindSchemaRequest + * @returns {vtadmin.DeleteTabletRequest} DeleteTabletRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FindSchemaRequest.decodeDelimited = function decodeDelimited(reader) { + DeleteTabletRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a FindSchemaRequest message. + * Verifies a DeleteTabletRequest message. * @function verify - * @memberof vtadmin.FindSchemaRequest + * @memberof vtadmin.DeleteTabletRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FindSchemaRequest.verify = function verify(message) { + DeleteTabletRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.table != null && message.hasOwnProperty("table")) - if (!$util.isString(message.table)) - return "table: string expected"; + if (message.alias != null && message.hasOwnProperty("alias")) { + let error = $root.topodata.TabletAlias.verify(message.alias); + if (error) + return "alias." + error; + } if (message.cluster_ids != null && message.hasOwnProperty("cluster_ids")) { if (!Array.isArray(message.cluster_ids)) return "cluster_ids: array expected"; @@ -8812,127 +9146,120 @@ export const vtadmin = $root.vtadmin = (() => { if (!$util.isString(message.cluster_ids[i])) return "cluster_ids: string[] expected"; } - if (message.table_size_options != null && message.hasOwnProperty("table_size_options")) { - let error = $root.vtadmin.GetSchemaTableSizeOptions.verify(message.table_size_options); - if (error) - return "table_size_options." + error; - } + if (message.allow_primary != null && message.hasOwnProperty("allow_primary")) + if (typeof message.allow_primary !== "boolean") + return "allow_primary: boolean expected"; return null; }; /** - * Creates a FindSchemaRequest message from a plain object. Also converts values to their respective internal types. + * Creates a DeleteTabletRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.FindSchemaRequest + * @memberof vtadmin.DeleteTabletRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.FindSchemaRequest} FindSchemaRequest + * @returns {vtadmin.DeleteTabletRequest} DeleteTabletRequest */ - FindSchemaRequest.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.FindSchemaRequest) + DeleteTabletRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.DeleteTabletRequest) return object; - let message = new $root.vtadmin.FindSchemaRequest(); - if (object.table != null) - message.table = String(object.table); + let message = new $root.vtadmin.DeleteTabletRequest(); + if (object.alias != null) { + if (typeof object.alias !== "object") + throw TypeError(".vtadmin.DeleteTabletRequest.alias: object expected"); + message.alias = $root.topodata.TabletAlias.fromObject(object.alias); + } if (object.cluster_ids) { if (!Array.isArray(object.cluster_ids)) - throw TypeError(".vtadmin.FindSchemaRequest.cluster_ids: array expected"); + throw TypeError(".vtadmin.DeleteTabletRequest.cluster_ids: array expected"); message.cluster_ids = []; for (let i = 0; i < object.cluster_ids.length; ++i) message.cluster_ids[i] = String(object.cluster_ids[i]); } - if (object.table_size_options != null) { - if (typeof object.table_size_options !== "object") - throw TypeError(".vtadmin.FindSchemaRequest.table_size_options: object expected"); - message.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.fromObject(object.table_size_options); - } + if (object.allow_primary != null) + message.allow_primary = Boolean(object.allow_primary); return message; }; /** - * Creates a plain object from a FindSchemaRequest message. Also converts values to other types if specified. + * Creates a plain object from a DeleteTabletRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.FindSchemaRequest + * @memberof vtadmin.DeleteTabletRequest * @static - * @param {vtadmin.FindSchemaRequest} message FindSchemaRequest + * @param {vtadmin.DeleteTabletRequest} message DeleteTabletRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - FindSchemaRequest.toObject = function toObject(message, options) { + DeleteTabletRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; if (options.arrays || options.defaults) object.cluster_ids = []; if (options.defaults) { - object.table = ""; - object.table_size_options = null; + object.alias = null; + object.allow_primary = false; } - if (message.table != null && message.hasOwnProperty("table")) - object.table = message.table; + if (message.alias != null && message.hasOwnProperty("alias")) + object.alias = $root.topodata.TabletAlias.toObject(message.alias, options); if (message.cluster_ids && message.cluster_ids.length) { object.cluster_ids = []; for (let j = 0; j < message.cluster_ids.length; ++j) object.cluster_ids[j] = message.cluster_ids[j]; } - if (message.table_size_options != null && message.hasOwnProperty("table_size_options")) - object.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.toObject(message.table_size_options, options); + if (message.allow_primary != null && message.hasOwnProperty("allow_primary")) + object.allow_primary = message.allow_primary; return object; }; /** - * Converts this FindSchemaRequest to JSON. + * Converts this DeleteTabletRequest to JSON. * @function toJSON - * @memberof vtadmin.FindSchemaRequest + * @memberof vtadmin.DeleteTabletRequest * @instance * @returns {Object.} JSON object */ - FindSchemaRequest.prototype.toJSON = function toJSON() { + DeleteTabletRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for FindSchemaRequest + * Gets the default type url for DeleteTabletRequest * @function getTypeUrl - * @memberof vtadmin.FindSchemaRequest + * @memberof vtadmin.DeleteTabletRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - FindSchemaRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + DeleteTabletRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.FindSchemaRequest"; + return typeUrlPrefix + "/vtadmin.DeleteTabletRequest"; }; - return FindSchemaRequest; + return DeleteTabletRequest; })(); - vtadmin.GetBackupsRequest = (function() { + vtadmin.DeleteTabletResponse = (function() { /** - * Properties of a GetBackupsRequest. + * Properties of a DeleteTabletResponse. * @memberof vtadmin - * @interface IGetBackupsRequest - * @property {Array.|null} [cluster_ids] GetBackupsRequest cluster_ids - * @property {Array.|null} [keyspaces] GetBackupsRequest keyspaces - * @property {Array.|null} [keyspace_shards] GetBackupsRequest keyspace_shards - * @property {vtctldata.IGetBackupsRequest|null} [request_options] GetBackupsRequest request_options + * @interface IDeleteTabletResponse + * @property {string|null} [status] DeleteTabletResponse status + * @property {vtadmin.ICluster|null} [cluster] DeleteTabletResponse cluster */ /** - * Constructs a new GetBackupsRequest. + * Constructs a new DeleteTabletResponse. * @memberof vtadmin - * @classdesc Represents a GetBackupsRequest. - * @implements IGetBackupsRequest + * @classdesc Represents a DeleteTabletResponse. + * @implements IDeleteTabletResponse * @constructor - * @param {vtadmin.IGetBackupsRequest=} [properties] Properties to set + * @param {vtadmin.IDeleteTabletResponse=} [properties] Properties to set */ - function GetBackupsRequest(properties) { - this.cluster_ids = []; - this.keyspaces = []; - this.keyspace_shards = []; + function DeleteTabletResponse(properties) { if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -8940,126 +9267,89 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * GetBackupsRequest cluster_ids. - * @member {Array.} cluster_ids - * @memberof vtadmin.GetBackupsRequest + * DeleteTabletResponse status. + * @member {string} status + * @memberof vtadmin.DeleteTabletResponse * @instance */ - GetBackupsRequest.prototype.cluster_ids = $util.emptyArray; + DeleteTabletResponse.prototype.status = ""; /** - * GetBackupsRequest keyspaces. - * @member {Array.} keyspaces - * @memberof vtadmin.GetBackupsRequest - * @instance - */ - GetBackupsRequest.prototype.keyspaces = $util.emptyArray; - - /** - * GetBackupsRequest keyspace_shards. - * @member {Array.} keyspace_shards - * @memberof vtadmin.GetBackupsRequest - * @instance - */ - GetBackupsRequest.prototype.keyspace_shards = $util.emptyArray; - - /** - * GetBackupsRequest request_options. - * @member {vtctldata.IGetBackupsRequest|null|undefined} request_options - * @memberof vtadmin.GetBackupsRequest + * DeleteTabletResponse cluster. + * @member {vtadmin.ICluster|null|undefined} cluster + * @memberof vtadmin.DeleteTabletResponse * @instance */ - GetBackupsRequest.prototype.request_options = null; + DeleteTabletResponse.prototype.cluster = null; /** - * Creates a new GetBackupsRequest instance using the specified properties. + * Creates a new DeleteTabletResponse instance using the specified properties. * @function create - * @memberof vtadmin.GetBackupsRequest + * @memberof vtadmin.DeleteTabletResponse * @static - * @param {vtadmin.IGetBackupsRequest=} [properties] Properties to set - * @returns {vtadmin.GetBackupsRequest} GetBackupsRequest instance + * @param {vtadmin.IDeleteTabletResponse=} [properties] Properties to set + * @returns {vtadmin.DeleteTabletResponse} DeleteTabletResponse instance */ - GetBackupsRequest.create = function create(properties) { - return new GetBackupsRequest(properties); + DeleteTabletResponse.create = function create(properties) { + return new DeleteTabletResponse(properties); }; /** - * Encodes the specified GetBackupsRequest message. Does not implicitly {@link vtadmin.GetBackupsRequest.verify|verify} messages. + * Encodes the specified DeleteTabletResponse message. Does not implicitly {@link vtadmin.DeleteTabletResponse.verify|verify} messages. * @function encode - * @memberof vtadmin.GetBackupsRequest + * @memberof vtadmin.DeleteTabletResponse * @static - * @param {vtadmin.IGetBackupsRequest} message GetBackupsRequest message or plain object to encode + * @param {vtadmin.IDeleteTabletResponse} message DeleteTabletResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetBackupsRequest.encode = function encode(message, writer) { + DeleteTabletResponse.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.cluster_ids != null && message.cluster_ids.length) - for (let i = 0; i < message.cluster_ids.length; ++i) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_ids[i]); - if (message.keyspaces != null && message.keyspaces.length) - for (let i = 0; i < message.keyspaces.length; ++i) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.keyspaces[i]); - if (message.keyspace_shards != null && message.keyspace_shards.length) - for (let i = 0; i < message.keyspace_shards.length; ++i) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.keyspace_shards[i]); - if (message.request_options != null && Object.hasOwnProperty.call(message, "request_options")) - $root.vtctldata.GetBackupsRequest.encode(message.request_options, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.status != null && Object.hasOwnProperty.call(message, "status")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.status); + if (message.cluster != null && Object.hasOwnProperty.call(message, "cluster")) + $root.vtadmin.Cluster.encode(message.cluster, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); return writer; }; /** - * Encodes the specified GetBackupsRequest message, length delimited. Does not implicitly {@link vtadmin.GetBackupsRequest.verify|verify} messages. + * Encodes the specified DeleteTabletResponse message, length delimited. Does not implicitly {@link vtadmin.DeleteTabletResponse.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.GetBackupsRequest + * @memberof vtadmin.DeleteTabletResponse * @static - * @param {vtadmin.IGetBackupsRequest} message GetBackupsRequest message or plain object to encode + * @param {vtadmin.IDeleteTabletResponse} message DeleteTabletResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetBackupsRequest.encodeDelimited = function encodeDelimited(message, writer) { + DeleteTabletResponse.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetBackupsRequest message from the specified reader or buffer. + * Decodes a DeleteTabletResponse message from the specified reader or buffer. * @function decode - * @memberof vtadmin.GetBackupsRequest + * @memberof vtadmin.DeleteTabletResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.GetBackupsRequest} GetBackupsRequest + * @returns {vtadmin.DeleteTabletResponse} DeleteTabletResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetBackupsRequest.decode = function decode(reader, length) { + DeleteTabletResponse.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.vtadmin.GetBackupsRequest(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.DeleteTabletResponse(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - if (!(message.cluster_ids && message.cluster_ids.length)) - message.cluster_ids = []; - message.cluster_ids.push(reader.string()); + message.status = reader.string(); break; } case 2: { - if (!(message.keyspaces && message.keyspaces.length)) - message.keyspaces = []; - message.keyspaces.push(reader.string()); - break; - } - case 3: { - if (!(message.keyspace_shards && message.keyspace_shards.length)) - message.keyspace_shards = []; - message.keyspace_shards.push(reader.string()); - break; - } - case 4: { - message.request_options = $root.vtctldata.GetBackupsRequest.decode(reader, reader.uint32()); + message.cluster = $root.vtadmin.Cluster.decode(reader, reader.uint32()); break; } default: @@ -9071,190 +9361,137 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a GetBackupsRequest message from the specified reader or buffer, length delimited. + * Decodes a DeleteTabletResponse message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetBackupsRequest + * @memberof vtadmin.DeleteTabletResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetBackupsRequest} GetBackupsRequest + * @returns {vtadmin.DeleteTabletResponse} DeleteTabletResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetBackupsRequest.decodeDelimited = function decodeDelimited(reader) { + DeleteTabletResponse.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetBackupsRequest message. + * Verifies a DeleteTabletResponse message. * @function verify - * @memberof vtadmin.GetBackupsRequest + * @memberof vtadmin.DeleteTabletResponse * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetBackupsRequest.verify = function verify(message) { + DeleteTabletResponse.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.cluster_ids != null && message.hasOwnProperty("cluster_ids")) { - if (!Array.isArray(message.cluster_ids)) - return "cluster_ids: array expected"; - for (let i = 0; i < message.cluster_ids.length; ++i) - if (!$util.isString(message.cluster_ids[i])) - return "cluster_ids: string[] expected"; - } - if (message.keyspaces != null && message.hasOwnProperty("keyspaces")) { - if (!Array.isArray(message.keyspaces)) - return "keyspaces: array expected"; - for (let i = 0; i < message.keyspaces.length; ++i) - if (!$util.isString(message.keyspaces[i])) - return "keyspaces: string[] expected"; - } - if (message.keyspace_shards != null && message.hasOwnProperty("keyspace_shards")) { - if (!Array.isArray(message.keyspace_shards)) - return "keyspace_shards: array expected"; - for (let i = 0; i < message.keyspace_shards.length; ++i) - if (!$util.isString(message.keyspace_shards[i])) - return "keyspace_shards: string[] expected"; - } - if (message.request_options != null && message.hasOwnProperty("request_options")) { - let error = $root.vtctldata.GetBackupsRequest.verify(message.request_options); + if (message.status != null && message.hasOwnProperty("status")) + if (!$util.isString(message.status)) + return "status: string expected"; + if (message.cluster != null && message.hasOwnProperty("cluster")) { + let error = $root.vtadmin.Cluster.verify(message.cluster); if (error) - return "request_options." + error; + return "cluster." + error; } return null; }; /** - * Creates a GetBackupsRequest message from a plain object. Also converts values to their respective internal types. + * Creates a DeleteTabletResponse message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetBackupsRequest + * @memberof vtadmin.DeleteTabletResponse * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetBackupsRequest} GetBackupsRequest + * @returns {vtadmin.DeleteTabletResponse} DeleteTabletResponse */ - GetBackupsRequest.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetBackupsRequest) + DeleteTabletResponse.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.DeleteTabletResponse) return object; - let message = new $root.vtadmin.GetBackupsRequest(); - if (object.cluster_ids) { - if (!Array.isArray(object.cluster_ids)) - throw TypeError(".vtadmin.GetBackupsRequest.cluster_ids: array expected"); - message.cluster_ids = []; - for (let i = 0; i < object.cluster_ids.length; ++i) - message.cluster_ids[i] = String(object.cluster_ids[i]); - } - if (object.keyspaces) { - if (!Array.isArray(object.keyspaces)) - throw TypeError(".vtadmin.GetBackupsRequest.keyspaces: array expected"); - message.keyspaces = []; - for (let i = 0; i < object.keyspaces.length; ++i) - message.keyspaces[i] = String(object.keyspaces[i]); - } - if (object.keyspace_shards) { - if (!Array.isArray(object.keyspace_shards)) - throw TypeError(".vtadmin.GetBackupsRequest.keyspace_shards: array expected"); - message.keyspace_shards = []; - for (let i = 0; i < object.keyspace_shards.length; ++i) - message.keyspace_shards[i] = String(object.keyspace_shards[i]); - } - if (object.request_options != null) { - if (typeof object.request_options !== "object") - throw TypeError(".vtadmin.GetBackupsRequest.request_options: object expected"); - message.request_options = $root.vtctldata.GetBackupsRequest.fromObject(object.request_options); + let message = new $root.vtadmin.DeleteTabletResponse(); + if (object.status != null) + message.status = String(object.status); + if (object.cluster != null) { + if (typeof object.cluster !== "object") + throw TypeError(".vtadmin.DeleteTabletResponse.cluster: object expected"); + message.cluster = $root.vtadmin.Cluster.fromObject(object.cluster); } return message; }; /** - * Creates a plain object from a GetBackupsRequest message. Also converts values to other types if specified. + * Creates a plain object from a DeleteTabletResponse message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetBackupsRequest + * @memberof vtadmin.DeleteTabletResponse * @static - * @param {vtadmin.GetBackupsRequest} message GetBackupsRequest + * @param {vtadmin.DeleteTabletResponse} message DeleteTabletResponse * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetBackupsRequest.toObject = function toObject(message, options) { + DeleteTabletResponse.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; - if (options.arrays || options.defaults) { - object.cluster_ids = []; - object.keyspaces = []; - object.keyspace_shards = []; - } - if (options.defaults) - object.request_options = null; - if (message.cluster_ids && message.cluster_ids.length) { - object.cluster_ids = []; - for (let j = 0; j < message.cluster_ids.length; ++j) - object.cluster_ids[j] = message.cluster_ids[j]; - } - if (message.keyspaces && message.keyspaces.length) { - object.keyspaces = []; - for (let j = 0; j < message.keyspaces.length; ++j) - object.keyspaces[j] = message.keyspaces[j]; - } - if (message.keyspace_shards && message.keyspace_shards.length) { - object.keyspace_shards = []; - for (let j = 0; j < message.keyspace_shards.length; ++j) - object.keyspace_shards[j] = message.keyspace_shards[j]; + if (options.defaults) { + object.status = ""; + object.cluster = null; } - if (message.request_options != null && message.hasOwnProperty("request_options")) - object.request_options = $root.vtctldata.GetBackupsRequest.toObject(message.request_options, options); + if (message.status != null && message.hasOwnProperty("status")) + object.status = message.status; + if (message.cluster != null && message.hasOwnProperty("cluster")) + object.cluster = $root.vtadmin.Cluster.toObject(message.cluster, options); return object; }; /** - * Converts this GetBackupsRequest to JSON. + * Converts this DeleteTabletResponse to JSON. * @function toJSON - * @memberof vtadmin.GetBackupsRequest + * @memberof vtadmin.DeleteTabletResponse * @instance * @returns {Object.} JSON object */ - GetBackupsRequest.prototype.toJSON = function toJSON() { + DeleteTabletResponse.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetBackupsRequest + * Gets the default type url for DeleteTabletResponse * @function getTypeUrl - * @memberof vtadmin.GetBackupsRequest + * @memberof vtadmin.DeleteTabletResponse * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetBackupsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + DeleteTabletResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetBackupsRequest"; + return typeUrlPrefix + "/vtadmin.DeleteTabletResponse"; }; - return GetBackupsRequest; + return DeleteTabletResponse; })(); - vtadmin.GetBackupsResponse = (function() { + vtadmin.EmergencyFailoverShardRequest = (function() { /** - * Properties of a GetBackupsResponse. + * Properties of an EmergencyFailoverShardRequest. * @memberof vtadmin - * @interface IGetBackupsResponse - * @property {Array.|null} [backups] GetBackupsResponse backups + * @interface IEmergencyFailoverShardRequest + * @property {string|null} [cluster_id] EmergencyFailoverShardRequest cluster_id + * @property {vtctldata.IEmergencyReparentShardRequest|null} [options] EmergencyFailoverShardRequest options */ /** - * Constructs a new GetBackupsResponse. + * Constructs a new EmergencyFailoverShardRequest. * @memberof vtadmin - * @classdesc Represents a GetBackupsResponse. - * @implements IGetBackupsResponse + * @classdesc Represents an EmergencyFailoverShardRequest. + * @implements IEmergencyFailoverShardRequest * @constructor - * @param {vtadmin.IGetBackupsResponse=} [properties] Properties to set + * @param {vtadmin.IEmergencyFailoverShardRequest=} [properties] Properties to set */ - function GetBackupsResponse(properties) { - this.backups = []; + function EmergencyFailoverShardRequest(properties) { if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -9262,78 +9499,89 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * GetBackupsResponse backups. - * @member {Array.} backups - * @memberof vtadmin.GetBackupsResponse + * EmergencyFailoverShardRequest cluster_id. + * @member {string} cluster_id + * @memberof vtadmin.EmergencyFailoverShardRequest * @instance */ - GetBackupsResponse.prototype.backups = $util.emptyArray; + EmergencyFailoverShardRequest.prototype.cluster_id = ""; /** - * Creates a new GetBackupsResponse instance using the specified properties. + * EmergencyFailoverShardRequest options. + * @member {vtctldata.IEmergencyReparentShardRequest|null|undefined} options + * @memberof vtadmin.EmergencyFailoverShardRequest + * @instance + */ + EmergencyFailoverShardRequest.prototype.options = null; + + /** + * Creates a new EmergencyFailoverShardRequest instance using the specified properties. * @function create - * @memberof vtadmin.GetBackupsResponse + * @memberof vtadmin.EmergencyFailoverShardRequest * @static - * @param {vtadmin.IGetBackupsResponse=} [properties] Properties to set - * @returns {vtadmin.GetBackupsResponse} GetBackupsResponse instance + * @param {vtadmin.IEmergencyFailoverShardRequest=} [properties] Properties to set + * @returns {vtadmin.EmergencyFailoverShardRequest} EmergencyFailoverShardRequest instance */ - GetBackupsResponse.create = function create(properties) { - return new GetBackupsResponse(properties); + EmergencyFailoverShardRequest.create = function create(properties) { + return new EmergencyFailoverShardRequest(properties); }; /** - * Encodes the specified GetBackupsResponse message. Does not implicitly {@link vtadmin.GetBackupsResponse.verify|verify} messages. + * Encodes the specified EmergencyFailoverShardRequest message. Does not implicitly {@link vtadmin.EmergencyFailoverShardRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.GetBackupsResponse + * @memberof vtadmin.EmergencyFailoverShardRequest * @static - * @param {vtadmin.IGetBackupsResponse} message GetBackupsResponse message or plain object to encode + * @param {vtadmin.IEmergencyFailoverShardRequest} message EmergencyFailoverShardRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetBackupsResponse.encode = function encode(message, writer) { + EmergencyFailoverShardRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.backups != null && message.backups.length) - for (let i = 0; i < message.backups.length; ++i) - $root.vtadmin.ClusterBackup.encode(message.backups[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.vtctldata.EmergencyReparentShardRequest.encode(message.options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); return writer; }; /** - * Encodes the specified GetBackupsResponse message, length delimited. Does not implicitly {@link vtadmin.GetBackupsResponse.verify|verify} messages. + * Encodes the specified EmergencyFailoverShardRequest message, length delimited. Does not implicitly {@link vtadmin.EmergencyFailoverShardRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.GetBackupsResponse + * @memberof vtadmin.EmergencyFailoverShardRequest * @static - * @param {vtadmin.IGetBackupsResponse} message GetBackupsResponse message or plain object to encode + * @param {vtadmin.IEmergencyFailoverShardRequest} message EmergencyFailoverShardRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetBackupsResponse.encodeDelimited = function encodeDelimited(message, writer) { + EmergencyFailoverShardRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetBackupsResponse message from the specified reader or buffer. + * Decodes an EmergencyFailoverShardRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.GetBackupsResponse + * @memberof vtadmin.EmergencyFailoverShardRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.GetBackupsResponse} GetBackupsResponse + * @returns {vtadmin.EmergencyFailoverShardRequest} EmergencyFailoverShardRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetBackupsResponse.decode = function decode(reader, length) { + EmergencyFailoverShardRequest.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.vtadmin.GetBackupsResponse(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.EmergencyFailoverShardRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - if (!(message.backups && message.backups.length)) - message.backups = []; - message.backups.push($root.vtadmin.ClusterBackup.decode(reader, reader.uint32())); + message.cluster_id = reader.string(); + break; + } + case 2: { + message.options = $root.vtctldata.EmergencyReparentShardRequest.decode(reader, reader.uint32()); break; } default: @@ -9345,143 +9593,141 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a GetBackupsResponse message from the specified reader or buffer, length delimited. + * Decodes an EmergencyFailoverShardRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetBackupsResponse + * @memberof vtadmin.EmergencyFailoverShardRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetBackupsResponse} GetBackupsResponse + * @returns {vtadmin.EmergencyFailoverShardRequest} EmergencyFailoverShardRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetBackupsResponse.decodeDelimited = function decodeDelimited(reader) { + EmergencyFailoverShardRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetBackupsResponse message. + * Verifies an EmergencyFailoverShardRequest message. * @function verify - * @memberof vtadmin.GetBackupsResponse + * @memberof vtadmin.EmergencyFailoverShardRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetBackupsResponse.verify = function verify(message) { + EmergencyFailoverShardRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.backups != null && message.hasOwnProperty("backups")) { - if (!Array.isArray(message.backups)) - return "backups: array expected"; - for (let i = 0; i < message.backups.length; ++i) { - let error = $root.vtadmin.ClusterBackup.verify(message.backups[i]); - if (error) - return "backups." + error; - } + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + if (!$util.isString(message.cluster_id)) + return "cluster_id: string expected"; + if (message.options != null && message.hasOwnProperty("options")) { + let error = $root.vtctldata.EmergencyReparentShardRequest.verify(message.options); + if (error) + return "options." + error; } return null; }; /** - * Creates a GetBackupsResponse message from a plain object. Also converts values to their respective internal types. + * Creates an EmergencyFailoverShardRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetBackupsResponse + * @memberof vtadmin.EmergencyFailoverShardRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetBackupsResponse} GetBackupsResponse + * @returns {vtadmin.EmergencyFailoverShardRequest} EmergencyFailoverShardRequest */ - GetBackupsResponse.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetBackupsResponse) + EmergencyFailoverShardRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.EmergencyFailoverShardRequest) return object; - let message = new $root.vtadmin.GetBackupsResponse(); - if (object.backups) { - if (!Array.isArray(object.backups)) - throw TypeError(".vtadmin.GetBackupsResponse.backups: array expected"); - message.backups = []; - for (let i = 0; i < object.backups.length; ++i) { - if (typeof object.backups[i] !== "object") - throw TypeError(".vtadmin.GetBackupsResponse.backups: object expected"); - message.backups[i] = $root.vtadmin.ClusterBackup.fromObject(object.backups[i]); - } + let message = new $root.vtadmin.EmergencyFailoverShardRequest(); + if (object.cluster_id != null) + message.cluster_id = String(object.cluster_id); + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".vtadmin.EmergencyFailoverShardRequest.options: object expected"); + message.options = $root.vtctldata.EmergencyReparentShardRequest.fromObject(object.options); } return message; }; /** - * Creates a plain object from a GetBackupsResponse message. Also converts values to other types if specified. + * Creates a plain object from an EmergencyFailoverShardRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetBackupsResponse + * @memberof vtadmin.EmergencyFailoverShardRequest * @static - * @param {vtadmin.GetBackupsResponse} message GetBackupsResponse + * @param {vtadmin.EmergencyFailoverShardRequest} message EmergencyFailoverShardRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetBackupsResponse.toObject = function toObject(message, options) { + EmergencyFailoverShardRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; - if (options.arrays || options.defaults) - object.backups = []; - if (message.backups && message.backups.length) { - object.backups = []; - for (let j = 0; j < message.backups.length; ++j) - object.backups[j] = $root.vtadmin.ClusterBackup.toObject(message.backups[j], options); + if (options.defaults) { + object.cluster_id = ""; + object.options = null; } + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + object.cluster_id = message.cluster_id; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.vtctldata.EmergencyReparentShardRequest.toObject(message.options, options); return object; }; /** - * Converts this GetBackupsResponse to JSON. + * Converts this EmergencyFailoverShardRequest to JSON. * @function toJSON - * @memberof vtadmin.GetBackupsResponse + * @memberof vtadmin.EmergencyFailoverShardRequest * @instance * @returns {Object.} JSON object */ - GetBackupsResponse.prototype.toJSON = function toJSON() { + EmergencyFailoverShardRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetBackupsResponse + * Gets the default type url for EmergencyFailoverShardRequest * @function getTypeUrl - * @memberof vtadmin.GetBackupsResponse + * @memberof vtadmin.EmergencyFailoverShardRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetBackupsResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + EmergencyFailoverShardRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetBackupsResponse"; + return typeUrlPrefix + "/vtadmin.EmergencyFailoverShardRequest"; }; - return GetBackupsResponse; + return EmergencyFailoverShardRequest; })(); - vtadmin.GetCellInfosRequest = (function() { + vtadmin.EmergencyFailoverShardResponse = (function() { /** - * Properties of a GetCellInfosRequest. + * Properties of an EmergencyFailoverShardResponse. * @memberof vtadmin - * @interface IGetCellInfosRequest - * @property {Array.|null} [cluster_ids] GetCellInfosRequest cluster_ids - * @property {Array.|null} [cells] GetCellInfosRequest cells - * @property {boolean|null} [names_only] GetCellInfosRequest names_only + * @interface IEmergencyFailoverShardResponse + * @property {vtadmin.ICluster|null} [cluster] EmergencyFailoverShardResponse cluster + * @property {string|null} [keyspace] EmergencyFailoverShardResponse keyspace + * @property {string|null} [shard] EmergencyFailoverShardResponse shard + * @property {topodata.ITabletAlias|null} [promoted_primary] EmergencyFailoverShardResponse promoted_primary + * @property {Array.|null} [events] EmergencyFailoverShardResponse events */ /** - * Constructs a new GetCellInfosRequest. + * Constructs a new EmergencyFailoverShardResponse. * @memberof vtadmin - * @classdesc Represents a GetCellInfosRequest. - * @implements IGetCellInfosRequest + * @classdesc Represents an EmergencyFailoverShardResponse. + * @implements IEmergencyFailoverShardResponse * @constructor - * @param {vtadmin.IGetCellInfosRequest=} [properties] Properties to set + * @param {vtadmin.IEmergencyFailoverShardResponse=} [properties] Properties to set */ - function GetCellInfosRequest(properties) { - this.cluster_ids = []; - this.cells = []; + function EmergencyFailoverShardResponse(properties) { + this.events = []; if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -9489,92 +9735,1725 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * GetCellInfosRequest cluster_ids. - * @member {Array.} cluster_ids - * @memberof vtadmin.GetCellInfosRequest + * EmergencyFailoverShardResponse cluster. + * @member {vtadmin.ICluster|null|undefined} cluster + * @memberof vtadmin.EmergencyFailoverShardResponse * @instance */ - GetCellInfosRequest.prototype.cluster_ids = $util.emptyArray; + EmergencyFailoverShardResponse.prototype.cluster = null; /** - * GetCellInfosRequest cells. - * @member {Array.} cells - * @memberof vtadmin.GetCellInfosRequest + * EmergencyFailoverShardResponse keyspace. + * @member {string} keyspace + * @memberof vtadmin.EmergencyFailoverShardResponse * @instance */ - GetCellInfosRequest.prototype.cells = $util.emptyArray; + EmergencyFailoverShardResponse.prototype.keyspace = ""; /** - * GetCellInfosRequest names_only. - * @member {boolean} names_only - * @memberof vtadmin.GetCellInfosRequest + * EmergencyFailoverShardResponse shard. + * @member {string} shard + * @memberof vtadmin.EmergencyFailoverShardResponse * @instance */ - GetCellInfosRequest.prototype.names_only = false; + EmergencyFailoverShardResponse.prototype.shard = ""; /** - * Creates a new GetCellInfosRequest instance using the specified properties. + * EmergencyFailoverShardResponse promoted_primary. + * @member {topodata.ITabletAlias|null|undefined} promoted_primary + * @memberof vtadmin.EmergencyFailoverShardResponse + * @instance + */ + EmergencyFailoverShardResponse.prototype.promoted_primary = null; + + /** + * EmergencyFailoverShardResponse events. + * @member {Array.} events + * @memberof vtadmin.EmergencyFailoverShardResponse + * @instance + */ + EmergencyFailoverShardResponse.prototype.events = $util.emptyArray; + + /** + * Creates a new EmergencyFailoverShardResponse instance using the specified properties. * @function create - * @memberof vtadmin.GetCellInfosRequest + * @memberof vtadmin.EmergencyFailoverShardResponse * @static - * @param {vtadmin.IGetCellInfosRequest=} [properties] Properties to set - * @returns {vtadmin.GetCellInfosRequest} GetCellInfosRequest instance + * @param {vtadmin.IEmergencyFailoverShardResponse=} [properties] Properties to set + * @returns {vtadmin.EmergencyFailoverShardResponse} EmergencyFailoverShardResponse instance */ - GetCellInfosRequest.create = function create(properties) { - return new GetCellInfosRequest(properties); + EmergencyFailoverShardResponse.create = function create(properties) { + return new EmergencyFailoverShardResponse(properties); }; /** - * Encodes the specified GetCellInfosRequest message. Does not implicitly {@link vtadmin.GetCellInfosRequest.verify|verify} messages. + * Encodes the specified EmergencyFailoverShardResponse message. Does not implicitly {@link vtadmin.EmergencyFailoverShardResponse.verify|verify} messages. * @function encode - * @memberof vtadmin.GetCellInfosRequest + * @memberof vtadmin.EmergencyFailoverShardResponse * @static - * @param {vtadmin.IGetCellInfosRequest} message GetCellInfosRequest message or plain object to encode + * @param {vtadmin.IEmergencyFailoverShardResponse} message EmergencyFailoverShardResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetCellInfosRequest.encode = function encode(message, writer) { + EmergencyFailoverShardResponse.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.cluster_ids != null && message.cluster_ids.length) - for (let i = 0; i < message.cluster_ids.length; ++i) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_ids[i]); - if (message.cells != null && message.cells.length) - for (let i = 0; i < message.cells.length; ++i) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.cells[i]); - if (message.names_only != null && Object.hasOwnProperty.call(message, "names_only")) + if (message.cluster != null && Object.hasOwnProperty.call(message, "cluster")) + $root.vtadmin.Cluster.encode(message.cluster, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.keyspace != null && Object.hasOwnProperty.call(message, "keyspace")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.keyspace); + if (message.shard != null && Object.hasOwnProperty.call(message, "shard")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.shard); + if (message.promoted_primary != null && Object.hasOwnProperty.call(message, "promoted_primary")) + $root.topodata.TabletAlias.encode(message.promoted_primary, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.events != null && message.events.length) + for (let i = 0; i < message.events.length; ++i) + $root.logutil.Event.encode(message.events[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified EmergencyFailoverShardResponse message, length delimited. Does not implicitly {@link vtadmin.EmergencyFailoverShardResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof vtadmin.EmergencyFailoverShardResponse + * @static + * @param {vtadmin.IEmergencyFailoverShardResponse} message EmergencyFailoverShardResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EmergencyFailoverShardResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an EmergencyFailoverShardResponse message from the specified reader or buffer. + * @function decode + * @memberof vtadmin.EmergencyFailoverShardResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {vtadmin.EmergencyFailoverShardResponse} EmergencyFailoverShardResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EmergencyFailoverShardResponse.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.vtadmin.EmergencyFailoverShardResponse(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.cluster = $root.vtadmin.Cluster.decode(reader, reader.uint32()); + break; + } + case 2: { + message.keyspace = reader.string(); + break; + } + case 3: { + message.shard = reader.string(); + break; + } + case 4: { + message.promoted_primary = $root.topodata.TabletAlias.decode(reader, reader.uint32()); + break; + } + case 5: { + if (!(message.events && message.events.length)) + message.events = []; + message.events.push($root.logutil.Event.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an EmergencyFailoverShardResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof vtadmin.EmergencyFailoverShardResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {vtadmin.EmergencyFailoverShardResponse} EmergencyFailoverShardResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EmergencyFailoverShardResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an EmergencyFailoverShardResponse message. + * @function verify + * @memberof vtadmin.EmergencyFailoverShardResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + EmergencyFailoverShardResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.cluster != null && message.hasOwnProperty("cluster")) { + let error = $root.vtadmin.Cluster.verify(message.cluster); + if (error) + return "cluster." + error; + } + if (message.keyspace != null && message.hasOwnProperty("keyspace")) + if (!$util.isString(message.keyspace)) + return "keyspace: string expected"; + if (message.shard != null && message.hasOwnProperty("shard")) + if (!$util.isString(message.shard)) + return "shard: string expected"; + if (message.promoted_primary != null && message.hasOwnProperty("promoted_primary")) { + let error = $root.topodata.TabletAlias.verify(message.promoted_primary); + if (error) + return "promoted_primary." + error; + } + if (message.events != null && message.hasOwnProperty("events")) { + if (!Array.isArray(message.events)) + return "events: array expected"; + for (let i = 0; i < message.events.length; ++i) { + let error = $root.logutil.Event.verify(message.events[i]); + if (error) + return "events." + error; + } + } + return null; + }; + + /** + * Creates an EmergencyFailoverShardResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof vtadmin.EmergencyFailoverShardResponse + * @static + * @param {Object.} object Plain object + * @returns {vtadmin.EmergencyFailoverShardResponse} EmergencyFailoverShardResponse + */ + EmergencyFailoverShardResponse.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.EmergencyFailoverShardResponse) + return object; + let message = new $root.vtadmin.EmergencyFailoverShardResponse(); + if (object.cluster != null) { + if (typeof object.cluster !== "object") + throw TypeError(".vtadmin.EmergencyFailoverShardResponse.cluster: object expected"); + message.cluster = $root.vtadmin.Cluster.fromObject(object.cluster); + } + if (object.keyspace != null) + message.keyspace = String(object.keyspace); + if (object.shard != null) + message.shard = String(object.shard); + if (object.promoted_primary != null) { + if (typeof object.promoted_primary !== "object") + throw TypeError(".vtadmin.EmergencyFailoverShardResponse.promoted_primary: object expected"); + message.promoted_primary = $root.topodata.TabletAlias.fromObject(object.promoted_primary); + } + if (object.events) { + if (!Array.isArray(object.events)) + throw TypeError(".vtadmin.EmergencyFailoverShardResponse.events: array expected"); + message.events = []; + for (let i = 0; i < object.events.length; ++i) { + if (typeof object.events[i] !== "object") + throw TypeError(".vtadmin.EmergencyFailoverShardResponse.events: object expected"); + message.events[i] = $root.logutil.Event.fromObject(object.events[i]); + } + } + return message; + }; + + /** + * Creates a plain object from an EmergencyFailoverShardResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof vtadmin.EmergencyFailoverShardResponse + * @static + * @param {vtadmin.EmergencyFailoverShardResponse} message EmergencyFailoverShardResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + EmergencyFailoverShardResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + let object = {}; + if (options.arrays || options.defaults) + object.events = []; + if (options.defaults) { + object.cluster = null; + object.keyspace = ""; + object.shard = ""; + object.promoted_primary = null; + } + if (message.cluster != null && message.hasOwnProperty("cluster")) + object.cluster = $root.vtadmin.Cluster.toObject(message.cluster, options); + if (message.keyspace != null && message.hasOwnProperty("keyspace")) + object.keyspace = message.keyspace; + if (message.shard != null && message.hasOwnProperty("shard")) + object.shard = message.shard; + if (message.promoted_primary != null && message.hasOwnProperty("promoted_primary")) + object.promoted_primary = $root.topodata.TabletAlias.toObject(message.promoted_primary, options); + if (message.events && message.events.length) { + object.events = []; + for (let j = 0; j < message.events.length; ++j) + object.events[j] = $root.logutil.Event.toObject(message.events[j], options); + } + return object; + }; + + /** + * Converts this EmergencyFailoverShardResponse to JSON. + * @function toJSON + * @memberof vtadmin.EmergencyFailoverShardResponse + * @instance + * @returns {Object.} JSON object + */ + EmergencyFailoverShardResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for EmergencyFailoverShardResponse + * @function getTypeUrl + * @memberof vtadmin.EmergencyFailoverShardResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + EmergencyFailoverShardResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/vtadmin.EmergencyFailoverShardResponse"; + }; + + return EmergencyFailoverShardResponse; + })(); + + vtadmin.FindSchemaRequest = (function() { + + /** + * Properties of a FindSchemaRequest. + * @memberof vtadmin + * @interface IFindSchemaRequest + * @property {string|null} [table] FindSchemaRequest table + * @property {Array.|null} [cluster_ids] FindSchemaRequest cluster_ids + * @property {vtadmin.IGetSchemaTableSizeOptions|null} [table_size_options] FindSchemaRequest table_size_options + */ + + /** + * Constructs a new FindSchemaRequest. + * @memberof vtadmin + * @classdesc Represents a FindSchemaRequest. + * @implements IFindSchemaRequest + * @constructor + * @param {vtadmin.IFindSchemaRequest=} [properties] Properties to set + */ + function FindSchemaRequest(properties) { + this.cluster_ids = []; + 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]]; + } + + /** + * FindSchemaRequest table. + * @member {string} table + * @memberof vtadmin.FindSchemaRequest + * @instance + */ + FindSchemaRequest.prototype.table = ""; + + /** + * FindSchemaRequest cluster_ids. + * @member {Array.} cluster_ids + * @memberof vtadmin.FindSchemaRequest + * @instance + */ + FindSchemaRequest.prototype.cluster_ids = $util.emptyArray; + + /** + * FindSchemaRequest table_size_options. + * @member {vtadmin.IGetSchemaTableSizeOptions|null|undefined} table_size_options + * @memberof vtadmin.FindSchemaRequest + * @instance + */ + FindSchemaRequest.prototype.table_size_options = null; + + /** + * Creates a new FindSchemaRequest instance using the specified properties. + * @function create + * @memberof vtadmin.FindSchemaRequest + * @static + * @param {vtadmin.IFindSchemaRequest=} [properties] Properties to set + * @returns {vtadmin.FindSchemaRequest} FindSchemaRequest instance + */ + FindSchemaRequest.create = function create(properties) { + return new FindSchemaRequest(properties); + }; + + /** + * Encodes the specified FindSchemaRequest message. Does not implicitly {@link vtadmin.FindSchemaRequest.verify|verify} messages. + * @function encode + * @memberof vtadmin.FindSchemaRequest + * @static + * @param {vtadmin.IFindSchemaRequest} message FindSchemaRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FindSchemaRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.table != null && Object.hasOwnProperty.call(message, "table")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.table); + if (message.cluster_ids != null && message.cluster_ids.length) + for (let i = 0; i < message.cluster_ids.length; ++i) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.cluster_ids[i]); + if (message.table_size_options != null && Object.hasOwnProperty.call(message, "table_size_options")) + $root.vtadmin.GetSchemaTableSizeOptions.encode(message.table_size_options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified FindSchemaRequest message, length delimited. Does not implicitly {@link vtadmin.FindSchemaRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof vtadmin.FindSchemaRequest + * @static + * @param {vtadmin.IFindSchemaRequest} message FindSchemaRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FindSchemaRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FindSchemaRequest message from the specified reader or buffer. + * @function decode + * @memberof vtadmin.FindSchemaRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {vtadmin.FindSchemaRequest} FindSchemaRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FindSchemaRequest.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.vtadmin.FindSchemaRequest(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.table = reader.string(); + break; + } + case 2: { + if (!(message.cluster_ids && message.cluster_ids.length)) + message.cluster_ids = []; + message.cluster_ids.push(reader.string()); + break; + } + case 3: { + message.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FindSchemaRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof vtadmin.FindSchemaRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {vtadmin.FindSchemaRequest} FindSchemaRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FindSchemaRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FindSchemaRequest message. + * @function verify + * @memberof vtadmin.FindSchemaRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FindSchemaRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.table != null && message.hasOwnProperty("table")) + if (!$util.isString(message.table)) + return "table: string expected"; + if (message.cluster_ids != null && message.hasOwnProperty("cluster_ids")) { + if (!Array.isArray(message.cluster_ids)) + return "cluster_ids: array expected"; + for (let i = 0; i < message.cluster_ids.length; ++i) + if (!$util.isString(message.cluster_ids[i])) + return "cluster_ids: string[] expected"; + } + if (message.table_size_options != null && message.hasOwnProperty("table_size_options")) { + let error = $root.vtadmin.GetSchemaTableSizeOptions.verify(message.table_size_options); + if (error) + return "table_size_options." + error; + } + return null; + }; + + /** + * Creates a FindSchemaRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof vtadmin.FindSchemaRequest + * @static + * @param {Object.} object Plain object + * @returns {vtadmin.FindSchemaRequest} FindSchemaRequest + */ + FindSchemaRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.FindSchemaRequest) + return object; + let message = new $root.vtadmin.FindSchemaRequest(); + if (object.table != null) + message.table = String(object.table); + if (object.cluster_ids) { + if (!Array.isArray(object.cluster_ids)) + throw TypeError(".vtadmin.FindSchemaRequest.cluster_ids: array expected"); + message.cluster_ids = []; + for (let i = 0; i < object.cluster_ids.length; ++i) + message.cluster_ids[i] = String(object.cluster_ids[i]); + } + if (object.table_size_options != null) { + if (typeof object.table_size_options !== "object") + throw TypeError(".vtadmin.FindSchemaRequest.table_size_options: object expected"); + message.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.fromObject(object.table_size_options); + } + return message; + }; + + /** + * Creates a plain object from a FindSchemaRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof vtadmin.FindSchemaRequest + * @static + * @param {vtadmin.FindSchemaRequest} message FindSchemaRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FindSchemaRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + let object = {}; + if (options.arrays || options.defaults) + object.cluster_ids = []; + if (options.defaults) { + object.table = ""; + object.table_size_options = null; + } + if (message.table != null && message.hasOwnProperty("table")) + object.table = message.table; + if (message.cluster_ids && message.cluster_ids.length) { + object.cluster_ids = []; + for (let j = 0; j < message.cluster_ids.length; ++j) + object.cluster_ids[j] = message.cluster_ids[j]; + } + if (message.table_size_options != null && message.hasOwnProperty("table_size_options")) + object.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.toObject(message.table_size_options, options); + return object; + }; + + /** + * Converts this FindSchemaRequest to JSON. + * @function toJSON + * @memberof vtadmin.FindSchemaRequest + * @instance + * @returns {Object.} JSON object + */ + FindSchemaRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for FindSchemaRequest + * @function getTypeUrl + * @memberof vtadmin.FindSchemaRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FindSchemaRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/vtadmin.FindSchemaRequest"; + }; + + return FindSchemaRequest; + })(); + + vtadmin.GetBackupsRequest = (function() { + + /** + * Properties of a GetBackupsRequest. + * @memberof vtadmin + * @interface IGetBackupsRequest + * @property {Array.|null} [cluster_ids] GetBackupsRequest cluster_ids + * @property {Array.|null} [keyspaces] GetBackupsRequest keyspaces + * @property {Array.|null} [keyspace_shards] GetBackupsRequest keyspace_shards + * @property {vtctldata.IGetBackupsRequest|null} [request_options] GetBackupsRequest request_options + */ + + /** + * Constructs a new GetBackupsRequest. + * @memberof vtadmin + * @classdesc Represents a GetBackupsRequest. + * @implements IGetBackupsRequest + * @constructor + * @param {vtadmin.IGetBackupsRequest=} [properties] Properties to set + */ + function GetBackupsRequest(properties) { + this.cluster_ids = []; + this.keyspaces = []; + this.keyspace_shards = []; + 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]]; + } + + /** + * GetBackupsRequest cluster_ids. + * @member {Array.} cluster_ids + * @memberof vtadmin.GetBackupsRequest + * @instance + */ + GetBackupsRequest.prototype.cluster_ids = $util.emptyArray; + + /** + * GetBackupsRequest keyspaces. + * @member {Array.} keyspaces + * @memberof vtadmin.GetBackupsRequest + * @instance + */ + GetBackupsRequest.prototype.keyspaces = $util.emptyArray; + + /** + * GetBackupsRequest keyspace_shards. + * @member {Array.} keyspace_shards + * @memberof vtadmin.GetBackupsRequest + * @instance + */ + GetBackupsRequest.prototype.keyspace_shards = $util.emptyArray; + + /** + * GetBackupsRequest request_options. + * @member {vtctldata.IGetBackupsRequest|null|undefined} request_options + * @memberof vtadmin.GetBackupsRequest + * @instance + */ + GetBackupsRequest.prototype.request_options = null; + + /** + * Creates a new GetBackupsRequest instance using the specified properties. + * @function create + * @memberof vtadmin.GetBackupsRequest + * @static + * @param {vtadmin.IGetBackupsRequest=} [properties] Properties to set + * @returns {vtadmin.GetBackupsRequest} GetBackupsRequest instance + */ + GetBackupsRequest.create = function create(properties) { + return new GetBackupsRequest(properties); + }; + + /** + * Encodes the specified GetBackupsRequest message. Does not implicitly {@link vtadmin.GetBackupsRequest.verify|verify} messages. + * @function encode + * @memberof vtadmin.GetBackupsRequest + * @static + * @param {vtadmin.IGetBackupsRequest} message GetBackupsRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetBackupsRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.cluster_ids != null && message.cluster_ids.length) + for (let i = 0; i < message.cluster_ids.length; ++i) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_ids[i]); + if (message.keyspaces != null && message.keyspaces.length) + for (let i = 0; i < message.keyspaces.length; ++i) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.keyspaces[i]); + if (message.keyspace_shards != null && message.keyspace_shards.length) + for (let i = 0; i < message.keyspace_shards.length; ++i) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.keyspace_shards[i]); + if (message.request_options != null && Object.hasOwnProperty.call(message, "request_options")) + $root.vtctldata.GetBackupsRequest.encode(message.request_options, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified GetBackupsRequest message, length delimited. Does not implicitly {@link vtadmin.GetBackupsRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof vtadmin.GetBackupsRequest + * @static + * @param {vtadmin.IGetBackupsRequest} message GetBackupsRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetBackupsRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GetBackupsRequest message from the specified reader or buffer. + * @function decode + * @memberof vtadmin.GetBackupsRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {vtadmin.GetBackupsRequest} GetBackupsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetBackupsRequest.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.vtadmin.GetBackupsRequest(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.cluster_ids && message.cluster_ids.length)) + message.cluster_ids = []; + message.cluster_ids.push(reader.string()); + break; + } + case 2: { + if (!(message.keyspaces && message.keyspaces.length)) + message.keyspaces = []; + message.keyspaces.push(reader.string()); + break; + } + case 3: { + if (!(message.keyspace_shards && message.keyspace_shards.length)) + message.keyspace_shards = []; + message.keyspace_shards.push(reader.string()); + break; + } + case 4: { + message.request_options = $root.vtctldata.GetBackupsRequest.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GetBackupsRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof vtadmin.GetBackupsRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {vtadmin.GetBackupsRequest} GetBackupsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetBackupsRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GetBackupsRequest message. + * @function verify + * @memberof vtadmin.GetBackupsRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetBackupsRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.cluster_ids != null && message.hasOwnProperty("cluster_ids")) { + if (!Array.isArray(message.cluster_ids)) + return "cluster_ids: array expected"; + for (let i = 0; i < message.cluster_ids.length; ++i) + if (!$util.isString(message.cluster_ids[i])) + return "cluster_ids: string[] expected"; + } + if (message.keyspaces != null && message.hasOwnProperty("keyspaces")) { + if (!Array.isArray(message.keyspaces)) + return "keyspaces: array expected"; + for (let i = 0; i < message.keyspaces.length; ++i) + if (!$util.isString(message.keyspaces[i])) + return "keyspaces: string[] expected"; + } + if (message.keyspace_shards != null && message.hasOwnProperty("keyspace_shards")) { + if (!Array.isArray(message.keyspace_shards)) + return "keyspace_shards: array expected"; + for (let i = 0; i < message.keyspace_shards.length; ++i) + if (!$util.isString(message.keyspace_shards[i])) + return "keyspace_shards: string[] expected"; + } + if (message.request_options != null && message.hasOwnProperty("request_options")) { + let error = $root.vtctldata.GetBackupsRequest.verify(message.request_options); + if (error) + return "request_options." + error; + } + return null; + }; + + /** + * Creates a GetBackupsRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof vtadmin.GetBackupsRequest + * @static + * @param {Object.} object Plain object + * @returns {vtadmin.GetBackupsRequest} GetBackupsRequest + */ + GetBackupsRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetBackupsRequest) + return object; + let message = new $root.vtadmin.GetBackupsRequest(); + if (object.cluster_ids) { + if (!Array.isArray(object.cluster_ids)) + throw TypeError(".vtadmin.GetBackupsRequest.cluster_ids: array expected"); + message.cluster_ids = []; + for (let i = 0; i < object.cluster_ids.length; ++i) + message.cluster_ids[i] = String(object.cluster_ids[i]); + } + if (object.keyspaces) { + if (!Array.isArray(object.keyspaces)) + throw TypeError(".vtadmin.GetBackupsRequest.keyspaces: array expected"); + message.keyspaces = []; + for (let i = 0; i < object.keyspaces.length; ++i) + message.keyspaces[i] = String(object.keyspaces[i]); + } + if (object.keyspace_shards) { + if (!Array.isArray(object.keyspace_shards)) + throw TypeError(".vtadmin.GetBackupsRequest.keyspace_shards: array expected"); + message.keyspace_shards = []; + for (let i = 0; i < object.keyspace_shards.length; ++i) + message.keyspace_shards[i] = String(object.keyspace_shards[i]); + } + if (object.request_options != null) { + if (typeof object.request_options !== "object") + throw TypeError(".vtadmin.GetBackupsRequest.request_options: object expected"); + message.request_options = $root.vtctldata.GetBackupsRequest.fromObject(object.request_options); + } + return message; + }; + + /** + * Creates a plain object from a GetBackupsRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof vtadmin.GetBackupsRequest + * @static + * @param {vtadmin.GetBackupsRequest} message GetBackupsRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetBackupsRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + let object = {}; + if (options.arrays || options.defaults) { + object.cluster_ids = []; + object.keyspaces = []; + object.keyspace_shards = []; + } + if (options.defaults) + object.request_options = null; + if (message.cluster_ids && message.cluster_ids.length) { + object.cluster_ids = []; + for (let j = 0; j < message.cluster_ids.length; ++j) + object.cluster_ids[j] = message.cluster_ids[j]; + } + if (message.keyspaces && message.keyspaces.length) { + object.keyspaces = []; + for (let j = 0; j < message.keyspaces.length; ++j) + object.keyspaces[j] = message.keyspaces[j]; + } + if (message.keyspace_shards && message.keyspace_shards.length) { + object.keyspace_shards = []; + for (let j = 0; j < message.keyspace_shards.length; ++j) + object.keyspace_shards[j] = message.keyspace_shards[j]; + } + if (message.request_options != null && message.hasOwnProperty("request_options")) + object.request_options = $root.vtctldata.GetBackupsRequest.toObject(message.request_options, options); + return object; + }; + + /** + * Converts this GetBackupsRequest to JSON. + * @function toJSON + * @memberof vtadmin.GetBackupsRequest + * @instance + * @returns {Object.} JSON object + */ + GetBackupsRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for GetBackupsRequest + * @function getTypeUrl + * @memberof vtadmin.GetBackupsRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GetBackupsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/vtadmin.GetBackupsRequest"; + }; + + return GetBackupsRequest; + })(); + + vtadmin.GetBackupsResponse = (function() { + + /** + * Properties of a GetBackupsResponse. + * @memberof vtadmin + * @interface IGetBackupsResponse + * @property {Array.|null} [backups] GetBackupsResponse backups + */ + + /** + * Constructs a new GetBackupsResponse. + * @memberof vtadmin + * @classdesc Represents a GetBackupsResponse. + * @implements IGetBackupsResponse + * @constructor + * @param {vtadmin.IGetBackupsResponse=} [properties] Properties to set + */ + function GetBackupsResponse(properties) { + this.backups = []; + 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]]; + } + + /** + * GetBackupsResponse backups. + * @member {Array.} backups + * @memberof vtadmin.GetBackupsResponse + * @instance + */ + GetBackupsResponse.prototype.backups = $util.emptyArray; + + /** + * Creates a new GetBackupsResponse instance using the specified properties. + * @function create + * @memberof vtadmin.GetBackupsResponse + * @static + * @param {vtadmin.IGetBackupsResponse=} [properties] Properties to set + * @returns {vtadmin.GetBackupsResponse} GetBackupsResponse instance + */ + GetBackupsResponse.create = function create(properties) { + return new GetBackupsResponse(properties); + }; + + /** + * Encodes the specified GetBackupsResponse message. Does not implicitly {@link vtadmin.GetBackupsResponse.verify|verify} messages. + * @function encode + * @memberof vtadmin.GetBackupsResponse + * @static + * @param {vtadmin.IGetBackupsResponse} message GetBackupsResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetBackupsResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.backups != null && message.backups.length) + for (let i = 0; i < message.backups.length; ++i) + $root.vtadmin.ClusterBackup.encode(message.backups[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified GetBackupsResponse message, length delimited. Does not implicitly {@link vtadmin.GetBackupsResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof vtadmin.GetBackupsResponse + * @static + * @param {vtadmin.IGetBackupsResponse} message GetBackupsResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetBackupsResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GetBackupsResponse message from the specified reader or buffer. + * @function decode + * @memberof vtadmin.GetBackupsResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {vtadmin.GetBackupsResponse} GetBackupsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetBackupsResponse.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.vtadmin.GetBackupsResponse(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.backups && message.backups.length)) + message.backups = []; + message.backups.push($root.vtadmin.ClusterBackup.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GetBackupsResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof vtadmin.GetBackupsResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {vtadmin.GetBackupsResponse} GetBackupsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetBackupsResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GetBackupsResponse message. + * @function verify + * @memberof vtadmin.GetBackupsResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetBackupsResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.backups != null && message.hasOwnProperty("backups")) { + if (!Array.isArray(message.backups)) + return "backups: array expected"; + for (let i = 0; i < message.backups.length; ++i) { + let error = $root.vtadmin.ClusterBackup.verify(message.backups[i]); + if (error) + return "backups." + error; + } + } + return null; + }; + + /** + * Creates a GetBackupsResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof vtadmin.GetBackupsResponse + * @static + * @param {Object.} object Plain object + * @returns {vtadmin.GetBackupsResponse} GetBackupsResponse + */ + GetBackupsResponse.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetBackupsResponse) + return object; + let message = new $root.vtadmin.GetBackupsResponse(); + if (object.backups) { + if (!Array.isArray(object.backups)) + throw TypeError(".vtadmin.GetBackupsResponse.backups: array expected"); + message.backups = []; + for (let i = 0; i < object.backups.length; ++i) { + if (typeof object.backups[i] !== "object") + throw TypeError(".vtadmin.GetBackupsResponse.backups: object expected"); + message.backups[i] = $root.vtadmin.ClusterBackup.fromObject(object.backups[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a GetBackupsResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof vtadmin.GetBackupsResponse + * @static + * @param {vtadmin.GetBackupsResponse} message GetBackupsResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetBackupsResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + let object = {}; + if (options.arrays || options.defaults) + object.backups = []; + if (message.backups && message.backups.length) { + object.backups = []; + for (let j = 0; j < message.backups.length; ++j) + object.backups[j] = $root.vtadmin.ClusterBackup.toObject(message.backups[j], options); + } + return object; + }; + + /** + * Converts this GetBackupsResponse to JSON. + * @function toJSON + * @memberof vtadmin.GetBackupsResponse + * @instance + * @returns {Object.} JSON object + */ + GetBackupsResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for GetBackupsResponse + * @function getTypeUrl + * @memberof vtadmin.GetBackupsResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GetBackupsResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/vtadmin.GetBackupsResponse"; + }; + + return GetBackupsResponse; + })(); + + vtadmin.GetCellInfosRequest = (function() { + + /** + * Properties of a GetCellInfosRequest. + * @memberof vtadmin + * @interface IGetCellInfosRequest + * @property {Array.|null} [cluster_ids] GetCellInfosRequest cluster_ids + * @property {Array.|null} [cells] GetCellInfosRequest cells + * @property {boolean|null} [names_only] GetCellInfosRequest names_only + */ + + /** + * Constructs a new GetCellInfosRequest. + * @memberof vtadmin + * @classdesc Represents a GetCellInfosRequest. + * @implements IGetCellInfosRequest + * @constructor + * @param {vtadmin.IGetCellInfosRequest=} [properties] Properties to set + */ + function GetCellInfosRequest(properties) { + this.cluster_ids = []; + this.cells = []; + 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]]; + } + + /** + * GetCellInfosRequest cluster_ids. + * @member {Array.} cluster_ids + * @memberof vtadmin.GetCellInfosRequest + * @instance + */ + GetCellInfosRequest.prototype.cluster_ids = $util.emptyArray; + + /** + * GetCellInfosRequest cells. + * @member {Array.} cells + * @memberof vtadmin.GetCellInfosRequest + * @instance + */ + GetCellInfosRequest.prototype.cells = $util.emptyArray; + + /** + * GetCellInfosRequest names_only. + * @member {boolean} names_only + * @memberof vtadmin.GetCellInfosRequest + * @instance + */ + GetCellInfosRequest.prototype.names_only = false; + + /** + * Creates a new GetCellInfosRequest instance using the specified properties. + * @function create + * @memberof vtadmin.GetCellInfosRequest + * @static + * @param {vtadmin.IGetCellInfosRequest=} [properties] Properties to set + * @returns {vtadmin.GetCellInfosRequest} GetCellInfosRequest instance + */ + GetCellInfosRequest.create = function create(properties) { + return new GetCellInfosRequest(properties); + }; + + /** + * Encodes the specified GetCellInfosRequest message. Does not implicitly {@link vtadmin.GetCellInfosRequest.verify|verify} messages. + * @function encode + * @memberof vtadmin.GetCellInfosRequest + * @static + * @param {vtadmin.IGetCellInfosRequest} message GetCellInfosRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetCellInfosRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.cluster_ids != null && message.cluster_ids.length) + for (let i = 0; i < message.cluster_ids.length; ++i) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_ids[i]); + if (message.cells != null && message.cells.length) + for (let i = 0; i < message.cells.length; ++i) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.cells[i]); + if (message.names_only != null && Object.hasOwnProperty.call(message, "names_only")) writer.uint32(/* id 3, wireType 0 =*/24).bool(message.names_only); return writer; }; /** - * Encodes the specified GetCellInfosRequest message, length delimited. Does not implicitly {@link vtadmin.GetCellInfosRequest.verify|verify} messages. + * Encodes the specified GetCellInfosRequest message, length delimited. Does not implicitly {@link vtadmin.GetCellInfosRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof vtadmin.GetCellInfosRequest + * @static + * @param {vtadmin.IGetCellInfosRequest} message GetCellInfosRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetCellInfosRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GetCellInfosRequest message from the specified reader or buffer. + * @function decode + * @memberof vtadmin.GetCellInfosRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {vtadmin.GetCellInfosRequest} GetCellInfosRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetCellInfosRequest.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.vtadmin.GetCellInfosRequest(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.cluster_ids && message.cluster_ids.length)) + message.cluster_ids = []; + message.cluster_ids.push(reader.string()); + break; + } + case 2: { + if (!(message.cells && message.cells.length)) + message.cells = []; + message.cells.push(reader.string()); + break; + } + case 3: { + message.names_only = reader.bool(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GetCellInfosRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof vtadmin.GetCellInfosRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {vtadmin.GetCellInfosRequest} GetCellInfosRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetCellInfosRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GetCellInfosRequest message. + * @function verify + * @memberof vtadmin.GetCellInfosRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetCellInfosRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.cluster_ids != null && message.hasOwnProperty("cluster_ids")) { + if (!Array.isArray(message.cluster_ids)) + return "cluster_ids: array expected"; + for (let i = 0; i < message.cluster_ids.length; ++i) + if (!$util.isString(message.cluster_ids[i])) + return "cluster_ids: string[] expected"; + } + if (message.cells != null && message.hasOwnProperty("cells")) { + if (!Array.isArray(message.cells)) + return "cells: array expected"; + for (let i = 0; i < message.cells.length; ++i) + if (!$util.isString(message.cells[i])) + return "cells: string[] expected"; + } + if (message.names_only != null && message.hasOwnProperty("names_only")) + if (typeof message.names_only !== "boolean") + return "names_only: boolean expected"; + return null; + }; + + /** + * Creates a GetCellInfosRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof vtadmin.GetCellInfosRequest + * @static + * @param {Object.} object Plain object + * @returns {vtadmin.GetCellInfosRequest} GetCellInfosRequest + */ + GetCellInfosRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetCellInfosRequest) + return object; + let message = new $root.vtadmin.GetCellInfosRequest(); + if (object.cluster_ids) { + if (!Array.isArray(object.cluster_ids)) + throw TypeError(".vtadmin.GetCellInfosRequest.cluster_ids: array expected"); + message.cluster_ids = []; + for (let i = 0; i < object.cluster_ids.length; ++i) + message.cluster_ids[i] = String(object.cluster_ids[i]); + } + if (object.cells) { + if (!Array.isArray(object.cells)) + throw TypeError(".vtadmin.GetCellInfosRequest.cells: array expected"); + message.cells = []; + for (let i = 0; i < object.cells.length; ++i) + message.cells[i] = String(object.cells[i]); + } + if (object.names_only != null) + message.names_only = Boolean(object.names_only); + return message; + }; + + /** + * Creates a plain object from a GetCellInfosRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof vtadmin.GetCellInfosRequest + * @static + * @param {vtadmin.GetCellInfosRequest} message GetCellInfosRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetCellInfosRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + let object = {}; + if (options.arrays || options.defaults) { + object.cluster_ids = []; + object.cells = []; + } + if (options.defaults) + object.names_only = false; + if (message.cluster_ids && message.cluster_ids.length) { + object.cluster_ids = []; + for (let j = 0; j < message.cluster_ids.length; ++j) + object.cluster_ids[j] = message.cluster_ids[j]; + } + if (message.cells && message.cells.length) { + object.cells = []; + for (let j = 0; j < message.cells.length; ++j) + object.cells[j] = message.cells[j]; + } + if (message.names_only != null && message.hasOwnProperty("names_only")) + object.names_only = message.names_only; + return object; + }; + + /** + * Converts this GetCellInfosRequest to JSON. + * @function toJSON + * @memberof vtadmin.GetCellInfosRequest + * @instance + * @returns {Object.} JSON object + */ + GetCellInfosRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for GetCellInfosRequest + * @function getTypeUrl + * @memberof vtadmin.GetCellInfosRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GetCellInfosRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/vtadmin.GetCellInfosRequest"; + }; + + return GetCellInfosRequest; + })(); + + vtadmin.GetCellInfosResponse = (function() { + + /** + * Properties of a GetCellInfosResponse. + * @memberof vtadmin + * @interface IGetCellInfosResponse + * @property {Array.|null} [cell_infos] GetCellInfosResponse cell_infos + */ + + /** + * Constructs a new GetCellInfosResponse. + * @memberof vtadmin + * @classdesc Represents a GetCellInfosResponse. + * @implements IGetCellInfosResponse + * @constructor + * @param {vtadmin.IGetCellInfosResponse=} [properties] Properties to set + */ + function GetCellInfosResponse(properties) { + this.cell_infos = []; + 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]]; + } + + /** + * GetCellInfosResponse cell_infos. + * @member {Array.} cell_infos + * @memberof vtadmin.GetCellInfosResponse + * @instance + */ + GetCellInfosResponse.prototype.cell_infos = $util.emptyArray; + + /** + * Creates a new GetCellInfosResponse instance using the specified properties. + * @function create + * @memberof vtadmin.GetCellInfosResponse + * @static + * @param {vtadmin.IGetCellInfosResponse=} [properties] Properties to set + * @returns {vtadmin.GetCellInfosResponse} GetCellInfosResponse instance + */ + GetCellInfosResponse.create = function create(properties) { + return new GetCellInfosResponse(properties); + }; + + /** + * Encodes the specified GetCellInfosResponse message. Does not implicitly {@link vtadmin.GetCellInfosResponse.verify|verify} messages. + * @function encode + * @memberof vtadmin.GetCellInfosResponse + * @static + * @param {vtadmin.IGetCellInfosResponse} message GetCellInfosResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetCellInfosResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.cell_infos != null && message.cell_infos.length) + for (let i = 0; i < message.cell_infos.length; ++i) + $root.vtadmin.ClusterCellInfo.encode(message.cell_infos[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified GetCellInfosResponse message, length delimited. Does not implicitly {@link vtadmin.GetCellInfosResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof vtadmin.GetCellInfosResponse + * @static + * @param {vtadmin.IGetCellInfosResponse} message GetCellInfosResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetCellInfosResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GetCellInfosResponse message from the specified reader or buffer. + * @function decode + * @memberof vtadmin.GetCellInfosResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {vtadmin.GetCellInfosResponse} GetCellInfosResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetCellInfosResponse.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.vtadmin.GetCellInfosResponse(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.cell_infos && message.cell_infos.length)) + message.cell_infos = []; + message.cell_infos.push($root.vtadmin.ClusterCellInfo.decode(reader, reader.uint32())); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GetCellInfosResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof vtadmin.GetCellInfosResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {vtadmin.GetCellInfosResponse} GetCellInfosResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetCellInfosResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GetCellInfosResponse message. + * @function verify + * @memberof vtadmin.GetCellInfosResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetCellInfosResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.cell_infos != null && message.hasOwnProperty("cell_infos")) { + if (!Array.isArray(message.cell_infos)) + return "cell_infos: array expected"; + for (let i = 0; i < message.cell_infos.length; ++i) { + let error = $root.vtadmin.ClusterCellInfo.verify(message.cell_infos[i]); + if (error) + return "cell_infos." + error; + } + } + return null; + }; + + /** + * Creates a GetCellInfosResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof vtadmin.GetCellInfosResponse + * @static + * @param {Object.} object Plain object + * @returns {vtadmin.GetCellInfosResponse} GetCellInfosResponse + */ + GetCellInfosResponse.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetCellInfosResponse) + return object; + let message = new $root.vtadmin.GetCellInfosResponse(); + if (object.cell_infos) { + if (!Array.isArray(object.cell_infos)) + throw TypeError(".vtadmin.GetCellInfosResponse.cell_infos: array expected"); + message.cell_infos = []; + for (let i = 0; i < object.cell_infos.length; ++i) { + if (typeof object.cell_infos[i] !== "object") + throw TypeError(".vtadmin.GetCellInfosResponse.cell_infos: object expected"); + message.cell_infos[i] = $root.vtadmin.ClusterCellInfo.fromObject(object.cell_infos[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a GetCellInfosResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof vtadmin.GetCellInfosResponse + * @static + * @param {vtadmin.GetCellInfosResponse} message GetCellInfosResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetCellInfosResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + let object = {}; + if (options.arrays || options.defaults) + object.cell_infos = []; + if (message.cell_infos && message.cell_infos.length) { + object.cell_infos = []; + for (let j = 0; j < message.cell_infos.length; ++j) + object.cell_infos[j] = $root.vtadmin.ClusterCellInfo.toObject(message.cell_infos[j], options); + } + return object; + }; + + /** + * Converts this GetCellInfosResponse to JSON. + * @function toJSON + * @memberof vtadmin.GetCellInfosResponse + * @instance + * @returns {Object.} JSON object + */ + GetCellInfosResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for GetCellInfosResponse + * @function getTypeUrl + * @memberof vtadmin.GetCellInfosResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GetCellInfosResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/vtadmin.GetCellInfosResponse"; + }; + + return GetCellInfosResponse; + })(); + + vtadmin.GetCellsAliasesRequest = (function() { + + /** + * Properties of a GetCellsAliasesRequest. + * @memberof vtadmin + * @interface IGetCellsAliasesRequest + * @property {Array.|null} [cluster_ids] GetCellsAliasesRequest cluster_ids + */ + + /** + * Constructs a new GetCellsAliasesRequest. + * @memberof vtadmin + * @classdesc Represents a GetCellsAliasesRequest. + * @implements IGetCellsAliasesRequest + * @constructor + * @param {vtadmin.IGetCellsAliasesRequest=} [properties] Properties to set + */ + function GetCellsAliasesRequest(properties) { + this.cluster_ids = []; + 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]]; + } + + /** + * GetCellsAliasesRequest cluster_ids. + * @member {Array.} cluster_ids + * @memberof vtadmin.GetCellsAliasesRequest + * @instance + */ + GetCellsAliasesRequest.prototype.cluster_ids = $util.emptyArray; + + /** + * Creates a new GetCellsAliasesRequest instance using the specified properties. + * @function create + * @memberof vtadmin.GetCellsAliasesRequest + * @static + * @param {vtadmin.IGetCellsAliasesRequest=} [properties] Properties to set + * @returns {vtadmin.GetCellsAliasesRequest} GetCellsAliasesRequest instance + */ + GetCellsAliasesRequest.create = function create(properties) { + return new GetCellsAliasesRequest(properties); + }; + + /** + * Encodes the specified GetCellsAliasesRequest message. Does not implicitly {@link vtadmin.GetCellsAliasesRequest.verify|verify} messages. + * @function encode + * @memberof vtadmin.GetCellsAliasesRequest + * @static + * @param {vtadmin.IGetCellsAliasesRequest} message GetCellsAliasesRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetCellsAliasesRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.cluster_ids != null && message.cluster_ids.length) + for (let i = 0; i < message.cluster_ids.length; ++i) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_ids[i]); + return writer; + }; + + /** + * Encodes the specified GetCellsAliasesRequest message, length delimited. Does not implicitly {@link vtadmin.GetCellsAliasesRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.GetCellInfosRequest + * @memberof vtadmin.GetCellsAliasesRequest * @static - * @param {vtadmin.IGetCellInfosRequest} message GetCellInfosRequest message or plain object to encode + * @param {vtadmin.IGetCellsAliasesRequest} message GetCellsAliasesRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetCellInfosRequest.encodeDelimited = function encodeDelimited(message, writer) { + GetCellsAliasesRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetCellInfosRequest message from the specified reader or buffer. + * Decodes a GetCellsAliasesRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.GetCellInfosRequest + * @memberof vtadmin.GetCellsAliasesRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.GetCellInfosRequest} GetCellInfosRequest + * @returns {vtadmin.GetCellsAliasesRequest} GetCellsAliasesRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetCellInfosRequest.decode = function decode(reader, length) { + GetCellsAliasesRequest.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.vtadmin.GetCellInfosRequest(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.GetCellsAliasesRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { @@ -9584,16 +11463,6 @@ export const vtadmin = $root.vtadmin = (() => { message.cluster_ids.push(reader.string()); break; } - case 2: { - if (!(message.cells && message.cells.length)) - message.cells = []; - message.cells.push(reader.string()); - break; - } - case 3: { - message.names_only = reader.bool(); - break; - } default: reader.skipType(tag & 7); break; @@ -9603,30 +11472,30 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a GetCellInfosRequest message from the specified reader or buffer, length delimited. + * Decodes a GetCellsAliasesRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetCellInfosRequest + * @memberof vtadmin.GetCellsAliasesRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetCellInfosRequest} GetCellInfosRequest + * @returns {vtadmin.GetCellsAliasesRequest} GetCellsAliasesRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetCellInfosRequest.decodeDelimited = function decodeDelimited(reader) { + GetCellsAliasesRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetCellInfosRequest message. + * Verifies a GetCellsAliasesRequest message. * @function verify - * @memberof vtadmin.GetCellInfosRequest + * @memberof vtadmin.GetCellsAliasesRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetCellInfosRequest.verify = function verify(message) { + GetCellsAliasesRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; if (message.cluster_ids != null && message.hasOwnProperty("cluster_ids")) { @@ -9636,132 +11505,102 @@ export const vtadmin = $root.vtadmin = (() => { if (!$util.isString(message.cluster_ids[i])) return "cluster_ids: string[] expected"; } - if (message.cells != null && message.hasOwnProperty("cells")) { - if (!Array.isArray(message.cells)) - return "cells: array expected"; - for (let i = 0; i < message.cells.length; ++i) - if (!$util.isString(message.cells[i])) - return "cells: string[] expected"; - } - if (message.names_only != null && message.hasOwnProperty("names_only")) - if (typeof message.names_only !== "boolean") - return "names_only: boolean expected"; return null; }; /** - * Creates a GetCellInfosRequest message from a plain object. Also converts values to their respective internal types. + * Creates a GetCellsAliasesRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetCellInfosRequest + * @memberof vtadmin.GetCellsAliasesRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetCellInfosRequest} GetCellInfosRequest + * @returns {vtadmin.GetCellsAliasesRequest} GetCellsAliasesRequest */ - GetCellInfosRequest.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetCellInfosRequest) + GetCellsAliasesRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetCellsAliasesRequest) return object; - let message = new $root.vtadmin.GetCellInfosRequest(); + let message = new $root.vtadmin.GetCellsAliasesRequest(); if (object.cluster_ids) { if (!Array.isArray(object.cluster_ids)) - throw TypeError(".vtadmin.GetCellInfosRequest.cluster_ids: array expected"); + throw TypeError(".vtadmin.GetCellsAliasesRequest.cluster_ids: array expected"); message.cluster_ids = []; for (let i = 0; i < object.cluster_ids.length; ++i) message.cluster_ids[i] = String(object.cluster_ids[i]); } - if (object.cells) { - if (!Array.isArray(object.cells)) - throw TypeError(".vtadmin.GetCellInfosRequest.cells: array expected"); - message.cells = []; - for (let i = 0; i < object.cells.length; ++i) - message.cells[i] = String(object.cells[i]); - } - if (object.names_only != null) - message.names_only = Boolean(object.names_only); return message; }; /** - * Creates a plain object from a GetCellInfosRequest message. Also converts values to other types if specified. + * Creates a plain object from a GetCellsAliasesRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetCellInfosRequest + * @memberof vtadmin.GetCellsAliasesRequest * @static - * @param {vtadmin.GetCellInfosRequest} message GetCellInfosRequest + * @param {vtadmin.GetCellsAliasesRequest} message GetCellsAliasesRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetCellInfosRequest.toObject = function toObject(message, options) { + GetCellsAliasesRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; - if (options.arrays || options.defaults) { + if (options.arrays || options.defaults) object.cluster_ids = []; - object.cells = []; - } - if (options.defaults) - object.names_only = false; if (message.cluster_ids && message.cluster_ids.length) { object.cluster_ids = []; for (let j = 0; j < message.cluster_ids.length; ++j) object.cluster_ids[j] = message.cluster_ids[j]; } - if (message.cells && message.cells.length) { - object.cells = []; - for (let j = 0; j < message.cells.length; ++j) - object.cells[j] = message.cells[j]; - } - if (message.names_only != null && message.hasOwnProperty("names_only")) - object.names_only = message.names_only; return object; }; /** - * Converts this GetCellInfosRequest to JSON. + * Converts this GetCellsAliasesRequest to JSON. * @function toJSON - * @memberof vtadmin.GetCellInfosRequest + * @memberof vtadmin.GetCellsAliasesRequest * @instance * @returns {Object.} JSON object */ - GetCellInfosRequest.prototype.toJSON = function toJSON() { + GetCellsAliasesRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetCellInfosRequest + * Gets the default type url for GetCellsAliasesRequest * @function getTypeUrl - * @memberof vtadmin.GetCellInfosRequest + * @memberof vtadmin.GetCellsAliasesRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetCellInfosRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + GetCellsAliasesRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetCellInfosRequest"; + return typeUrlPrefix + "/vtadmin.GetCellsAliasesRequest"; }; - return GetCellInfosRequest; + return GetCellsAliasesRequest; })(); - vtadmin.GetCellInfosResponse = (function() { + vtadmin.GetCellsAliasesResponse = (function() { /** - * Properties of a GetCellInfosResponse. + * Properties of a GetCellsAliasesResponse. * @memberof vtadmin - * @interface IGetCellInfosResponse - * @property {Array.|null} [cell_infos] GetCellInfosResponse cell_infos + * @interface IGetCellsAliasesResponse + * @property {Array.|null} [aliases] GetCellsAliasesResponse aliases */ /** - * Constructs a new GetCellInfosResponse. + * Constructs a new GetCellsAliasesResponse. * @memberof vtadmin - * @classdesc Represents a GetCellInfosResponse. - * @implements IGetCellInfosResponse + * @classdesc Represents a GetCellsAliasesResponse. + * @implements IGetCellsAliasesResponse * @constructor - * @param {vtadmin.IGetCellInfosResponse=} [properties] Properties to set + * @param {vtadmin.IGetCellsAliasesResponse=} [properties] Properties to set */ - function GetCellInfosResponse(properties) { - this.cell_infos = []; + function GetCellsAliasesResponse(properties) { + this.aliases = []; if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -9769,78 +11608,78 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * GetCellInfosResponse cell_infos. - * @member {Array.} cell_infos - * @memberof vtadmin.GetCellInfosResponse + * GetCellsAliasesResponse aliases. + * @member {Array.} aliases + * @memberof vtadmin.GetCellsAliasesResponse * @instance */ - GetCellInfosResponse.prototype.cell_infos = $util.emptyArray; + GetCellsAliasesResponse.prototype.aliases = $util.emptyArray; /** - * Creates a new GetCellInfosResponse instance using the specified properties. + * Creates a new GetCellsAliasesResponse instance using the specified properties. * @function create - * @memberof vtadmin.GetCellInfosResponse + * @memberof vtadmin.GetCellsAliasesResponse * @static - * @param {vtadmin.IGetCellInfosResponse=} [properties] Properties to set - * @returns {vtadmin.GetCellInfosResponse} GetCellInfosResponse instance + * @param {vtadmin.IGetCellsAliasesResponse=} [properties] Properties to set + * @returns {vtadmin.GetCellsAliasesResponse} GetCellsAliasesResponse instance */ - GetCellInfosResponse.create = function create(properties) { - return new GetCellInfosResponse(properties); + GetCellsAliasesResponse.create = function create(properties) { + return new GetCellsAliasesResponse(properties); }; /** - * Encodes the specified GetCellInfosResponse message. Does not implicitly {@link vtadmin.GetCellInfosResponse.verify|verify} messages. + * Encodes the specified GetCellsAliasesResponse message. Does not implicitly {@link vtadmin.GetCellsAliasesResponse.verify|verify} messages. * @function encode - * @memberof vtadmin.GetCellInfosResponse + * @memberof vtadmin.GetCellsAliasesResponse * @static - * @param {vtadmin.IGetCellInfosResponse} message GetCellInfosResponse message or plain object to encode + * @param {vtadmin.IGetCellsAliasesResponse} message GetCellsAliasesResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetCellInfosResponse.encode = function encode(message, writer) { + GetCellsAliasesResponse.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.cell_infos != null && message.cell_infos.length) - for (let i = 0; i < message.cell_infos.length; ++i) - $root.vtadmin.ClusterCellInfo.encode(message.cell_infos[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.aliases != null && message.aliases.length) + for (let i = 0; i < message.aliases.length; ++i) + $root.vtadmin.ClusterCellsAliases.encode(message.aliases[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); return writer; }; /** - * Encodes the specified GetCellInfosResponse message, length delimited. Does not implicitly {@link vtadmin.GetCellInfosResponse.verify|verify} messages. + * Encodes the specified GetCellsAliasesResponse message, length delimited. Does not implicitly {@link vtadmin.GetCellsAliasesResponse.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.GetCellInfosResponse + * @memberof vtadmin.GetCellsAliasesResponse * @static - * @param {vtadmin.IGetCellInfosResponse} message GetCellInfosResponse message or plain object to encode + * @param {vtadmin.IGetCellsAliasesResponse} message GetCellsAliasesResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetCellInfosResponse.encodeDelimited = function encodeDelimited(message, writer) { + GetCellsAliasesResponse.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetCellInfosResponse message from the specified reader or buffer. + * Decodes a GetCellsAliasesResponse message from the specified reader or buffer. * @function decode - * @memberof vtadmin.GetCellInfosResponse + * @memberof vtadmin.GetCellsAliasesResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.GetCellInfosResponse} GetCellInfosResponse + * @returns {vtadmin.GetCellsAliasesResponse} GetCellsAliasesResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetCellInfosResponse.decode = function decode(reader, length) { + GetCellsAliasesResponse.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.vtadmin.GetCellInfosResponse(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.GetCellsAliasesResponse(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - if (!(message.cell_infos && message.cell_infos.length)) - message.cell_infos = []; - message.cell_infos.push($root.vtadmin.ClusterCellInfo.decode(reader, reader.uint32())); + if (!(message.aliases && message.aliases.length)) + message.aliases = []; + message.aliases.push($root.vtadmin.ClusterCellsAliases.decode(reader, reader.uint32())); break; } default: @@ -9852,140 +11691,138 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a GetCellInfosResponse message from the specified reader or buffer, length delimited. + * Decodes a GetCellsAliasesResponse message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetCellInfosResponse + * @memberof vtadmin.GetCellsAliasesResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetCellInfosResponse} GetCellInfosResponse + * @returns {vtadmin.GetCellsAliasesResponse} GetCellsAliasesResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetCellInfosResponse.decodeDelimited = function decodeDelimited(reader) { + GetCellsAliasesResponse.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetCellInfosResponse message. + * Verifies a GetCellsAliasesResponse message. * @function verify - * @memberof vtadmin.GetCellInfosResponse + * @memberof vtadmin.GetCellsAliasesResponse * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetCellInfosResponse.verify = function verify(message) { + GetCellsAliasesResponse.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.cell_infos != null && message.hasOwnProperty("cell_infos")) { - if (!Array.isArray(message.cell_infos)) - return "cell_infos: array expected"; - for (let i = 0; i < message.cell_infos.length; ++i) { - let error = $root.vtadmin.ClusterCellInfo.verify(message.cell_infos[i]); + if (message.aliases != null && message.hasOwnProperty("aliases")) { + if (!Array.isArray(message.aliases)) + return "aliases: array expected"; + for (let i = 0; i < message.aliases.length; ++i) { + let error = $root.vtadmin.ClusterCellsAliases.verify(message.aliases[i]); if (error) - return "cell_infos." + error; + return "aliases." + error; } } return null; }; /** - * Creates a GetCellInfosResponse message from a plain object. Also converts values to their respective internal types. + * Creates a GetCellsAliasesResponse message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetCellInfosResponse + * @memberof vtadmin.GetCellsAliasesResponse * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetCellInfosResponse} GetCellInfosResponse + * @returns {vtadmin.GetCellsAliasesResponse} GetCellsAliasesResponse */ - GetCellInfosResponse.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetCellInfosResponse) + GetCellsAliasesResponse.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetCellsAliasesResponse) return object; - let message = new $root.vtadmin.GetCellInfosResponse(); - if (object.cell_infos) { - if (!Array.isArray(object.cell_infos)) - throw TypeError(".vtadmin.GetCellInfosResponse.cell_infos: array expected"); - message.cell_infos = []; - for (let i = 0; i < object.cell_infos.length; ++i) { - if (typeof object.cell_infos[i] !== "object") - throw TypeError(".vtadmin.GetCellInfosResponse.cell_infos: object expected"); - message.cell_infos[i] = $root.vtadmin.ClusterCellInfo.fromObject(object.cell_infos[i]); + let message = new $root.vtadmin.GetCellsAliasesResponse(); + if (object.aliases) { + if (!Array.isArray(object.aliases)) + throw TypeError(".vtadmin.GetCellsAliasesResponse.aliases: array expected"); + message.aliases = []; + for (let i = 0; i < object.aliases.length; ++i) { + if (typeof object.aliases[i] !== "object") + throw TypeError(".vtadmin.GetCellsAliasesResponse.aliases: object expected"); + message.aliases[i] = $root.vtadmin.ClusterCellsAliases.fromObject(object.aliases[i]); } } return message; }; /** - * Creates a plain object from a GetCellInfosResponse message. Also converts values to other types if specified. + * Creates a plain object from a GetCellsAliasesResponse message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetCellInfosResponse + * @memberof vtadmin.GetCellsAliasesResponse * @static - * @param {vtadmin.GetCellInfosResponse} message GetCellInfosResponse + * @param {vtadmin.GetCellsAliasesResponse} message GetCellsAliasesResponse * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetCellInfosResponse.toObject = function toObject(message, options) { + GetCellsAliasesResponse.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; if (options.arrays || options.defaults) - object.cell_infos = []; - if (message.cell_infos && message.cell_infos.length) { - object.cell_infos = []; - for (let j = 0; j < message.cell_infos.length; ++j) - object.cell_infos[j] = $root.vtadmin.ClusterCellInfo.toObject(message.cell_infos[j], options); + object.aliases = []; + if (message.aliases && message.aliases.length) { + object.aliases = []; + for (let j = 0; j < message.aliases.length; ++j) + object.aliases[j] = $root.vtadmin.ClusterCellsAliases.toObject(message.aliases[j], options); } return object; }; /** - * Converts this GetCellInfosResponse to JSON. + * Converts this GetCellsAliasesResponse to JSON. * @function toJSON - * @memberof vtadmin.GetCellInfosResponse + * @memberof vtadmin.GetCellsAliasesResponse * @instance * @returns {Object.} JSON object */ - GetCellInfosResponse.prototype.toJSON = function toJSON() { + GetCellsAliasesResponse.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetCellInfosResponse + * Gets the default type url for GetCellsAliasesResponse * @function getTypeUrl - * @memberof vtadmin.GetCellInfosResponse + * @memberof vtadmin.GetCellsAliasesResponse * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetCellInfosResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + GetCellsAliasesResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetCellInfosResponse"; + return typeUrlPrefix + "/vtadmin.GetCellsAliasesResponse"; }; - return GetCellInfosResponse; + return GetCellsAliasesResponse; })(); - vtadmin.GetCellsAliasesRequest = (function() { + vtadmin.GetClustersRequest = (function() { /** - * Properties of a GetCellsAliasesRequest. + * Properties of a GetClustersRequest. * @memberof vtadmin - * @interface IGetCellsAliasesRequest - * @property {Array.|null} [cluster_ids] GetCellsAliasesRequest cluster_ids + * @interface IGetClustersRequest */ /** - * Constructs a new GetCellsAliasesRequest. + * Constructs a new GetClustersRequest. * @memberof vtadmin - * @classdesc Represents a GetCellsAliasesRequest. - * @implements IGetCellsAliasesRequest + * @classdesc Represents a GetClustersRequest. + * @implements IGetClustersRequest * @constructor - * @param {vtadmin.IGetCellsAliasesRequest=} [properties] Properties to set + * @param {vtadmin.IGetClustersRequest=} [properties] Properties to set */ - function GetCellsAliasesRequest(properties) { - this.cluster_ids = []; + function GetClustersRequest(properties) { if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -9993,80 +11830,63 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * GetCellsAliasesRequest cluster_ids. - * @member {Array.} cluster_ids - * @memberof vtadmin.GetCellsAliasesRequest - * @instance - */ - GetCellsAliasesRequest.prototype.cluster_ids = $util.emptyArray; - - /** - * Creates a new GetCellsAliasesRequest instance using the specified properties. + * Creates a new GetClustersRequest instance using the specified properties. * @function create - * @memberof vtadmin.GetCellsAliasesRequest + * @memberof vtadmin.GetClustersRequest * @static - * @param {vtadmin.IGetCellsAliasesRequest=} [properties] Properties to set - * @returns {vtadmin.GetCellsAliasesRequest} GetCellsAliasesRequest instance + * @param {vtadmin.IGetClustersRequest=} [properties] Properties to set + * @returns {vtadmin.GetClustersRequest} GetClustersRequest instance */ - GetCellsAliasesRequest.create = function create(properties) { - return new GetCellsAliasesRequest(properties); + GetClustersRequest.create = function create(properties) { + return new GetClustersRequest(properties); }; /** - * Encodes the specified GetCellsAliasesRequest message. Does not implicitly {@link vtadmin.GetCellsAliasesRequest.verify|verify} messages. + * Encodes the specified GetClustersRequest message. Does not implicitly {@link vtadmin.GetClustersRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.GetCellsAliasesRequest + * @memberof vtadmin.GetClustersRequest * @static - * @param {vtadmin.IGetCellsAliasesRequest} message GetCellsAliasesRequest message or plain object to encode + * @param {vtadmin.IGetClustersRequest} message GetClustersRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetCellsAliasesRequest.encode = function encode(message, writer) { + GetClustersRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.cluster_ids != null && message.cluster_ids.length) - for (let i = 0; i < message.cluster_ids.length; ++i) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_ids[i]); return writer; }; /** - * Encodes the specified GetCellsAliasesRequest message, length delimited. Does not implicitly {@link vtadmin.GetCellsAliasesRequest.verify|verify} messages. + * Encodes the specified GetClustersRequest message, length delimited. Does not implicitly {@link vtadmin.GetClustersRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.GetCellsAliasesRequest + * @memberof vtadmin.GetClustersRequest * @static - * @param {vtadmin.IGetCellsAliasesRequest} message GetCellsAliasesRequest message or plain object to encode + * @param {vtadmin.IGetClustersRequest} message GetClustersRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetCellsAliasesRequest.encodeDelimited = function encodeDelimited(message, writer) { + GetClustersRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetCellsAliasesRequest message from the specified reader or buffer. + * Decodes a GetClustersRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.GetCellsAliasesRequest + * @memberof vtadmin.GetClustersRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.GetCellsAliasesRequest} GetCellsAliasesRequest + * @returns {vtadmin.GetClustersRequest} GetClustersRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetCellsAliasesRequest.decode = function decode(reader, length) { + GetClustersRequest.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.vtadmin.GetCellsAliasesRequest(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.GetClustersRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { - case 1: { - if (!(message.cluster_ids && message.cluster_ids.length)) - message.cluster_ids = []; - message.cluster_ids.push(reader.string()); - break; - } default: reader.skipType(tag & 7); break; @@ -10076,135 +11896,110 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a GetCellsAliasesRequest message from the specified reader or buffer, length delimited. + * Decodes a GetClustersRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetCellsAliasesRequest + * @memberof vtadmin.GetClustersRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetCellsAliasesRequest} GetCellsAliasesRequest + * @returns {vtadmin.GetClustersRequest} GetClustersRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetCellsAliasesRequest.decodeDelimited = function decodeDelimited(reader) { + GetClustersRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetCellsAliasesRequest message. + * Verifies a GetClustersRequest message. * @function verify - * @memberof vtadmin.GetCellsAliasesRequest + * @memberof vtadmin.GetClustersRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetCellsAliasesRequest.verify = function verify(message) { + GetClustersRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.cluster_ids != null && message.hasOwnProperty("cluster_ids")) { - if (!Array.isArray(message.cluster_ids)) - return "cluster_ids: array expected"; - for (let i = 0; i < message.cluster_ids.length; ++i) - if (!$util.isString(message.cluster_ids[i])) - return "cluster_ids: string[] expected"; - } return null; }; /** - * Creates a GetCellsAliasesRequest message from a plain object. Also converts values to their respective internal types. + * Creates a GetClustersRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetCellsAliasesRequest + * @memberof vtadmin.GetClustersRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetCellsAliasesRequest} GetCellsAliasesRequest + * @returns {vtadmin.GetClustersRequest} GetClustersRequest */ - GetCellsAliasesRequest.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetCellsAliasesRequest) + GetClustersRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetClustersRequest) return object; - let message = new $root.vtadmin.GetCellsAliasesRequest(); - if (object.cluster_ids) { - if (!Array.isArray(object.cluster_ids)) - throw TypeError(".vtadmin.GetCellsAliasesRequest.cluster_ids: array expected"); - message.cluster_ids = []; - for (let i = 0; i < object.cluster_ids.length; ++i) - message.cluster_ids[i] = String(object.cluster_ids[i]); - } - return message; + return new $root.vtadmin.GetClustersRequest(); }; /** - * Creates a plain object from a GetCellsAliasesRequest message. Also converts values to other types if specified. + * Creates a plain object from a GetClustersRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetCellsAliasesRequest + * @memberof vtadmin.GetClustersRequest * @static - * @param {vtadmin.GetCellsAliasesRequest} message GetCellsAliasesRequest + * @param {vtadmin.GetClustersRequest} message GetClustersRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetCellsAliasesRequest.toObject = function toObject(message, options) { - if (!options) - options = {}; - let object = {}; - if (options.arrays || options.defaults) - object.cluster_ids = []; - if (message.cluster_ids && message.cluster_ids.length) { - object.cluster_ids = []; - for (let j = 0; j < message.cluster_ids.length; ++j) - object.cluster_ids[j] = message.cluster_ids[j]; - } - return object; + GetClustersRequest.toObject = function toObject() { + return {}; }; /** - * Converts this GetCellsAliasesRequest to JSON. + * Converts this GetClustersRequest to JSON. * @function toJSON - * @memberof vtadmin.GetCellsAliasesRequest + * @memberof vtadmin.GetClustersRequest * @instance * @returns {Object.} JSON object */ - GetCellsAliasesRequest.prototype.toJSON = function toJSON() { + GetClustersRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetCellsAliasesRequest + * Gets the default type url for GetClustersRequest * @function getTypeUrl - * @memberof vtadmin.GetCellsAliasesRequest + * @memberof vtadmin.GetClustersRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetCellsAliasesRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + GetClustersRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetCellsAliasesRequest"; + return typeUrlPrefix + "/vtadmin.GetClustersRequest"; }; - return GetCellsAliasesRequest; + return GetClustersRequest; })(); - vtadmin.GetCellsAliasesResponse = (function() { + vtadmin.GetClustersResponse = (function() { /** - * Properties of a GetCellsAliasesResponse. + * Properties of a GetClustersResponse. * @memberof vtadmin - * @interface IGetCellsAliasesResponse - * @property {Array.|null} [aliases] GetCellsAliasesResponse aliases + * @interface IGetClustersResponse + * @property {Array.|null} [clusters] GetClustersResponse clusters */ /** - * Constructs a new GetCellsAliasesResponse. + * Constructs a new GetClustersResponse. * @memberof vtadmin - * @classdesc Represents a GetCellsAliasesResponse. - * @implements IGetCellsAliasesResponse + * @classdesc Represents a GetClustersResponse. + * @implements IGetClustersResponse * @constructor - * @param {vtadmin.IGetCellsAliasesResponse=} [properties] Properties to set + * @param {vtadmin.IGetClustersResponse=} [properties] Properties to set */ - function GetCellsAliasesResponse(properties) { - this.aliases = []; + function GetClustersResponse(properties) { + this.clusters = []; if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -10212,78 +12007,78 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * GetCellsAliasesResponse aliases. - * @member {Array.} aliases - * @memberof vtadmin.GetCellsAliasesResponse + * GetClustersResponse clusters. + * @member {Array.} clusters + * @memberof vtadmin.GetClustersResponse * @instance */ - GetCellsAliasesResponse.prototype.aliases = $util.emptyArray; + GetClustersResponse.prototype.clusters = $util.emptyArray; /** - * Creates a new GetCellsAliasesResponse instance using the specified properties. + * Creates a new GetClustersResponse instance using the specified properties. * @function create - * @memberof vtadmin.GetCellsAliasesResponse + * @memberof vtadmin.GetClustersResponse * @static - * @param {vtadmin.IGetCellsAliasesResponse=} [properties] Properties to set - * @returns {vtadmin.GetCellsAliasesResponse} GetCellsAliasesResponse instance + * @param {vtadmin.IGetClustersResponse=} [properties] Properties to set + * @returns {vtadmin.GetClustersResponse} GetClustersResponse instance */ - GetCellsAliasesResponse.create = function create(properties) { - return new GetCellsAliasesResponse(properties); + GetClustersResponse.create = function create(properties) { + return new GetClustersResponse(properties); }; /** - * Encodes the specified GetCellsAliasesResponse message. Does not implicitly {@link vtadmin.GetCellsAliasesResponse.verify|verify} messages. + * Encodes the specified GetClustersResponse message. Does not implicitly {@link vtadmin.GetClustersResponse.verify|verify} messages. * @function encode - * @memberof vtadmin.GetCellsAliasesResponse + * @memberof vtadmin.GetClustersResponse * @static - * @param {vtadmin.IGetCellsAliasesResponse} message GetCellsAliasesResponse message or plain object to encode + * @param {vtadmin.IGetClustersResponse} message GetClustersResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetCellsAliasesResponse.encode = function encode(message, writer) { + GetClustersResponse.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.aliases != null && message.aliases.length) - for (let i = 0; i < message.aliases.length; ++i) - $root.vtadmin.ClusterCellsAliases.encode(message.aliases[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.clusters != null && message.clusters.length) + for (let i = 0; i < message.clusters.length; ++i) + $root.vtadmin.Cluster.encode(message.clusters[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); return writer; }; /** - * Encodes the specified GetCellsAliasesResponse message, length delimited. Does not implicitly {@link vtadmin.GetCellsAliasesResponse.verify|verify} messages. + * Encodes the specified GetClustersResponse message, length delimited. Does not implicitly {@link vtadmin.GetClustersResponse.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.GetCellsAliasesResponse + * @memberof vtadmin.GetClustersResponse * @static - * @param {vtadmin.IGetCellsAliasesResponse} message GetCellsAliasesResponse message or plain object to encode + * @param {vtadmin.IGetClustersResponse} message GetClustersResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetCellsAliasesResponse.encodeDelimited = function encodeDelimited(message, writer) { + GetClustersResponse.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetCellsAliasesResponse message from the specified reader or buffer. + * Decodes a GetClustersResponse message from the specified reader or buffer. * @function decode - * @memberof vtadmin.GetCellsAliasesResponse + * @memberof vtadmin.GetClustersResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.GetCellsAliasesResponse} GetCellsAliasesResponse + * @returns {vtadmin.GetClustersResponse} GetClustersResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetCellsAliasesResponse.decode = function decode(reader, length) { + GetClustersResponse.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.vtadmin.GetCellsAliasesResponse(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.GetClustersResponse(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - if (!(message.aliases && message.aliases.length)) - message.aliases = []; - message.aliases.push($root.vtadmin.ClusterCellsAliases.decode(reader, reader.uint32())); + if (!(message.clusters && message.clusters.length)) + message.clusters = []; + message.clusters.push($root.vtadmin.Cluster.decode(reader, reader.uint32())); break; } default: @@ -10295,138 +12090,140 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a GetCellsAliasesResponse message from the specified reader or buffer, length delimited. + * Decodes a GetClustersResponse message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetCellsAliasesResponse + * @memberof vtadmin.GetClustersResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetCellsAliasesResponse} GetCellsAliasesResponse + * @returns {vtadmin.GetClustersResponse} GetClustersResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetCellsAliasesResponse.decodeDelimited = function decodeDelimited(reader) { + GetClustersResponse.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetCellsAliasesResponse message. + * Verifies a GetClustersResponse message. * @function verify - * @memberof vtadmin.GetCellsAliasesResponse + * @memberof vtadmin.GetClustersResponse * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetCellsAliasesResponse.verify = function verify(message) { + GetClustersResponse.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.aliases != null && message.hasOwnProperty("aliases")) { - if (!Array.isArray(message.aliases)) - return "aliases: array expected"; - for (let i = 0; i < message.aliases.length; ++i) { - let error = $root.vtadmin.ClusterCellsAliases.verify(message.aliases[i]); + if (message.clusters != null && message.hasOwnProperty("clusters")) { + if (!Array.isArray(message.clusters)) + return "clusters: array expected"; + for (let i = 0; i < message.clusters.length; ++i) { + let error = $root.vtadmin.Cluster.verify(message.clusters[i]); if (error) - return "aliases." + error; + return "clusters." + error; } } return null; }; /** - * Creates a GetCellsAliasesResponse message from a plain object. Also converts values to their respective internal types. + * Creates a GetClustersResponse message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetCellsAliasesResponse + * @memberof vtadmin.GetClustersResponse * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetCellsAliasesResponse} GetCellsAliasesResponse + * @returns {vtadmin.GetClustersResponse} GetClustersResponse */ - GetCellsAliasesResponse.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetCellsAliasesResponse) + GetClustersResponse.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetClustersResponse) return object; - let message = new $root.vtadmin.GetCellsAliasesResponse(); - if (object.aliases) { - if (!Array.isArray(object.aliases)) - throw TypeError(".vtadmin.GetCellsAliasesResponse.aliases: array expected"); - message.aliases = []; - for (let i = 0; i < object.aliases.length; ++i) { - if (typeof object.aliases[i] !== "object") - throw TypeError(".vtadmin.GetCellsAliasesResponse.aliases: object expected"); - message.aliases[i] = $root.vtadmin.ClusterCellsAliases.fromObject(object.aliases[i]); + let message = new $root.vtadmin.GetClustersResponse(); + if (object.clusters) { + if (!Array.isArray(object.clusters)) + throw TypeError(".vtadmin.GetClustersResponse.clusters: array expected"); + message.clusters = []; + for (let i = 0; i < object.clusters.length; ++i) { + if (typeof object.clusters[i] !== "object") + throw TypeError(".vtadmin.GetClustersResponse.clusters: object expected"); + message.clusters[i] = $root.vtadmin.Cluster.fromObject(object.clusters[i]); } } return message; }; /** - * Creates a plain object from a GetCellsAliasesResponse message. Also converts values to other types if specified. + * Creates a plain object from a GetClustersResponse message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetCellsAliasesResponse + * @memberof vtadmin.GetClustersResponse * @static - * @param {vtadmin.GetCellsAliasesResponse} message GetCellsAliasesResponse + * @param {vtadmin.GetClustersResponse} message GetClustersResponse * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetCellsAliasesResponse.toObject = function toObject(message, options) { + GetClustersResponse.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; if (options.arrays || options.defaults) - object.aliases = []; - if (message.aliases && message.aliases.length) { - object.aliases = []; - for (let j = 0; j < message.aliases.length; ++j) - object.aliases[j] = $root.vtadmin.ClusterCellsAliases.toObject(message.aliases[j], options); + object.clusters = []; + if (message.clusters && message.clusters.length) { + object.clusters = []; + for (let j = 0; j < message.clusters.length; ++j) + object.clusters[j] = $root.vtadmin.Cluster.toObject(message.clusters[j], options); } return object; }; /** - * Converts this GetCellsAliasesResponse to JSON. + * Converts this GetClustersResponse to JSON. * @function toJSON - * @memberof vtadmin.GetCellsAliasesResponse + * @memberof vtadmin.GetClustersResponse * @instance * @returns {Object.} JSON object */ - GetCellsAliasesResponse.prototype.toJSON = function toJSON() { + GetClustersResponse.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetCellsAliasesResponse + * Gets the default type url for GetClustersResponse * @function getTypeUrl - * @memberof vtadmin.GetCellsAliasesResponse + * @memberof vtadmin.GetClustersResponse * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetCellsAliasesResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + GetClustersResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetCellsAliasesResponse"; + return typeUrlPrefix + "/vtadmin.GetClustersResponse"; }; - return GetCellsAliasesResponse; + return GetClustersResponse; })(); - vtadmin.GetClustersRequest = (function() { + vtadmin.GetFullStatusRequest = (function() { /** - * Properties of a GetClustersRequest. + * Properties of a GetFullStatusRequest. * @memberof vtadmin - * @interface IGetClustersRequest + * @interface IGetFullStatusRequest + * @property {string|null} [cluster_id] GetFullStatusRequest cluster_id + * @property {topodata.ITabletAlias|null} [alias] GetFullStatusRequest alias */ /** - * Constructs a new GetClustersRequest. + * Constructs a new GetFullStatusRequest. * @memberof vtadmin - * @classdesc Represents a GetClustersRequest. - * @implements IGetClustersRequest + * @classdesc Represents a GetFullStatusRequest. + * @implements IGetFullStatusRequest * @constructor - * @param {vtadmin.IGetClustersRequest=} [properties] Properties to set + * @param {vtadmin.IGetFullStatusRequest=} [properties] Properties to set */ - function GetClustersRequest(properties) { + function GetFullStatusRequest(properties) { if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -10434,63 +12231,91 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * Creates a new GetClustersRequest instance using the specified properties. + * GetFullStatusRequest cluster_id. + * @member {string} cluster_id + * @memberof vtadmin.GetFullStatusRequest + * @instance + */ + GetFullStatusRequest.prototype.cluster_id = ""; + + /** + * GetFullStatusRequest alias. + * @member {topodata.ITabletAlias|null|undefined} alias + * @memberof vtadmin.GetFullStatusRequest + * @instance + */ + GetFullStatusRequest.prototype.alias = null; + + /** + * Creates a new GetFullStatusRequest instance using the specified properties. * @function create - * @memberof vtadmin.GetClustersRequest + * @memberof vtadmin.GetFullStatusRequest * @static - * @param {vtadmin.IGetClustersRequest=} [properties] Properties to set - * @returns {vtadmin.GetClustersRequest} GetClustersRequest instance + * @param {vtadmin.IGetFullStatusRequest=} [properties] Properties to set + * @returns {vtadmin.GetFullStatusRequest} GetFullStatusRequest instance */ - GetClustersRequest.create = function create(properties) { - return new GetClustersRequest(properties); + GetFullStatusRequest.create = function create(properties) { + return new GetFullStatusRequest(properties); }; /** - * Encodes the specified GetClustersRequest message. Does not implicitly {@link vtadmin.GetClustersRequest.verify|verify} messages. + * Encodes the specified GetFullStatusRequest message. Does not implicitly {@link vtadmin.GetFullStatusRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.GetClustersRequest + * @memberof vtadmin.GetFullStatusRequest * @static - * @param {vtadmin.IGetClustersRequest} message GetClustersRequest message or plain object to encode + * @param {vtadmin.IGetFullStatusRequest} message GetFullStatusRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetClustersRequest.encode = function encode(message, writer) { + GetFullStatusRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); + if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); + if (message.alias != null && Object.hasOwnProperty.call(message, "alias")) + $root.topodata.TabletAlias.encode(message.alias, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); return writer; }; /** - * Encodes the specified GetClustersRequest message, length delimited. Does not implicitly {@link vtadmin.GetClustersRequest.verify|verify} messages. + * Encodes the specified GetFullStatusRequest message, length delimited. Does not implicitly {@link vtadmin.GetFullStatusRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.GetClustersRequest + * @memberof vtadmin.GetFullStatusRequest * @static - * @param {vtadmin.IGetClustersRequest} message GetClustersRequest message or plain object to encode + * @param {vtadmin.IGetFullStatusRequest} message GetFullStatusRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetClustersRequest.encodeDelimited = function encodeDelimited(message, writer) { + GetFullStatusRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetClustersRequest message from the specified reader or buffer. + * Decodes a GetFullStatusRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.GetClustersRequest + * @memberof vtadmin.GetFullStatusRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.GetClustersRequest} GetClustersRequest + * @returns {vtadmin.GetFullStatusRequest} GetFullStatusRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetClustersRequest.decode = function decode(reader, length) { + GetFullStatusRequest.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.vtadmin.GetClustersRequest(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.GetFullStatusRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { + case 1: { + message.cluster_id = reader.string(); + break; + } + case 2: { + message.alias = $root.topodata.TabletAlias.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -10500,110 +12325,137 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a GetClustersRequest message from the specified reader or buffer, length delimited. + * Decodes a GetFullStatusRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetClustersRequest + * @memberof vtadmin.GetFullStatusRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetClustersRequest} GetClustersRequest + * @returns {vtadmin.GetFullStatusRequest} GetFullStatusRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetClustersRequest.decodeDelimited = function decodeDelimited(reader) { + GetFullStatusRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetClustersRequest message. + * Verifies a GetFullStatusRequest message. * @function verify - * @memberof vtadmin.GetClustersRequest + * @memberof vtadmin.GetFullStatusRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetClustersRequest.verify = function verify(message) { + GetFullStatusRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + if (!$util.isString(message.cluster_id)) + return "cluster_id: string expected"; + if (message.alias != null && message.hasOwnProperty("alias")) { + let error = $root.topodata.TabletAlias.verify(message.alias); + if (error) + return "alias." + error; + } return null; }; /** - * Creates a GetClustersRequest message from a plain object. Also converts values to their respective internal types. + * Creates a GetFullStatusRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetClustersRequest + * @memberof vtadmin.GetFullStatusRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetClustersRequest} GetClustersRequest + * @returns {vtadmin.GetFullStatusRequest} GetFullStatusRequest */ - GetClustersRequest.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetClustersRequest) + GetFullStatusRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetFullStatusRequest) return object; - return new $root.vtadmin.GetClustersRequest(); + let message = new $root.vtadmin.GetFullStatusRequest(); + if (object.cluster_id != null) + message.cluster_id = String(object.cluster_id); + if (object.alias != null) { + if (typeof object.alias !== "object") + throw TypeError(".vtadmin.GetFullStatusRequest.alias: object expected"); + message.alias = $root.topodata.TabletAlias.fromObject(object.alias); + } + return message; }; /** - * Creates a plain object from a GetClustersRequest message. Also converts values to other types if specified. + * Creates a plain object from a GetFullStatusRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetClustersRequest + * @memberof vtadmin.GetFullStatusRequest * @static - * @param {vtadmin.GetClustersRequest} message GetClustersRequest + * @param {vtadmin.GetFullStatusRequest} message GetFullStatusRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetClustersRequest.toObject = function toObject() { - return {}; + GetFullStatusRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + let object = {}; + if (options.defaults) { + object.cluster_id = ""; + object.alias = null; + } + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + object.cluster_id = message.cluster_id; + if (message.alias != null && message.hasOwnProperty("alias")) + object.alias = $root.topodata.TabletAlias.toObject(message.alias, options); + return object; }; /** - * Converts this GetClustersRequest to JSON. + * Converts this GetFullStatusRequest to JSON. * @function toJSON - * @memberof vtadmin.GetClustersRequest + * @memberof vtadmin.GetFullStatusRequest * @instance * @returns {Object.} JSON object */ - GetClustersRequest.prototype.toJSON = function toJSON() { + GetFullStatusRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetClustersRequest + * Gets the default type url for GetFullStatusRequest * @function getTypeUrl - * @memberof vtadmin.GetClustersRequest + * @memberof vtadmin.GetFullStatusRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetClustersRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + GetFullStatusRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetClustersRequest"; + return typeUrlPrefix + "/vtadmin.GetFullStatusRequest"; }; - return GetClustersRequest; + return GetFullStatusRequest; })(); - vtadmin.GetClustersResponse = (function() { + vtadmin.GetGatesRequest = (function() { /** - * Properties of a GetClustersResponse. + * Properties of a GetGatesRequest. * @memberof vtadmin - * @interface IGetClustersResponse - * @property {Array.|null} [clusters] GetClustersResponse clusters + * @interface IGetGatesRequest + * @property {Array.|null} [cluster_ids] GetGatesRequest cluster_ids */ /** - * Constructs a new GetClustersResponse. + * Constructs a new GetGatesRequest. * @memberof vtadmin - * @classdesc Represents a GetClustersResponse. - * @implements IGetClustersResponse + * @classdesc Represents a GetGatesRequest. + * @implements IGetGatesRequest * @constructor - * @param {vtadmin.IGetClustersResponse=} [properties] Properties to set + * @param {vtadmin.IGetGatesRequest=} [properties] Properties to set */ - function GetClustersResponse(properties) { - this.clusters = []; + function GetGatesRequest(properties) { + this.cluster_ids = []; if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -10611,78 +12463,78 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * GetClustersResponse clusters. - * @member {Array.} clusters - * @memberof vtadmin.GetClustersResponse + * GetGatesRequest cluster_ids. + * @member {Array.} cluster_ids + * @memberof vtadmin.GetGatesRequest * @instance */ - GetClustersResponse.prototype.clusters = $util.emptyArray; + GetGatesRequest.prototype.cluster_ids = $util.emptyArray; /** - * Creates a new GetClustersResponse instance using the specified properties. + * Creates a new GetGatesRequest instance using the specified properties. * @function create - * @memberof vtadmin.GetClustersResponse + * @memberof vtadmin.GetGatesRequest * @static - * @param {vtadmin.IGetClustersResponse=} [properties] Properties to set - * @returns {vtadmin.GetClustersResponse} GetClustersResponse instance + * @param {vtadmin.IGetGatesRequest=} [properties] Properties to set + * @returns {vtadmin.GetGatesRequest} GetGatesRequest instance */ - GetClustersResponse.create = function create(properties) { - return new GetClustersResponse(properties); + GetGatesRequest.create = function create(properties) { + return new GetGatesRequest(properties); }; /** - * Encodes the specified GetClustersResponse message. Does not implicitly {@link vtadmin.GetClustersResponse.verify|verify} messages. + * Encodes the specified GetGatesRequest message. Does not implicitly {@link vtadmin.GetGatesRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.GetClustersResponse + * @memberof vtadmin.GetGatesRequest * @static - * @param {vtadmin.IGetClustersResponse} message GetClustersResponse message or plain object to encode + * @param {vtadmin.IGetGatesRequest} message GetGatesRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetClustersResponse.encode = function encode(message, writer) { + GetGatesRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.clusters != null && message.clusters.length) - for (let i = 0; i < message.clusters.length; ++i) - $root.vtadmin.Cluster.encode(message.clusters[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.cluster_ids != null && message.cluster_ids.length) + for (let i = 0; i < message.cluster_ids.length; ++i) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_ids[i]); return writer; }; /** - * Encodes the specified GetClustersResponse message, length delimited. Does not implicitly {@link vtadmin.GetClustersResponse.verify|verify} messages. + * Encodes the specified GetGatesRequest message, length delimited. Does not implicitly {@link vtadmin.GetGatesRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.GetClustersResponse + * @memberof vtadmin.GetGatesRequest * @static - * @param {vtadmin.IGetClustersResponse} message GetClustersResponse message or plain object to encode + * @param {vtadmin.IGetGatesRequest} message GetGatesRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetClustersResponse.encodeDelimited = function encodeDelimited(message, writer) { + GetGatesRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetClustersResponse message from the specified reader or buffer. + * Decodes a GetGatesRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.GetClustersResponse + * @memberof vtadmin.GetGatesRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.GetClustersResponse} GetClustersResponse + * @returns {vtadmin.GetGatesRequest} GetGatesRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetClustersResponse.decode = function decode(reader, length) { + GetGatesRequest.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.vtadmin.GetClustersResponse(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.GetGatesRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - if (!(message.clusters && message.clusters.length)) - message.clusters = []; - message.clusters.push($root.vtadmin.Cluster.decode(reader, reader.uint32())); + if (!(message.cluster_ids && message.cluster_ids.length)) + message.cluster_ids = []; + message.cluster_ids.push(reader.string()); break; } default: @@ -10694,140 +12546,135 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a GetClustersResponse message from the specified reader or buffer, length delimited. + * Decodes a GetGatesRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetClustersResponse + * @memberof vtadmin.GetGatesRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetClustersResponse} GetClustersResponse + * @returns {vtadmin.GetGatesRequest} GetGatesRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetClustersResponse.decodeDelimited = function decodeDelimited(reader) { + GetGatesRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetClustersResponse message. + * Verifies a GetGatesRequest message. * @function verify - * @memberof vtadmin.GetClustersResponse + * @memberof vtadmin.GetGatesRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetClustersResponse.verify = function verify(message) { + GetGatesRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.clusters != null && message.hasOwnProperty("clusters")) { - if (!Array.isArray(message.clusters)) - return "clusters: array expected"; - for (let i = 0; i < message.clusters.length; ++i) { - let error = $root.vtadmin.Cluster.verify(message.clusters[i]); - if (error) - return "clusters." + error; - } + if (message.cluster_ids != null && message.hasOwnProperty("cluster_ids")) { + if (!Array.isArray(message.cluster_ids)) + return "cluster_ids: array expected"; + for (let i = 0; i < message.cluster_ids.length; ++i) + if (!$util.isString(message.cluster_ids[i])) + return "cluster_ids: string[] expected"; } return null; }; /** - * Creates a GetClustersResponse message from a plain object. Also converts values to their respective internal types. + * Creates a GetGatesRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetClustersResponse + * @memberof vtadmin.GetGatesRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetClustersResponse} GetClustersResponse + * @returns {vtadmin.GetGatesRequest} GetGatesRequest */ - GetClustersResponse.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetClustersResponse) + GetGatesRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetGatesRequest) return object; - let message = new $root.vtadmin.GetClustersResponse(); - if (object.clusters) { - if (!Array.isArray(object.clusters)) - throw TypeError(".vtadmin.GetClustersResponse.clusters: array expected"); - message.clusters = []; - for (let i = 0; i < object.clusters.length; ++i) { - if (typeof object.clusters[i] !== "object") - throw TypeError(".vtadmin.GetClustersResponse.clusters: object expected"); - message.clusters[i] = $root.vtadmin.Cluster.fromObject(object.clusters[i]); - } + let message = new $root.vtadmin.GetGatesRequest(); + if (object.cluster_ids) { + if (!Array.isArray(object.cluster_ids)) + throw TypeError(".vtadmin.GetGatesRequest.cluster_ids: array expected"); + message.cluster_ids = []; + for (let i = 0; i < object.cluster_ids.length; ++i) + message.cluster_ids[i] = String(object.cluster_ids[i]); } return message; }; /** - * Creates a plain object from a GetClustersResponse message. Also converts values to other types if specified. + * Creates a plain object from a GetGatesRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetClustersResponse + * @memberof vtadmin.GetGatesRequest * @static - * @param {vtadmin.GetClustersResponse} message GetClustersResponse + * @param {vtadmin.GetGatesRequest} message GetGatesRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetClustersResponse.toObject = function toObject(message, options) { + GetGatesRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; if (options.arrays || options.defaults) - object.clusters = []; - if (message.clusters && message.clusters.length) { - object.clusters = []; - for (let j = 0; j < message.clusters.length; ++j) - object.clusters[j] = $root.vtadmin.Cluster.toObject(message.clusters[j], options); + object.cluster_ids = []; + if (message.cluster_ids && message.cluster_ids.length) { + object.cluster_ids = []; + for (let j = 0; j < message.cluster_ids.length; ++j) + object.cluster_ids[j] = message.cluster_ids[j]; } return object; }; /** - * Converts this GetClustersResponse to JSON. + * Converts this GetGatesRequest to JSON. * @function toJSON - * @memberof vtadmin.GetClustersResponse + * @memberof vtadmin.GetGatesRequest * @instance * @returns {Object.} JSON object */ - GetClustersResponse.prototype.toJSON = function toJSON() { + GetGatesRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetClustersResponse + * Gets the default type url for GetGatesRequest * @function getTypeUrl - * @memberof vtadmin.GetClustersResponse + * @memberof vtadmin.GetGatesRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetClustersResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + GetGatesRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetClustersResponse"; + return typeUrlPrefix + "/vtadmin.GetGatesRequest"; }; - return GetClustersResponse; + return GetGatesRequest; })(); - vtadmin.GetFullStatusRequest = (function() { + vtadmin.GetGatesResponse = (function() { /** - * Properties of a GetFullStatusRequest. + * Properties of a GetGatesResponse. * @memberof vtadmin - * @interface IGetFullStatusRequest - * @property {string|null} [cluster_id] GetFullStatusRequest cluster_id - * @property {topodata.ITabletAlias|null} [alias] GetFullStatusRequest alias + * @interface IGetGatesResponse + * @property {Array.|null} [gates] GetGatesResponse gates */ /** - * Constructs a new GetFullStatusRequest. + * Constructs a new GetGatesResponse. * @memberof vtadmin - * @classdesc Represents a GetFullStatusRequest. - * @implements IGetFullStatusRequest + * @classdesc Represents a GetGatesResponse. + * @implements IGetGatesResponse * @constructor - * @param {vtadmin.IGetFullStatusRequest=} [properties] Properties to set + * @param {vtadmin.IGetGatesResponse=} [properties] Properties to set */ - function GetFullStatusRequest(properties) { + function GetGatesResponse(properties) { + this.gates = []; if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -10835,89 +12682,78 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * GetFullStatusRequest cluster_id. - * @member {string} cluster_id - * @memberof vtadmin.GetFullStatusRequest - * @instance - */ - GetFullStatusRequest.prototype.cluster_id = ""; - - /** - * GetFullStatusRequest alias. - * @member {topodata.ITabletAlias|null|undefined} alias - * @memberof vtadmin.GetFullStatusRequest + * GetGatesResponse gates. + * @member {Array.} gates + * @memberof vtadmin.GetGatesResponse * @instance */ - GetFullStatusRequest.prototype.alias = null; + GetGatesResponse.prototype.gates = $util.emptyArray; /** - * Creates a new GetFullStatusRequest instance using the specified properties. + * Creates a new GetGatesResponse instance using the specified properties. * @function create - * @memberof vtadmin.GetFullStatusRequest + * @memberof vtadmin.GetGatesResponse * @static - * @param {vtadmin.IGetFullStatusRequest=} [properties] Properties to set - * @returns {vtadmin.GetFullStatusRequest} GetFullStatusRequest instance + * @param {vtadmin.IGetGatesResponse=} [properties] Properties to set + * @returns {vtadmin.GetGatesResponse} GetGatesResponse instance */ - GetFullStatusRequest.create = function create(properties) { - return new GetFullStatusRequest(properties); + GetGatesResponse.create = function create(properties) { + return new GetGatesResponse(properties); }; /** - * Encodes the specified GetFullStatusRequest message. Does not implicitly {@link vtadmin.GetFullStatusRequest.verify|verify} messages. + * Encodes the specified GetGatesResponse message. Does not implicitly {@link vtadmin.GetGatesResponse.verify|verify} messages. * @function encode - * @memberof vtadmin.GetFullStatusRequest + * @memberof vtadmin.GetGatesResponse * @static - * @param {vtadmin.IGetFullStatusRequest} message GetFullStatusRequest message or plain object to encode + * @param {vtadmin.IGetGatesResponse} message GetGatesResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetFullStatusRequest.encode = function encode(message, writer) { + GetGatesResponse.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); - if (message.alias != null && Object.hasOwnProperty.call(message, "alias")) - $root.topodata.TabletAlias.encode(message.alias, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.gates != null && message.gates.length) + for (let i = 0; i < message.gates.length; ++i) + $root.vtadmin.VTGate.encode(message.gates[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); return writer; }; /** - * Encodes the specified GetFullStatusRequest message, length delimited. Does not implicitly {@link vtadmin.GetFullStatusRequest.verify|verify} messages. + * Encodes the specified GetGatesResponse message, length delimited. Does not implicitly {@link vtadmin.GetGatesResponse.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.GetFullStatusRequest + * @memberof vtadmin.GetGatesResponse * @static - * @param {vtadmin.IGetFullStatusRequest} message GetFullStatusRequest message or plain object to encode + * @param {vtadmin.IGetGatesResponse} message GetGatesResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetFullStatusRequest.encodeDelimited = function encodeDelimited(message, writer) { + GetGatesResponse.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetFullStatusRequest message from the specified reader or buffer. + * Decodes a GetGatesResponse message from the specified reader or buffer. * @function decode - * @memberof vtadmin.GetFullStatusRequest + * @memberof vtadmin.GetGatesResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.GetFullStatusRequest} GetFullStatusRequest + * @returns {vtadmin.GetGatesResponse} GetGatesResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetFullStatusRequest.decode = function decode(reader, length) { + GetGatesResponse.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.vtadmin.GetFullStatusRequest(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.GetGatesResponse(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - message.cluster_id = reader.string(); - break; - } - case 2: { - message.alias = $root.topodata.TabletAlias.decode(reader, reader.uint32()); + if (!(message.gates && message.gates.length)) + message.gates = []; + message.gates.push($root.vtadmin.VTGate.decode(reader, reader.uint32())); break; } default: @@ -10929,137 +12765,140 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a GetFullStatusRequest message from the specified reader or buffer, length delimited. + * Decodes a GetGatesResponse message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetFullStatusRequest + * @memberof vtadmin.GetGatesResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetFullStatusRequest} GetFullStatusRequest + * @returns {vtadmin.GetGatesResponse} GetGatesResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetFullStatusRequest.decodeDelimited = function decodeDelimited(reader) { + GetGatesResponse.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetFullStatusRequest message. + * Verifies a GetGatesResponse message. * @function verify - * @memberof vtadmin.GetFullStatusRequest + * @memberof vtadmin.GetGatesResponse * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetFullStatusRequest.verify = function verify(message) { + GetGatesResponse.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) - if (!$util.isString(message.cluster_id)) - return "cluster_id: string expected"; - if (message.alias != null && message.hasOwnProperty("alias")) { - let error = $root.topodata.TabletAlias.verify(message.alias); - if (error) - return "alias." + error; + if (message.gates != null && message.hasOwnProperty("gates")) { + if (!Array.isArray(message.gates)) + return "gates: array expected"; + for (let i = 0; i < message.gates.length; ++i) { + let error = $root.vtadmin.VTGate.verify(message.gates[i]); + if (error) + return "gates." + error; + } } return null; }; /** - * Creates a GetFullStatusRequest message from a plain object. Also converts values to their respective internal types. + * Creates a GetGatesResponse message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetFullStatusRequest + * @memberof vtadmin.GetGatesResponse * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetFullStatusRequest} GetFullStatusRequest + * @returns {vtadmin.GetGatesResponse} GetGatesResponse */ - GetFullStatusRequest.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetFullStatusRequest) + GetGatesResponse.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetGatesResponse) return object; - let message = new $root.vtadmin.GetFullStatusRequest(); - if (object.cluster_id != null) - message.cluster_id = String(object.cluster_id); - if (object.alias != null) { - if (typeof object.alias !== "object") - throw TypeError(".vtadmin.GetFullStatusRequest.alias: object expected"); - message.alias = $root.topodata.TabletAlias.fromObject(object.alias); + let message = new $root.vtadmin.GetGatesResponse(); + if (object.gates) { + if (!Array.isArray(object.gates)) + throw TypeError(".vtadmin.GetGatesResponse.gates: array expected"); + message.gates = []; + for (let i = 0; i < object.gates.length; ++i) { + if (typeof object.gates[i] !== "object") + throw TypeError(".vtadmin.GetGatesResponse.gates: object expected"); + message.gates[i] = $root.vtadmin.VTGate.fromObject(object.gates[i]); + } } return message; }; /** - * Creates a plain object from a GetFullStatusRequest message. Also converts values to other types if specified. + * Creates a plain object from a GetGatesResponse message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetFullStatusRequest + * @memberof vtadmin.GetGatesResponse * @static - * @param {vtadmin.GetFullStatusRequest} message GetFullStatusRequest + * @param {vtadmin.GetGatesResponse} message GetGatesResponse * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetFullStatusRequest.toObject = function toObject(message, options) { + GetGatesResponse.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; - if (options.defaults) { - object.cluster_id = ""; - object.alias = null; - } - if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) - object.cluster_id = message.cluster_id; - if (message.alias != null && message.hasOwnProperty("alias")) - object.alias = $root.topodata.TabletAlias.toObject(message.alias, options); + if (options.arrays || options.defaults) + object.gates = []; + if (message.gates && message.gates.length) { + object.gates = []; + for (let j = 0; j < message.gates.length; ++j) + object.gates[j] = $root.vtadmin.VTGate.toObject(message.gates[j], options); + } return object; }; /** - * Converts this GetFullStatusRequest to JSON. + * Converts this GetGatesResponse to JSON. * @function toJSON - * @memberof vtadmin.GetFullStatusRequest + * @memberof vtadmin.GetGatesResponse * @instance * @returns {Object.} JSON object */ - GetFullStatusRequest.prototype.toJSON = function toJSON() { + GetGatesResponse.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetFullStatusRequest + * Gets the default type url for GetGatesResponse * @function getTypeUrl - * @memberof vtadmin.GetFullStatusRequest + * @memberof vtadmin.GetGatesResponse * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetFullStatusRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + GetGatesResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetFullStatusRequest"; + return typeUrlPrefix + "/vtadmin.GetGatesResponse"; }; - return GetFullStatusRequest; + return GetGatesResponse; })(); - vtadmin.GetGatesRequest = (function() { + vtadmin.GetKeyspaceRequest = (function() { /** - * Properties of a GetGatesRequest. + * Properties of a GetKeyspaceRequest. * @memberof vtadmin - * @interface IGetGatesRequest - * @property {Array.|null} [cluster_ids] GetGatesRequest cluster_ids + * @interface IGetKeyspaceRequest + * @property {string|null} [cluster_id] GetKeyspaceRequest cluster_id + * @property {string|null} [keyspace] GetKeyspaceRequest keyspace */ /** - * Constructs a new GetGatesRequest. + * Constructs a new GetKeyspaceRequest. * @memberof vtadmin - * @classdesc Represents a GetGatesRequest. - * @implements IGetGatesRequest + * @classdesc Represents a GetKeyspaceRequest. + * @implements IGetKeyspaceRequest * @constructor - * @param {vtadmin.IGetGatesRequest=} [properties] Properties to set + * @param {vtadmin.IGetKeyspaceRequest=} [properties] Properties to set */ - function GetGatesRequest(properties) { - this.cluster_ids = []; + function GetKeyspaceRequest(properties) { if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -11067,78 +12906,89 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * GetGatesRequest cluster_ids. - * @member {Array.} cluster_ids - * @memberof vtadmin.GetGatesRequest + * GetKeyspaceRequest cluster_id. + * @member {string} cluster_id + * @memberof vtadmin.GetKeyspaceRequest * @instance */ - GetGatesRequest.prototype.cluster_ids = $util.emptyArray; + GetKeyspaceRequest.prototype.cluster_id = ""; /** - * Creates a new GetGatesRequest instance using the specified properties. + * GetKeyspaceRequest keyspace. + * @member {string} keyspace + * @memberof vtadmin.GetKeyspaceRequest + * @instance + */ + GetKeyspaceRequest.prototype.keyspace = ""; + + /** + * Creates a new GetKeyspaceRequest instance using the specified properties. * @function create - * @memberof vtadmin.GetGatesRequest + * @memberof vtadmin.GetKeyspaceRequest * @static - * @param {vtadmin.IGetGatesRequest=} [properties] Properties to set - * @returns {vtadmin.GetGatesRequest} GetGatesRequest instance + * @param {vtadmin.IGetKeyspaceRequest=} [properties] Properties to set + * @returns {vtadmin.GetKeyspaceRequest} GetKeyspaceRequest instance */ - GetGatesRequest.create = function create(properties) { - return new GetGatesRequest(properties); + GetKeyspaceRequest.create = function create(properties) { + return new GetKeyspaceRequest(properties); }; /** - * Encodes the specified GetGatesRequest message. Does not implicitly {@link vtadmin.GetGatesRequest.verify|verify} messages. + * Encodes the specified GetKeyspaceRequest message. Does not implicitly {@link vtadmin.GetKeyspaceRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.GetGatesRequest + * @memberof vtadmin.GetKeyspaceRequest * @static - * @param {vtadmin.IGetGatesRequest} message GetGatesRequest message or plain object to encode + * @param {vtadmin.IGetKeyspaceRequest} message GetKeyspaceRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetGatesRequest.encode = function encode(message, writer) { + GetKeyspaceRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.cluster_ids != null && message.cluster_ids.length) - for (let i = 0; i < message.cluster_ids.length; ++i) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_ids[i]); + if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); + if (message.keyspace != null && Object.hasOwnProperty.call(message, "keyspace")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.keyspace); return writer; }; /** - * Encodes the specified GetGatesRequest message, length delimited. Does not implicitly {@link vtadmin.GetGatesRequest.verify|verify} messages. + * Encodes the specified GetKeyspaceRequest message, length delimited. Does not implicitly {@link vtadmin.GetKeyspaceRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.GetGatesRequest + * @memberof vtadmin.GetKeyspaceRequest * @static - * @param {vtadmin.IGetGatesRequest} message GetGatesRequest message or plain object to encode + * @param {vtadmin.IGetKeyspaceRequest} message GetKeyspaceRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetGatesRequest.encodeDelimited = function encodeDelimited(message, writer) { + GetKeyspaceRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetGatesRequest message from the specified reader or buffer. + * Decodes a GetKeyspaceRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.GetGatesRequest + * @memberof vtadmin.GetKeyspaceRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.GetGatesRequest} GetGatesRequest + * @returns {vtadmin.GetKeyspaceRequest} GetKeyspaceRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetGatesRequest.decode = function decode(reader, length) { + GetKeyspaceRequest.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.vtadmin.GetGatesRequest(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.GetKeyspaceRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - if (!(message.cluster_ids && message.cluster_ids.length)) - message.cluster_ids = []; - message.cluster_ids.push(reader.string()); + message.cluster_id = reader.string(); + break; + } + case 2: { + message.keyspace = reader.string(); break; } default: @@ -11150,135 +13000,132 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a GetGatesRequest message from the specified reader or buffer, length delimited. + * Decodes a GetKeyspaceRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetGatesRequest + * @memberof vtadmin.GetKeyspaceRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetGatesRequest} GetGatesRequest + * @returns {vtadmin.GetKeyspaceRequest} GetKeyspaceRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetGatesRequest.decodeDelimited = function decodeDelimited(reader) { + GetKeyspaceRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetGatesRequest message. + * Verifies a GetKeyspaceRequest message. * @function verify - * @memberof vtadmin.GetGatesRequest + * @memberof vtadmin.GetKeyspaceRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetGatesRequest.verify = function verify(message) { + GetKeyspaceRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.cluster_ids != null && message.hasOwnProperty("cluster_ids")) { - if (!Array.isArray(message.cluster_ids)) - return "cluster_ids: array expected"; - for (let i = 0; i < message.cluster_ids.length; ++i) - if (!$util.isString(message.cluster_ids[i])) - return "cluster_ids: string[] expected"; - } + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + if (!$util.isString(message.cluster_id)) + return "cluster_id: string expected"; + if (message.keyspace != null && message.hasOwnProperty("keyspace")) + if (!$util.isString(message.keyspace)) + return "keyspace: string expected"; return null; }; /** - * Creates a GetGatesRequest message from a plain object. Also converts values to their respective internal types. + * Creates a GetKeyspaceRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetGatesRequest + * @memberof vtadmin.GetKeyspaceRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetGatesRequest} GetGatesRequest + * @returns {vtadmin.GetKeyspaceRequest} GetKeyspaceRequest */ - GetGatesRequest.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetGatesRequest) + GetKeyspaceRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetKeyspaceRequest) return object; - let message = new $root.vtadmin.GetGatesRequest(); - if (object.cluster_ids) { - if (!Array.isArray(object.cluster_ids)) - throw TypeError(".vtadmin.GetGatesRequest.cluster_ids: array expected"); - message.cluster_ids = []; - for (let i = 0; i < object.cluster_ids.length; ++i) - message.cluster_ids[i] = String(object.cluster_ids[i]); - } + let message = new $root.vtadmin.GetKeyspaceRequest(); + if (object.cluster_id != null) + message.cluster_id = String(object.cluster_id); + if (object.keyspace != null) + message.keyspace = String(object.keyspace); return message; }; /** - * Creates a plain object from a GetGatesRequest message. Also converts values to other types if specified. + * Creates a plain object from a GetKeyspaceRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetGatesRequest + * @memberof vtadmin.GetKeyspaceRequest * @static - * @param {vtadmin.GetGatesRequest} message GetGatesRequest + * @param {vtadmin.GetKeyspaceRequest} message GetKeyspaceRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetGatesRequest.toObject = function toObject(message, options) { + GetKeyspaceRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; - if (options.arrays || options.defaults) - object.cluster_ids = []; - if (message.cluster_ids && message.cluster_ids.length) { - object.cluster_ids = []; - for (let j = 0; j < message.cluster_ids.length; ++j) - object.cluster_ids[j] = message.cluster_ids[j]; + if (options.defaults) { + object.cluster_id = ""; + object.keyspace = ""; } + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + object.cluster_id = message.cluster_id; + if (message.keyspace != null && message.hasOwnProperty("keyspace")) + object.keyspace = message.keyspace; return object; }; /** - * Converts this GetGatesRequest to JSON. + * Converts this GetKeyspaceRequest to JSON. * @function toJSON - * @memberof vtadmin.GetGatesRequest + * @memberof vtadmin.GetKeyspaceRequest * @instance * @returns {Object.} JSON object */ - GetGatesRequest.prototype.toJSON = function toJSON() { + GetKeyspaceRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetGatesRequest + * Gets the default type url for GetKeyspaceRequest * @function getTypeUrl - * @memberof vtadmin.GetGatesRequest + * @memberof vtadmin.GetKeyspaceRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetGatesRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + GetKeyspaceRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetGatesRequest"; + return typeUrlPrefix + "/vtadmin.GetKeyspaceRequest"; }; - return GetGatesRequest; + return GetKeyspaceRequest; })(); - vtadmin.GetGatesResponse = (function() { + vtadmin.GetKeyspacesRequest = (function() { /** - * Properties of a GetGatesResponse. + * Properties of a GetKeyspacesRequest. * @memberof vtadmin - * @interface IGetGatesResponse - * @property {Array.|null} [gates] GetGatesResponse gates + * @interface IGetKeyspacesRequest + * @property {Array.|null} [cluster_ids] GetKeyspacesRequest cluster_ids */ /** - * Constructs a new GetGatesResponse. + * Constructs a new GetKeyspacesRequest. * @memberof vtadmin - * @classdesc Represents a GetGatesResponse. - * @implements IGetGatesResponse + * @classdesc Represents a GetKeyspacesRequest. + * @implements IGetKeyspacesRequest * @constructor - * @param {vtadmin.IGetGatesResponse=} [properties] Properties to set + * @param {vtadmin.IGetKeyspacesRequest=} [properties] Properties to set */ - function GetGatesResponse(properties) { - this.gates = []; + function GetKeyspacesRequest(properties) { + this.cluster_ids = []; if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -11286,78 +13133,78 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * GetGatesResponse gates. - * @member {Array.} gates - * @memberof vtadmin.GetGatesResponse + * GetKeyspacesRequest cluster_ids. + * @member {Array.} cluster_ids + * @memberof vtadmin.GetKeyspacesRequest * @instance */ - GetGatesResponse.prototype.gates = $util.emptyArray; + GetKeyspacesRequest.prototype.cluster_ids = $util.emptyArray; /** - * Creates a new GetGatesResponse instance using the specified properties. + * Creates a new GetKeyspacesRequest instance using the specified properties. * @function create - * @memberof vtadmin.GetGatesResponse + * @memberof vtadmin.GetKeyspacesRequest * @static - * @param {vtadmin.IGetGatesResponse=} [properties] Properties to set - * @returns {vtadmin.GetGatesResponse} GetGatesResponse instance + * @param {vtadmin.IGetKeyspacesRequest=} [properties] Properties to set + * @returns {vtadmin.GetKeyspacesRequest} GetKeyspacesRequest instance */ - GetGatesResponse.create = function create(properties) { - return new GetGatesResponse(properties); + GetKeyspacesRequest.create = function create(properties) { + return new GetKeyspacesRequest(properties); }; /** - * Encodes the specified GetGatesResponse message. Does not implicitly {@link vtadmin.GetGatesResponse.verify|verify} messages. + * Encodes the specified GetKeyspacesRequest message. Does not implicitly {@link vtadmin.GetKeyspacesRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.GetGatesResponse + * @memberof vtadmin.GetKeyspacesRequest * @static - * @param {vtadmin.IGetGatesResponse} message GetGatesResponse message or plain object to encode + * @param {vtadmin.IGetKeyspacesRequest} message GetKeyspacesRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetGatesResponse.encode = function encode(message, writer) { + GetKeyspacesRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.gates != null && message.gates.length) - for (let i = 0; i < message.gates.length; ++i) - $root.vtadmin.VTGate.encode(message.gates[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.cluster_ids != null && message.cluster_ids.length) + for (let i = 0; i < message.cluster_ids.length; ++i) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_ids[i]); return writer; }; /** - * Encodes the specified GetGatesResponse message, length delimited. Does not implicitly {@link vtadmin.GetGatesResponse.verify|verify} messages. + * Encodes the specified GetKeyspacesRequest message, length delimited. Does not implicitly {@link vtadmin.GetKeyspacesRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.GetGatesResponse + * @memberof vtadmin.GetKeyspacesRequest * @static - * @param {vtadmin.IGetGatesResponse} message GetGatesResponse message or plain object to encode + * @param {vtadmin.IGetKeyspacesRequest} message GetKeyspacesRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetGatesResponse.encodeDelimited = function encodeDelimited(message, writer) { + GetKeyspacesRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetGatesResponse message from the specified reader or buffer. + * Decodes a GetKeyspacesRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.GetGatesResponse + * @memberof vtadmin.GetKeyspacesRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.GetGatesResponse} GetGatesResponse + * @returns {vtadmin.GetKeyspacesRequest} GetKeyspacesRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetGatesResponse.decode = function decode(reader, length) { + GetKeyspacesRequest.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.vtadmin.GetGatesResponse(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.GetKeyspacesRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - if (!(message.gates && message.gates.length)) - message.gates = []; - message.gates.push($root.vtadmin.VTGate.decode(reader, reader.uint32())); + if (!(message.cluster_ids && message.cluster_ids.length)) + message.cluster_ids = []; + message.cluster_ids.push(reader.string()); break; } default: @@ -11369,140 +13216,135 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a GetGatesResponse message from the specified reader or buffer, length delimited. + * Decodes a GetKeyspacesRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetGatesResponse + * @memberof vtadmin.GetKeyspacesRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetGatesResponse} GetGatesResponse + * @returns {vtadmin.GetKeyspacesRequest} GetKeyspacesRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetGatesResponse.decodeDelimited = function decodeDelimited(reader) { + GetKeyspacesRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetGatesResponse message. + * Verifies a GetKeyspacesRequest message. * @function verify - * @memberof vtadmin.GetGatesResponse + * @memberof vtadmin.GetKeyspacesRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetGatesResponse.verify = function verify(message) { + GetKeyspacesRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.gates != null && message.hasOwnProperty("gates")) { - if (!Array.isArray(message.gates)) - return "gates: array expected"; - for (let i = 0; i < message.gates.length; ++i) { - let error = $root.vtadmin.VTGate.verify(message.gates[i]); - if (error) - return "gates." + error; - } + if (message.cluster_ids != null && message.hasOwnProperty("cluster_ids")) { + if (!Array.isArray(message.cluster_ids)) + return "cluster_ids: array expected"; + for (let i = 0; i < message.cluster_ids.length; ++i) + if (!$util.isString(message.cluster_ids[i])) + return "cluster_ids: string[] expected"; } return null; }; /** - * Creates a GetGatesResponse message from a plain object. Also converts values to their respective internal types. + * Creates a GetKeyspacesRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetGatesResponse + * @memberof vtadmin.GetKeyspacesRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetGatesResponse} GetGatesResponse + * @returns {vtadmin.GetKeyspacesRequest} GetKeyspacesRequest */ - GetGatesResponse.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetGatesResponse) + GetKeyspacesRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetKeyspacesRequest) return object; - let message = new $root.vtadmin.GetGatesResponse(); - if (object.gates) { - if (!Array.isArray(object.gates)) - throw TypeError(".vtadmin.GetGatesResponse.gates: array expected"); - message.gates = []; - for (let i = 0; i < object.gates.length; ++i) { - if (typeof object.gates[i] !== "object") - throw TypeError(".vtadmin.GetGatesResponse.gates: object expected"); - message.gates[i] = $root.vtadmin.VTGate.fromObject(object.gates[i]); - } + let message = new $root.vtadmin.GetKeyspacesRequest(); + if (object.cluster_ids) { + if (!Array.isArray(object.cluster_ids)) + throw TypeError(".vtadmin.GetKeyspacesRequest.cluster_ids: array expected"); + message.cluster_ids = []; + for (let i = 0; i < object.cluster_ids.length; ++i) + message.cluster_ids[i] = String(object.cluster_ids[i]); } return message; }; /** - * Creates a plain object from a GetGatesResponse message. Also converts values to other types if specified. + * Creates a plain object from a GetKeyspacesRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetGatesResponse + * @memberof vtadmin.GetKeyspacesRequest * @static - * @param {vtadmin.GetGatesResponse} message GetGatesResponse + * @param {vtadmin.GetKeyspacesRequest} message GetKeyspacesRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetGatesResponse.toObject = function toObject(message, options) { + GetKeyspacesRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; if (options.arrays || options.defaults) - object.gates = []; - if (message.gates && message.gates.length) { - object.gates = []; - for (let j = 0; j < message.gates.length; ++j) - object.gates[j] = $root.vtadmin.VTGate.toObject(message.gates[j], options); + object.cluster_ids = []; + if (message.cluster_ids && message.cluster_ids.length) { + object.cluster_ids = []; + for (let j = 0; j < message.cluster_ids.length; ++j) + object.cluster_ids[j] = message.cluster_ids[j]; } return object; }; /** - * Converts this GetGatesResponse to JSON. + * Converts this GetKeyspacesRequest to JSON. * @function toJSON - * @memberof vtadmin.GetGatesResponse + * @memberof vtadmin.GetKeyspacesRequest * @instance * @returns {Object.} JSON object */ - GetGatesResponse.prototype.toJSON = function toJSON() { + GetKeyspacesRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetGatesResponse + * Gets the default type url for GetKeyspacesRequest * @function getTypeUrl - * @memberof vtadmin.GetGatesResponse + * @memberof vtadmin.GetKeyspacesRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetGatesResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + GetKeyspacesRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetGatesResponse"; + return typeUrlPrefix + "/vtadmin.GetKeyspacesRequest"; }; - return GetGatesResponse; + return GetKeyspacesRequest; })(); - vtadmin.GetKeyspaceRequest = (function() { + vtadmin.GetKeyspacesResponse = (function() { /** - * Properties of a GetKeyspaceRequest. + * Properties of a GetKeyspacesResponse. * @memberof vtadmin - * @interface IGetKeyspaceRequest - * @property {string|null} [cluster_id] GetKeyspaceRequest cluster_id - * @property {string|null} [keyspace] GetKeyspaceRequest keyspace + * @interface IGetKeyspacesResponse + * @property {Array.|null} [keyspaces] GetKeyspacesResponse keyspaces */ /** - * Constructs a new GetKeyspaceRequest. + * Constructs a new GetKeyspacesResponse. * @memberof vtadmin - * @classdesc Represents a GetKeyspaceRequest. - * @implements IGetKeyspaceRequest + * @classdesc Represents a GetKeyspacesResponse. + * @implements IGetKeyspacesResponse * @constructor - * @param {vtadmin.IGetKeyspaceRequest=} [properties] Properties to set + * @param {vtadmin.IGetKeyspacesResponse=} [properties] Properties to set */ - function GetKeyspaceRequest(properties) { + function GetKeyspacesResponse(properties) { + this.keyspaces = []; if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -11510,89 +13352,78 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * GetKeyspaceRequest cluster_id. - * @member {string} cluster_id - * @memberof vtadmin.GetKeyspaceRequest - * @instance - */ - GetKeyspaceRequest.prototype.cluster_id = ""; - - /** - * GetKeyspaceRequest keyspace. - * @member {string} keyspace - * @memberof vtadmin.GetKeyspaceRequest + * GetKeyspacesResponse keyspaces. + * @member {Array.} keyspaces + * @memberof vtadmin.GetKeyspacesResponse * @instance */ - GetKeyspaceRequest.prototype.keyspace = ""; + GetKeyspacesResponse.prototype.keyspaces = $util.emptyArray; /** - * Creates a new GetKeyspaceRequest instance using the specified properties. + * Creates a new GetKeyspacesResponse instance using the specified properties. * @function create - * @memberof vtadmin.GetKeyspaceRequest + * @memberof vtadmin.GetKeyspacesResponse * @static - * @param {vtadmin.IGetKeyspaceRequest=} [properties] Properties to set - * @returns {vtadmin.GetKeyspaceRequest} GetKeyspaceRequest instance + * @param {vtadmin.IGetKeyspacesResponse=} [properties] Properties to set + * @returns {vtadmin.GetKeyspacesResponse} GetKeyspacesResponse instance */ - GetKeyspaceRequest.create = function create(properties) { - return new GetKeyspaceRequest(properties); + GetKeyspacesResponse.create = function create(properties) { + return new GetKeyspacesResponse(properties); }; /** - * Encodes the specified GetKeyspaceRequest message. Does not implicitly {@link vtadmin.GetKeyspaceRequest.verify|verify} messages. + * Encodes the specified GetKeyspacesResponse message. Does not implicitly {@link vtadmin.GetKeyspacesResponse.verify|verify} messages. * @function encode - * @memberof vtadmin.GetKeyspaceRequest + * @memberof vtadmin.GetKeyspacesResponse * @static - * @param {vtadmin.IGetKeyspaceRequest} message GetKeyspaceRequest message or plain object to encode + * @param {vtadmin.IGetKeyspacesResponse} message GetKeyspacesResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetKeyspaceRequest.encode = function encode(message, writer) { + GetKeyspacesResponse.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); - if (message.keyspace != null && Object.hasOwnProperty.call(message, "keyspace")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.keyspace); + if (message.keyspaces != null && message.keyspaces.length) + for (let i = 0; i < message.keyspaces.length; ++i) + $root.vtadmin.Keyspace.encode(message.keyspaces[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); return writer; }; /** - * Encodes the specified GetKeyspaceRequest message, length delimited. Does not implicitly {@link vtadmin.GetKeyspaceRequest.verify|verify} messages. + * Encodes the specified GetKeyspacesResponse message, length delimited. Does not implicitly {@link vtadmin.GetKeyspacesResponse.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.GetKeyspaceRequest + * @memberof vtadmin.GetKeyspacesResponse * @static - * @param {vtadmin.IGetKeyspaceRequest} message GetKeyspaceRequest message or plain object to encode + * @param {vtadmin.IGetKeyspacesResponse} message GetKeyspacesResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetKeyspaceRequest.encodeDelimited = function encodeDelimited(message, writer) { + GetKeyspacesResponse.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetKeyspaceRequest message from the specified reader or buffer. + * Decodes a GetKeyspacesResponse message from the specified reader or buffer. * @function decode - * @memberof vtadmin.GetKeyspaceRequest + * @memberof vtadmin.GetKeyspacesResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.GetKeyspaceRequest} GetKeyspaceRequest + * @returns {vtadmin.GetKeyspacesResponse} GetKeyspacesResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetKeyspaceRequest.decode = function decode(reader, length) { + GetKeyspacesResponse.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.vtadmin.GetKeyspaceRequest(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.GetKeyspacesResponse(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - message.cluster_id = reader.string(); - break; - } - case 2: { - message.keyspace = reader.string(); + if (!(message.keyspaces && message.keyspaces.length)) + message.keyspaces = []; + message.keyspaces.push($root.vtadmin.Keyspace.decode(reader, reader.uint32())); break; } default: @@ -11604,132 +13435,142 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a GetKeyspaceRequest message from the specified reader or buffer, length delimited. + * Decodes a GetKeyspacesResponse message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetKeyspaceRequest + * @memberof vtadmin.GetKeyspacesResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetKeyspaceRequest} GetKeyspaceRequest + * @returns {vtadmin.GetKeyspacesResponse} GetKeyspacesResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetKeyspaceRequest.decodeDelimited = function decodeDelimited(reader) { + GetKeyspacesResponse.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetKeyspaceRequest message. + * Verifies a GetKeyspacesResponse message. * @function verify - * @memberof vtadmin.GetKeyspaceRequest + * @memberof vtadmin.GetKeyspacesResponse * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetKeyspaceRequest.verify = function verify(message) { + GetKeyspacesResponse.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) - if (!$util.isString(message.cluster_id)) - return "cluster_id: string expected"; - if (message.keyspace != null && message.hasOwnProperty("keyspace")) - if (!$util.isString(message.keyspace)) - return "keyspace: string expected"; + if (message.keyspaces != null && message.hasOwnProperty("keyspaces")) { + if (!Array.isArray(message.keyspaces)) + return "keyspaces: array expected"; + for (let i = 0; i < message.keyspaces.length; ++i) { + let error = $root.vtadmin.Keyspace.verify(message.keyspaces[i]); + if (error) + return "keyspaces." + error; + } + } return null; }; /** - * Creates a GetKeyspaceRequest message from a plain object. Also converts values to their respective internal types. + * Creates a GetKeyspacesResponse message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetKeyspaceRequest + * @memberof vtadmin.GetKeyspacesResponse * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetKeyspaceRequest} GetKeyspaceRequest + * @returns {vtadmin.GetKeyspacesResponse} GetKeyspacesResponse */ - GetKeyspaceRequest.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetKeyspaceRequest) + GetKeyspacesResponse.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetKeyspacesResponse) return object; - let message = new $root.vtadmin.GetKeyspaceRequest(); - if (object.cluster_id != null) - message.cluster_id = String(object.cluster_id); - if (object.keyspace != null) - message.keyspace = String(object.keyspace); + let message = new $root.vtadmin.GetKeyspacesResponse(); + if (object.keyspaces) { + if (!Array.isArray(object.keyspaces)) + throw TypeError(".vtadmin.GetKeyspacesResponse.keyspaces: array expected"); + message.keyspaces = []; + for (let i = 0; i < object.keyspaces.length; ++i) { + if (typeof object.keyspaces[i] !== "object") + throw TypeError(".vtadmin.GetKeyspacesResponse.keyspaces: object expected"); + message.keyspaces[i] = $root.vtadmin.Keyspace.fromObject(object.keyspaces[i]); + } + } return message; }; /** - * Creates a plain object from a GetKeyspaceRequest message. Also converts values to other types if specified. + * Creates a plain object from a GetKeyspacesResponse message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetKeyspaceRequest + * @memberof vtadmin.GetKeyspacesResponse * @static - * @param {vtadmin.GetKeyspaceRequest} message GetKeyspaceRequest + * @param {vtadmin.GetKeyspacesResponse} message GetKeyspacesResponse * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetKeyspaceRequest.toObject = function toObject(message, options) { + GetKeyspacesResponse.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; - if (options.defaults) { - object.cluster_id = ""; - object.keyspace = ""; + if (options.arrays || options.defaults) + object.keyspaces = []; + if (message.keyspaces && message.keyspaces.length) { + object.keyspaces = []; + for (let j = 0; j < message.keyspaces.length; ++j) + object.keyspaces[j] = $root.vtadmin.Keyspace.toObject(message.keyspaces[j], options); } - if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) - object.cluster_id = message.cluster_id; - if (message.keyspace != null && message.hasOwnProperty("keyspace")) - object.keyspace = message.keyspace; return object; }; /** - * Converts this GetKeyspaceRequest to JSON. + * Converts this GetKeyspacesResponse to JSON. * @function toJSON - * @memberof vtadmin.GetKeyspaceRequest + * @memberof vtadmin.GetKeyspacesResponse * @instance * @returns {Object.} JSON object */ - GetKeyspaceRequest.prototype.toJSON = function toJSON() { + GetKeyspacesResponse.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetKeyspaceRequest + * Gets the default type url for GetKeyspacesResponse * @function getTypeUrl - * @memberof vtadmin.GetKeyspaceRequest + * @memberof vtadmin.GetKeyspacesResponse * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetKeyspaceRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + GetKeyspacesResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetKeyspaceRequest"; + return typeUrlPrefix + "/vtadmin.GetKeyspacesResponse"; }; - return GetKeyspaceRequest; + return GetKeyspacesResponse; })(); - vtadmin.GetKeyspacesRequest = (function() { + vtadmin.GetSchemaRequest = (function() { /** - * Properties of a GetKeyspacesRequest. + * Properties of a GetSchemaRequest. * @memberof vtadmin - * @interface IGetKeyspacesRequest - * @property {Array.|null} [cluster_ids] GetKeyspacesRequest cluster_ids + * @interface IGetSchemaRequest + * @property {string|null} [cluster_id] GetSchemaRequest cluster_id + * @property {string|null} [keyspace] GetSchemaRequest keyspace + * @property {string|null} [table] GetSchemaRequest table + * @property {vtadmin.IGetSchemaTableSizeOptions|null} [table_size_options] GetSchemaRequest table_size_options */ /** - * Constructs a new GetKeyspacesRequest. + * Constructs a new GetSchemaRequest. * @memberof vtadmin - * @classdesc Represents a GetKeyspacesRequest. - * @implements IGetKeyspacesRequest + * @classdesc Represents a GetSchemaRequest. + * @implements IGetSchemaRequest * @constructor - * @param {vtadmin.IGetKeyspacesRequest=} [properties] Properties to set + * @param {vtadmin.IGetSchemaRequest=} [properties] Properties to set */ - function GetKeyspacesRequest(properties) { - this.cluster_ids = []; + function GetSchemaRequest(properties) { if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -11737,78 +13578,117 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * GetKeyspacesRequest cluster_ids. - * @member {Array.} cluster_ids - * @memberof vtadmin.GetKeyspacesRequest + * GetSchemaRequest cluster_id. + * @member {string} cluster_id + * @memberof vtadmin.GetSchemaRequest * @instance */ - GetKeyspacesRequest.prototype.cluster_ids = $util.emptyArray; + GetSchemaRequest.prototype.cluster_id = ""; /** - * Creates a new GetKeyspacesRequest instance using the specified properties. + * GetSchemaRequest keyspace. + * @member {string} keyspace + * @memberof vtadmin.GetSchemaRequest + * @instance + */ + GetSchemaRequest.prototype.keyspace = ""; + + /** + * GetSchemaRequest table. + * @member {string} table + * @memberof vtadmin.GetSchemaRequest + * @instance + */ + GetSchemaRequest.prototype.table = ""; + + /** + * GetSchemaRequest table_size_options. + * @member {vtadmin.IGetSchemaTableSizeOptions|null|undefined} table_size_options + * @memberof vtadmin.GetSchemaRequest + * @instance + */ + GetSchemaRequest.prototype.table_size_options = null; + + /** + * Creates a new GetSchemaRequest instance using the specified properties. * @function create - * @memberof vtadmin.GetKeyspacesRequest + * @memberof vtadmin.GetSchemaRequest * @static - * @param {vtadmin.IGetKeyspacesRequest=} [properties] Properties to set - * @returns {vtadmin.GetKeyspacesRequest} GetKeyspacesRequest instance + * @param {vtadmin.IGetSchemaRequest=} [properties] Properties to set + * @returns {vtadmin.GetSchemaRequest} GetSchemaRequest instance */ - GetKeyspacesRequest.create = function create(properties) { - return new GetKeyspacesRequest(properties); + GetSchemaRequest.create = function create(properties) { + return new GetSchemaRequest(properties); }; /** - * Encodes the specified GetKeyspacesRequest message. Does not implicitly {@link vtadmin.GetKeyspacesRequest.verify|verify} messages. + * Encodes the specified GetSchemaRequest message. Does not implicitly {@link vtadmin.GetSchemaRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.GetKeyspacesRequest + * @memberof vtadmin.GetSchemaRequest * @static - * @param {vtadmin.IGetKeyspacesRequest} message GetKeyspacesRequest message or plain object to encode + * @param {vtadmin.IGetSchemaRequest} message GetSchemaRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetKeyspacesRequest.encode = function encode(message, writer) { + GetSchemaRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.cluster_ids != null && message.cluster_ids.length) - for (let i = 0; i < message.cluster_ids.length; ++i) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_ids[i]); + if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); + if (message.keyspace != null && Object.hasOwnProperty.call(message, "keyspace")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.keyspace); + if (message.table != null && Object.hasOwnProperty.call(message, "table")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.table); + if (message.table_size_options != null && Object.hasOwnProperty.call(message, "table_size_options")) + $root.vtadmin.GetSchemaTableSizeOptions.encode(message.table_size_options, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); return writer; }; /** - * Encodes the specified GetKeyspacesRequest message, length delimited. Does not implicitly {@link vtadmin.GetKeyspacesRequest.verify|verify} messages. + * Encodes the specified GetSchemaRequest message, length delimited. Does not implicitly {@link vtadmin.GetSchemaRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.GetKeyspacesRequest + * @memberof vtadmin.GetSchemaRequest * @static - * @param {vtadmin.IGetKeyspacesRequest} message GetKeyspacesRequest message or plain object to encode + * @param {vtadmin.IGetSchemaRequest} message GetSchemaRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetKeyspacesRequest.encodeDelimited = function encodeDelimited(message, writer) { + GetSchemaRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetKeyspacesRequest message from the specified reader or buffer. + * Decodes a GetSchemaRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.GetKeyspacesRequest + * @memberof vtadmin.GetSchemaRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.GetKeyspacesRequest} GetKeyspacesRequest + * @returns {vtadmin.GetSchemaRequest} GetSchemaRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetKeyspacesRequest.decode = function decode(reader, length) { + GetSchemaRequest.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.vtadmin.GetKeyspacesRequest(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.GetSchemaRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - if (!(message.cluster_ids && message.cluster_ids.length)) - message.cluster_ids = []; - message.cluster_ids.push(reader.string()); + message.cluster_id = reader.string(); + break; + } + case 2: { + message.keyspace = reader.string(); + break; + } + case 3: { + message.table = reader.string(); + break; + } + case 4: { + message.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.decode(reader, reader.uint32()); break; } default: @@ -11820,135 +13700,154 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a GetKeyspacesRequest message from the specified reader or buffer, length delimited. + * Decodes a GetSchemaRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetKeyspacesRequest + * @memberof vtadmin.GetSchemaRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetKeyspacesRequest} GetKeyspacesRequest + * @returns {vtadmin.GetSchemaRequest} GetSchemaRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetKeyspacesRequest.decodeDelimited = function decodeDelimited(reader) { + GetSchemaRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetKeyspacesRequest message. + * Verifies a GetSchemaRequest message. * @function verify - * @memberof vtadmin.GetKeyspacesRequest + * @memberof vtadmin.GetSchemaRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetKeyspacesRequest.verify = function verify(message) { + GetSchemaRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.cluster_ids != null && message.hasOwnProperty("cluster_ids")) { - if (!Array.isArray(message.cluster_ids)) - return "cluster_ids: array expected"; - for (let i = 0; i < message.cluster_ids.length; ++i) - if (!$util.isString(message.cluster_ids[i])) - return "cluster_ids: string[] expected"; + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + if (!$util.isString(message.cluster_id)) + return "cluster_id: string expected"; + if (message.keyspace != null && message.hasOwnProperty("keyspace")) + if (!$util.isString(message.keyspace)) + return "keyspace: string expected"; + if (message.table != null && message.hasOwnProperty("table")) + if (!$util.isString(message.table)) + return "table: string expected"; + if (message.table_size_options != null && message.hasOwnProperty("table_size_options")) { + let error = $root.vtadmin.GetSchemaTableSizeOptions.verify(message.table_size_options); + if (error) + return "table_size_options." + error; } return null; }; /** - * Creates a GetKeyspacesRequest message from a plain object. Also converts values to their respective internal types. + * Creates a GetSchemaRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetKeyspacesRequest + * @memberof vtadmin.GetSchemaRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetKeyspacesRequest} GetKeyspacesRequest + * @returns {vtadmin.GetSchemaRequest} GetSchemaRequest */ - GetKeyspacesRequest.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetKeyspacesRequest) + GetSchemaRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetSchemaRequest) return object; - let message = new $root.vtadmin.GetKeyspacesRequest(); - if (object.cluster_ids) { - if (!Array.isArray(object.cluster_ids)) - throw TypeError(".vtadmin.GetKeyspacesRequest.cluster_ids: array expected"); - message.cluster_ids = []; - for (let i = 0; i < object.cluster_ids.length; ++i) - message.cluster_ids[i] = String(object.cluster_ids[i]); + let message = new $root.vtadmin.GetSchemaRequest(); + if (object.cluster_id != null) + message.cluster_id = String(object.cluster_id); + if (object.keyspace != null) + message.keyspace = String(object.keyspace); + if (object.table != null) + message.table = String(object.table); + if (object.table_size_options != null) { + if (typeof object.table_size_options !== "object") + throw TypeError(".vtadmin.GetSchemaRequest.table_size_options: object expected"); + message.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.fromObject(object.table_size_options); } return message; }; /** - * Creates a plain object from a GetKeyspacesRequest message. Also converts values to other types if specified. + * Creates a plain object from a GetSchemaRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetKeyspacesRequest + * @memberof vtadmin.GetSchemaRequest * @static - * @param {vtadmin.GetKeyspacesRequest} message GetKeyspacesRequest + * @param {vtadmin.GetSchemaRequest} message GetSchemaRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetKeyspacesRequest.toObject = function toObject(message, options) { + GetSchemaRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; - if (options.arrays || options.defaults) - object.cluster_ids = []; - if (message.cluster_ids && message.cluster_ids.length) { - object.cluster_ids = []; - for (let j = 0; j < message.cluster_ids.length; ++j) - object.cluster_ids[j] = message.cluster_ids[j]; + if (options.defaults) { + object.cluster_id = ""; + object.keyspace = ""; + object.table = ""; + object.table_size_options = null; } + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + object.cluster_id = message.cluster_id; + if (message.keyspace != null && message.hasOwnProperty("keyspace")) + object.keyspace = message.keyspace; + if (message.table != null && message.hasOwnProperty("table")) + object.table = message.table; + if (message.table_size_options != null && message.hasOwnProperty("table_size_options")) + object.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.toObject(message.table_size_options, options); return object; }; /** - * Converts this GetKeyspacesRequest to JSON. + * Converts this GetSchemaRequest to JSON. * @function toJSON - * @memberof vtadmin.GetKeyspacesRequest + * @memberof vtadmin.GetSchemaRequest * @instance * @returns {Object.} JSON object */ - GetKeyspacesRequest.prototype.toJSON = function toJSON() { + GetSchemaRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetKeyspacesRequest + * Gets the default type url for GetSchemaRequest * @function getTypeUrl - * @memberof vtadmin.GetKeyspacesRequest + * @memberof vtadmin.GetSchemaRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetKeyspacesRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + GetSchemaRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetKeyspacesRequest"; + return typeUrlPrefix + "/vtadmin.GetSchemaRequest"; }; - return GetKeyspacesRequest; + return GetSchemaRequest; })(); - vtadmin.GetKeyspacesResponse = (function() { + vtadmin.GetSchemasRequest = (function() { /** - * Properties of a GetKeyspacesResponse. + * Properties of a GetSchemasRequest. * @memberof vtadmin - * @interface IGetKeyspacesResponse - * @property {Array.|null} [keyspaces] GetKeyspacesResponse keyspaces + * @interface IGetSchemasRequest + * @property {Array.|null} [cluster_ids] GetSchemasRequest cluster_ids + * @property {vtadmin.IGetSchemaTableSizeOptions|null} [table_size_options] GetSchemasRequest table_size_options */ /** - * Constructs a new GetKeyspacesResponse. + * Constructs a new GetSchemasRequest. * @memberof vtadmin - * @classdesc Represents a GetKeyspacesResponse. - * @implements IGetKeyspacesResponse + * @classdesc Represents a GetSchemasRequest. + * @implements IGetSchemasRequest * @constructor - * @param {vtadmin.IGetKeyspacesResponse=} [properties] Properties to set + * @param {vtadmin.IGetSchemasRequest=} [properties] Properties to set */ - function GetKeyspacesResponse(properties) { - this.keyspaces = []; + function GetSchemasRequest(properties) { + this.cluster_ids = []; if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -11956,78 +13855,92 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * GetKeyspacesResponse keyspaces. - * @member {Array.} keyspaces - * @memberof vtadmin.GetKeyspacesResponse + * GetSchemasRequest cluster_ids. + * @member {Array.} cluster_ids + * @memberof vtadmin.GetSchemasRequest * @instance */ - GetKeyspacesResponse.prototype.keyspaces = $util.emptyArray; + GetSchemasRequest.prototype.cluster_ids = $util.emptyArray; /** - * Creates a new GetKeyspacesResponse instance using the specified properties. + * GetSchemasRequest table_size_options. + * @member {vtadmin.IGetSchemaTableSizeOptions|null|undefined} table_size_options + * @memberof vtadmin.GetSchemasRequest + * @instance + */ + GetSchemasRequest.prototype.table_size_options = null; + + /** + * Creates a new GetSchemasRequest instance using the specified properties. * @function create - * @memberof vtadmin.GetKeyspacesResponse + * @memberof vtadmin.GetSchemasRequest * @static - * @param {vtadmin.IGetKeyspacesResponse=} [properties] Properties to set - * @returns {vtadmin.GetKeyspacesResponse} GetKeyspacesResponse instance + * @param {vtadmin.IGetSchemasRequest=} [properties] Properties to set + * @returns {vtadmin.GetSchemasRequest} GetSchemasRequest instance */ - GetKeyspacesResponse.create = function create(properties) { - return new GetKeyspacesResponse(properties); + GetSchemasRequest.create = function create(properties) { + return new GetSchemasRequest(properties); }; /** - * Encodes the specified GetKeyspacesResponse message. Does not implicitly {@link vtadmin.GetKeyspacesResponse.verify|verify} messages. + * Encodes the specified GetSchemasRequest message. Does not implicitly {@link vtadmin.GetSchemasRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.GetKeyspacesResponse + * @memberof vtadmin.GetSchemasRequest * @static - * @param {vtadmin.IGetKeyspacesResponse} message GetKeyspacesResponse message or plain object to encode + * @param {vtadmin.IGetSchemasRequest} message GetSchemasRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetKeyspacesResponse.encode = function encode(message, writer) { + GetSchemasRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.keyspaces != null && message.keyspaces.length) - for (let i = 0; i < message.keyspaces.length; ++i) - $root.vtadmin.Keyspace.encode(message.keyspaces[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.cluster_ids != null && message.cluster_ids.length) + for (let i = 0; i < message.cluster_ids.length; ++i) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_ids[i]); + if (message.table_size_options != null && Object.hasOwnProperty.call(message, "table_size_options")) + $root.vtadmin.GetSchemaTableSizeOptions.encode(message.table_size_options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); return writer; }; /** - * Encodes the specified GetKeyspacesResponse message, length delimited. Does not implicitly {@link vtadmin.GetKeyspacesResponse.verify|verify} messages. + * Encodes the specified GetSchemasRequest message, length delimited. Does not implicitly {@link vtadmin.GetSchemasRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.GetKeyspacesResponse + * @memberof vtadmin.GetSchemasRequest * @static - * @param {vtadmin.IGetKeyspacesResponse} message GetKeyspacesResponse message or plain object to encode + * @param {vtadmin.IGetSchemasRequest} message GetSchemasRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetKeyspacesResponse.encodeDelimited = function encodeDelimited(message, writer) { + GetSchemasRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetKeyspacesResponse message from the specified reader or buffer. + * Decodes a GetSchemasRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.GetKeyspacesResponse + * @memberof vtadmin.GetSchemasRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.GetKeyspacesResponse} GetKeyspacesResponse + * @returns {vtadmin.GetSchemasRequest} GetSchemasRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetKeyspacesResponse.decode = function decode(reader, length) { + GetSchemasRequest.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.vtadmin.GetKeyspacesResponse(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.GetSchemasRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - if (!(message.keyspaces && message.keyspaces.length)) - message.keyspaces = []; - message.keyspaces.push($root.vtadmin.Keyspace.decode(reader, reader.uint32())); + if (!(message.cluster_ids && message.cluster_ids.length)) + message.cluster_ids = []; + message.cluster_ids.push(reader.string()); + break; + } + case 2: { + message.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.decode(reader, reader.uint32()); break; } default: @@ -12039,142 +13952,149 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a GetKeyspacesResponse message from the specified reader or buffer, length delimited. + * Decodes a GetSchemasRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetKeyspacesResponse + * @memberof vtadmin.GetSchemasRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetKeyspacesResponse} GetKeyspacesResponse + * @returns {vtadmin.GetSchemasRequest} GetSchemasRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetKeyspacesResponse.decodeDelimited = function decodeDelimited(reader) { + GetSchemasRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetKeyspacesResponse message. + * Verifies a GetSchemasRequest message. * @function verify - * @memberof vtadmin.GetKeyspacesResponse + * @memberof vtadmin.GetSchemasRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetKeyspacesResponse.verify = function verify(message) { + GetSchemasRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.keyspaces != null && message.hasOwnProperty("keyspaces")) { - if (!Array.isArray(message.keyspaces)) - return "keyspaces: array expected"; - for (let i = 0; i < message.keyspaces.length; ++i) { - let error = $root.vtadmin.Keyspace.verify(message.keyspaces[i]); - if (error) - return "keyspaces." + error; - } + if (message.cluster_ids != null && message.hasOwnProperty("cluster_ids")) { + if (!Array.isArray(message.cluster_ids)) + return "cluster_ids: array expected"; + for (let i = 0; i < message.cluster_ids.length; ++i) + if (!$util.isString(message.cluster_ids[i])) + return "cluster_ids: string[] expected"; + } + if (message.table_size_options != null && message.hasOwnProperty("table_size_options")) { + let error = $root.vtadmin.GetSchemaTableSizeOptions.verify(message.table_size_options); + if (error) + return "table_size_options." + error; } return null; }; /** - * Creates a GetKeyspacesResponse message from a plain object. Also converts values to their respective internal types. + * Creates a GetSchemasRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetKeyspacesResponse + * @memberof vtadmin.GetSchemasRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetKeyspacesResponse} GetKeyspacesResponse + * @returns {vtadmin.GetSchemasRequest} GetSchemasRequest */ - GetKeyspacesResponse.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetKeyspacesResponse) + GetSchemasRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetSchemasRequest) return object; - let message = new $root.vtadmin.GetKeyspacesResponse(); - if (object.keyspaces) { - if (!Array.isArray(object.keyspaces)) - throw TypeError(".vtadmin.GetKeyspacesResponse.keyspaces: array expected"); - message.keyspaces = []; - for (let i = 0; i < object.keyspaces.length; ++i) { - if (typeof object.keyspaces[i] !== "object") - throw TypeError(".vtadmin.GetKeyspacesResponse.keyspaces: object expected"); - message.keyspaces[i] = $root.vtadmin.Keyspace.fromObject(object.keyspaces[i]); - } + let message = new $root.vtadmin.GetSchemasRequest(); + if (object.cluster_ids) { + if (!Array.isArray(object.cluster_ids)) + throw TypeError(".vtadmin.GetSchemasRequest.cluster_ids: array expected"); + message.cluster_ids = []; + for (let i = 0; i < object.cluster_ids.length; ++i) + message.cluster_ids[i] = String(object.cluster_ids[i]); + } + if (object.table_size_options != null) { + if (typeof object.table_size_options !== "object") + throw TypeError(".vtadmin.GetSchemasRequest.table_size_options: object expected"); + message.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.fromObject(object.table_size_options); } return message; }; /** - * Creates a plain object from a GetKeyspacesResponse message. Also converts values to other types if specified. + * Creates a plain object from a GetSchemasRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetKeyspacesResponse + * @memberof vtadmin.GetSchemasRequest * @static - * @param {vtadmin.GetKeyspacesResponse} message GetKeyspacesResponse + * @param {vtadmin.GetSchemasRequest} message GetSchemasRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetKeyspacesResponse.toObject = function toObject(message, options) { + GetSchemasRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; if (options.arrays || options.defaults) - object.keyspaces = []; - if (message.keyspaces && message.keyspaces.length) { - object.keyspaces = []; - for (let j = 0; j < message.keyspaces.length; ++j) - object.keyspaces[j] = $root.vtadmin.Keyspace.toObject(message.keyspaces[j], options); + object.cluster_ids = []; + if (options.defaults) + object.table_size_options = null; + if (message.cluster_ids && message.cluster_ids.length) { + object.cluster_ids = []; + for (let j = 0; j < message.cluster_ids.length; ++j) + object.cluster_ids[j] = message.cluster_ids[j]; } + if (message.table_size_options != null && message.hasOwnProperty("table_size_options")) + object.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.toObject(message.table_size_options, options); return object; }; /** - * Converts this GetKeyspacesResponse to JSON. + * Converts this GetSchemasRequest to JSON. * @function toJSON - * @memberof vtadmin.GetKeyspacesResponse + * @memberof vtadmin.GetSchemasRequest * @instance * @returns {Object.} JSON object */ - GetKeyspacesResponse.prototype.toJSON = function toJSON() { + GetSchemasRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetKeyspacesResponse + * Gets the default type url for GetSchemasRequest * @function getTypeUrl - * @memberof vtadmin.GetKeyspacesResponse + * @memberof vtadmin.GetSchemasRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetKeyspacesResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + GetSchemasRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetKeyspacesResponse"; + return typeUrlPrefix + "/vtadmin.GetSchemasRequest"; }; - return GetKeyspacesResponse; + return GetSchemasRequest; })(); - vtadmin.GetSchemaRequest = (function() { + vtadmin.GetSchemasResponse = (function() { /** - * Properties of a GetSchemaRequest. + * Properties of a GetSchemasResponse. * @memberof vtadmin - * @interface IGetSchemaRequest - * @property {string|null} [cluster_id] GetSchemaRequest cluster_id - * @property {string|null} [keyspace] GetSchemaRequest keyspace - * @property {string|null} [table] GetSchemaRequest table - * @property {vtadmin.IGetSchemaTableSizeOptions|null} [table_size_options] GetSchemaRequest table_size_options + * @interface IGetSchemasResponse + * @property {Array.|null} [schemas] GetSchemasResponse schemas */ /** - * Constructs a new GetSchemaRequest. + * Constructs a new GetSchemasResponse. * @memberof vtadmin - * @classdesc Represents a GetSchemaRequest. - * @implements IGetSchemaRequest + * @classdesc Represents a GetSchemasResponse. + * @implements IGetSchemasResponse * @constructor - * @param {vtadmin.IGetSchemaRequest=} [properties] Properties to set + * @param {vtadmin.IGetSchemasResponse=} [properties] Properties to set */ - function GetSchemaRequest(properties) { + function GetSchemasResponse(properties) { + this.schemas = []; if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -12182,117 +14102,78 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * GetSchemaRequest cluster_id. - * @member {string} cluster_id - * @memberof vtadmin.GetSchemaRequest - * @instance - */ - GetSchemaRequest.prototype.cluster_id = ""; - - /** - * GetSchemaRequest keyspace. - * @member {string} keyspace - * @memberof vtadmin.GetSchemaRequest - * @instance - */ - GetSchemaRequest.prototype.keyspace = ""; - - /** - * GetSchemaRequest table. - * @member {string} table - * @memberof vtadmin.GetSchemaRequest - * @instance - */ - GetSchemaRequest.prototype.table = ""; - - /** - * GetSchemaRequest table_size_options. - * @member {vtadmin.IGetSchemaTableSizeOptions|null|undefined} table_size_options - * @memberof vtadmin.GetSchemaRequest + * GetSchemasResponse schemas. + * @member {Array.} schemas + * @memberof vtadmin.GetSchemasResponse * @instance */ - GetSchemaRequest.prototype.table_size_options = null; + GetSchemasResponse.prototype.schemas = $util.emptyArray; /** - * Creates a new GetSchemaRequest instance using the specified properties. + * Creates a new GetSchemasResponse instance using the specified properties. * @function create - * @memberof vtadmin.GetSchemaRequest + * @memberof vtadmin.GetSchemasResponse * @static - * @param {vtadmin.IGetSchemaRequest=} [properties] Properties to set - * @returns {vtadmin.GetSchemaRequest} GetSchemaRequest instance + * @param {vtadmin.IGetSchemasResponse=} [properties] Properties to set + * @returns {vtadmin.GetSchemasResponse} GetSchemasResponse instance */ - GetSchemaRequest.create = function create(properties) { - return new GetSchemaRequest(properties); + GetSchemasResponse.create = function create(properties) { + return new GetSchemasResponse(properties); }; /** - * Encodes the specified GetSchemaRequest message. Does not implicitly {@link vtadmin.GetSchemaRequest.verify|verify} messages. + * Encodes the specified GetSchemasResponse message. Does not implicitly {@link vtadmin.GetSchemasResponse.verify|verify} messages. * @function encode - * @memberof vtadmin.GetSchemaRequest + * @memberof vtadmin.GetSchemasResponse * @static - * @param {vtadmin.IGetSchemaRequest} message GetSchemaRequest message or plain object to encode + * @param {vtadmin.IGetSchemasResponse} message GetSchemasResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetSchemaRequest.encode = function encode(message, writer) { + GetSchemasResponse.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); - if (message.keyspace != null && Object.hasOwnProperty.call(message, "keyspace")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.keyspace); - if (message.table != null && Object.hasOwnProperty.call(message, "table")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.table); - if (message.table_size_options != null && Object.hasOwnProperty.call(message, "table_size_options")) - $root.vtadmin.GetSchemaTableSizeOptions.encode(message.table_size_options, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.schemas != null && message.schemas.length) + for (let i = 0; i < message.schemas.length; ++i) + $root.vtadmin.Schema.encode(message.schemas[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); return writer; }; /** - * Encodes the specified GetSchemaRequest message, length delimited. Does not implicitly {@link vtadmin.GetSchemaRequest.verify|verify} messages. + * Encodes the specified GetSchemasResponse message, length delimited. Does not implicitly {@link vtadmin.GetSchemasResponse.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.GetSchemaRequest + * @memberof vtadmin.GetSchemasResponse * @static - * @param {vtadmin.IGetSchemaRequest} message GetSchemaRequest message or plain object to encode + * @param {vtadmin.IGetSchemasResponse} message GetSchemasResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetSchemaRequest.encodeDelimited = function encodeDelimited(message, writer) { + GetSchemasResponse.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetSchemaRequest message from the specified reader or buffer. + * Decodes a GetSchemasResponse message from the specified reader or buffer. * @function decode - * @memberof vtadmin.GetSchemaRequest + * @memberof vtadmin.GetSchemasResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.GetSchemaRequest} GetSchemaRequest + * @returns {vtadmin.GetSchemasResponse} GetSchemasResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetSchemaRequest.decode = function decode(reader, length) { + GetSchemasResponse.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.vtadmin.GetSchemaRequest(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.GetSchemasResponse(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - message.cluster_id = reader.string(); - break; - } - case 2: { - message.keyspace = reader.string(); - break; - } - case 3: { - message.table = reader.string(); - break; - } - case 4: { - message.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.decode(reader, reader.uint32()); + if (!(message.schemas && message.schemas.length)) + message.schemas = []; + message.schemas.push($root.vtadmin.Schema.decode(reader, reader.uint32())); break; } default: @@ -12304,154 +14185,140 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a GetSchemaRequest message from the specified reader or buffer, length delimited. + * Decodes a GetSchemasResponse message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetSchemaRequest + * @memberof vtadmin.GetSchemasResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetSchemaRequest} GetSchemaRequest + * @returns {vtadmin.GetSchemasResponse} GetSchemasResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetSchemaRequest.decodeDelimited = function decodeDelimited(reader) { + GetSchemasResponse.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetSchemaRequest message. + * Verifies a GetSchemasResponse message. * @function verify - * @memberof vtadmin.GetSchemaRequest + * @memberof vtadmin.GetSchemasResponse * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetSchemaRequest.verify = function verify(message) { + GetSchemasResponse.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) - if (!$util.isString(message.cluster_id)) - return "cluster_id: string expected"; - if (message.keyspace != null && message.hasOwnProperty("keyspace")) - if (!$util.isString(message.keyspace)) - return "keyspace: string expected"; - if (message.table != null && message.hasOwnProperty("table")) - if (!$util.isString(message.table)) - return "table: string expected"; - if (message.table_size_options != null && message.hasOwnProperty("table_size_options")) { - let error = $root.vtadmin.GetSchemaTableSizeOptions.verify(message.table_size_options); - if (error) - return "table_size_options." + error; + if (message.schemas != null && message.hasOwnProperty("schemas")) { + if (!Array.isArray(message.schemas)) + return "schemas: array expected"; + for (let i = 0; i < message.schemas.length; ++i) { + let error = $root.vtadmin.Schema.verify(message.schemas[i]); + if (error) + return "schemas." + error; + } } return null; }; /** - * Creates a GetSchemaRequest message from a plain object. Also converts values to their respective internal types. + * Creates a GetSchemasResponse message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetSchemaRequest + * @memberof vtadmin.GetSchemasResponse * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetSchemaRequest} GetSchemaRequest + * @returns {vtadmin.GetSchemasResponse} GetSchemasResponse */ - GetSchemaRequest.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetSchemaRequest) + GetSchemasResponse.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetSchemasResponse) return object; - let message = new $root.vtadmin.GetSchemaRequest(); - if (object.cluster_id != null) - message.cluster_id = String(object.cluster_id); - if (object.keyspace != null) - message.keyspace = String(object.keyspace); - if (object.table != null) - message.table = String(object.table); - if (object.table_size_options != null) { - if (typeof object.table_size_options !== "object") - throw TypeError(".vtadmin.GetSchemaRequest.table_size_options: object expected"); - message.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.fromObject(object.table_size_options); + let message = new $root.vtadmin.GetSchemasResponse(); + if (object.schemas) { + if (!Array.isArray(object.schemas)) + throw TypeError(".vtadmin.GetSchemasResponse.schemas: array expected"); + message.schemas = []; + for (let i = 0; i < object.schemas.length; ++i) { + if (typeof object.schemas[i] !== "object") + throw TypeError(".vtadmin.GetSchemasResponse.schemas: object expected"); + message.schemas[i] = $root.vtadmin.Schema.fromObject(object.schemas[i]); + } } return message; }; /** - * Creates a plain object from a GetSchemaRequest message. Also converts values to other types if specified. + * Creates a plain object from a GetSchemasResponse message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetSchemaRequest + * @memberof vtadmin.GetSchemasResponse * @static - * @param {vtadmin.GetSchemaRequest} message GetSchemaRequest + * @param {vtadmin.GetSchemasResponse} message GetSchemasResponse * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetSchemaRequest.toObject = function toObject(message, options) { + GetSchemasResponse.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; - if (options.defaults) { - object.cluster_id = ""; - object.keyspace = ""; - object.table = ""; - object.table_size_options = null; + if (options.arrays || options.defaults) + object.schemas = []; + if (message.schemas && message.schemas.length) { + object.schemas = []; + for (let j = 0; j < message.schemas.length; ++j) + object.schemas[j] = $root.vtadmin.Schema.toObject(message.schemas[j], options); } - if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) - object.cluster_id = message.cluster_id; - if (message.keyspace != null && message.hasOwnProperty("keyspace")) - object.keyspace = message.keyspace; - if (message.table != null && message.hasOwnProperty("table")) - object.table = message.table; - if (message.table_size_options != null && message.hasOwnProperty("table_size_options")) - object.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.toObject(message.table_size_options, options); return object; }; /** - * Converts this GetSchemaRequest to JSON. + * Converts this GetSchemasResponse to JSON. * @function toJSON - * @memberof vtadmin.GetSchemaRequest + * @memberof vtadmin.GetSchemasResponse * @instance * @returns {Object.} JSON object */ - GetSchemaRequest.prototype.toJSON = function toJSON() { + GetSchemasResponse.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetSchemaRequest + * Gets the default type url for GetSchemasResponse * @function getTypeUrl - * @memberof vtadmin.GetSchemaRequest + * @memberof vtadmin.GetSchemasResponse * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetSchemaRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + GetSchemasResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetSchemaRequest"; + return typeUrlPrefix + "/vtadmin.GetSchemasResponse"; }; - return GetSchemaRequest; + return GetSchemasResponse; })(); - vtadmin.GetSchemasRequest = (function() { + vtadmin.GetSchemaMigrationsRequest = (function() { /** - * Properties of a GetSchemasRequest. + * Properties of a GetSchemaMigrationsRequest. * @memberof vtadmin - * @interface IGetSchemasRequest - * @property {Array.|null} [cluster_ids] GetSchemasRequest cluster_ids - * @property {vtadmin.IGetSchemaTableSizeOptions|null} [table_size_options] GetSchemasRequest table_size_options + * @interface IGetSchemaMigrationsRequest + * @property {Array.|null} [cluster_requests] GetSchemaMigrationsRequest cluster_requests */ /** - * Constructs a new GetSchemasRequest. + * Constructs a new GetSchemaMigrationsRequest. * @memberof vtadmin - * @classdesc Represents a GetSchemasRequest. - * @implements IGetSchemasRequest + * @classdesc Represents a GetSchemaMigrationsRequest. + * @implements IGetSchemaMigrationsRequest * @constructor - * @param {vtadmin.IGetSchemasRequest=} [properties] Properties to set + * @param {vtadmin.IGetSchemaMigrationsRequest=} [properties] Properties to set */ - function GetSchemasRequest(properties) { - this.cluster_ids = []; + function GetSchemaMigrationsRequest(properties) { + this.cluster_requests = []; if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -12459,92 +14326,78 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * GetSchemasRequest cluster_ids. - * @member {Array.} cluster_ids - * @memberof vtadmin.GetSchemasRequest - * @instance - */ - GetSchemasRequest.prototype.cluster_ids = $util.emptyArray; - - /** - * GetSchemasRequest table_size_options. - * @member {vtadmin.IGetSchemaTableSizeOptions|null|undefined} table_size_options - * @memberof vtadmin.GetSchemasRequest + * GetSchemaMigrationsRequest cluster_requests. + * @member {Array.} cluster_requests + * @memberof vtadmin.GetSchemaMigrationsRequest * @instance */ - GetSchemasRequest.prototype.table_size_options = null; + GetSchemaMigrationsRequest.prototype.cluster_requests = $util.emptyArray; /** - * Creates a new GetSchemasRequest instance using the specified properties. + * Creates a new GetSchemaMigrationsRequest instance using the specified properties. * @function create - * @memberof vtadmin.GetSchemasRequest + * @memberof vtadmin.GetSchemaMigrationsRequest * @static - * @param {vtadmin.IGetSchemasRequest=} [properties] Properties to set - * @returns {vtadmin.GetSchemasRequest} GetSchemasRequest instance + * @param {vtadmin.IGetSchemaMigrationsRequest=} [properties] Properties to set + * @returns {vtadmin.GetSchemaMigrationsRequest} GetSchemaMigrationsRequest instance */ - GetSchemasRequest.create = function create(properties) { - return new GetSchemasRequest(properties); + GetSchemaMigrationsRequest.create = function create(properties) { + return new GetSchemaMigrationsRequest(properties); }; /** - * Encodes the specified GetSchemasRequest message. Does not implicitly {@link vtadmin.GetSchemasRequest.verify|verify} messages. + * Encodes the specified GetSchemaMigrationsRequest message. Does not implicitly {@link vtadmin.GetSchemaMigrationsRequest.verify|verify} messages. * @function encode - * @memberof vtadmin.GetSchemasRequest + * @memberof vtadmin.GetSchemaMigrationsRequest * @static - * @param {vtadmin.IGetSchemasRequest} message GetSchemasRequest message or plain object to encode + * @param {vtadmin.IGetSchemaMigrationsRequest} message GetSchemaMigrationsRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetSchemasRequest.encode = function encode(message, writer) { + GetSchemaMigrationsRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.cluster_ids != null && message.cluster_ids.length) - for (let i = 0; i < message.cluster_ids.length; ++i) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_ids[i]); - if (message.table_size_options != null && Object.hasOwnProperty.call(message, "table_size_options")) - $root.vtadmin.GetSchemaTableSizeOptions.encode(message.table_size_options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.cluster_requests != null && message.cluster_requests.length) + for (let i = 0; i < message.cluster_requests.length; ++i) + $root.vtadmin.GetSchemaMigrationsRequest.ClusterRequest.encode(message.cluster_requests[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); return writer; }; /** - * Encodes the specified GetSchemasRequest message, length delimited. Does not implicitly {@link vtadmin.GetSchemasRequest.verify|verify} messages. + * Encodes the specified GetSchemaMigrationsRequest message, length delimited. Does not implicitly {@link vtadmin.GetSchemaMigrationsRequest.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.GetSchemasRequest + * @memberof vtadmin.GetSchemaMigrationsRequest * @static - * @param {vtadmin.IGetSchemasRequest} message GetSchemasRequest message or plain object to encode + * @param {vtadmin.IGetSchemaMigrationsRequest} message GetSchemaMigrationsRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetSchemasRequest.encodeDelimited = function encodeDelimited(message, writer) { + GetSchemaMigrationsRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetSchemasRequest message from the specified reader or buffer. + * Decodes a GetSchemaMigrationsRequest message from the specified reader or buffer. * @function decode - * @memberof vtadmin.GetSchemasRequest + * @memberof vtadmin.GetSchemaMigrationsRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.GetSchemasRequest} GetSchemasRequest + * @returns {vtadmin.GetSchemaMigrationsRequest} GetSchemaMigrationsRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetSchemasRequest.decode = function decode(reader, length) { + GetSchemaMigrationsRequest.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.vtadmin.GetSchemasRequest(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.GetSchemaMigrationsRequest(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - if (!(message.cluster_ids && message.cluster_ids.length)) - message.cluster_ids = []; - message.cluster_ids.push(reader.string()); - break; - } - case 2: { - message.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.decode(reader, reader.uint32()); + if (!(message.cluster_requests && message.cluster_requests.length)) + message.cluster_requests = []; + message.cluster_requests.push($root.vtadmin.GetSchemaMigrationsRequest.ClusterRequest.decode(reader, reader.uint32())); break; } default: @@ -12556,149 +14409,372 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a GetSchemasRequest message from the specified reader or buffer, length delimited. + * Decodes a GetSchemaMigrationsRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetSchemasRequest + * @memberof vtadmin.GetSchemaMigrationsRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetSchemasRequest} GetSchemasRequest + * @returns {vtadmin.GetSchemaMigrationsRequest} GetSchemaMigrationsRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetSchemasRequest.decodeDelimited = function decodeDelimited(reader) { + GetSchemaMigrationsRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetSchemasRequest message. + * Verifies a GetSchemaMigrationsRequest message. * @function verify - * @memberof vtadmin.GetSchemasRequest + * @memberof vtadmin.GetSchemaMigrationsRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetSchemasRequest.verify = function verify(message) { + GetSchemaMigrationsRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.cluster_ids != null && message.hasOwnProperty("cluster_ids")) { - if (!Array.isArray(message.cluster_ids)) - return "cluster_ids: array expected"; - for (let i = 0; i < message.cluster_ids.length; ++i) - if (!$util.isString(message.cluster_ids[i])) - return "cluster_ids: string[] expected"; - } - if (message.table_size_options != null && message.hasOwnProperty("table_size_options")) { - let error = $root.vtadmin.GetSchemaTableSizeOptions.verify(message.table_size_options); - if (error) - return "table_size_options." + error; + if (message.cluster_requests != null && message.hasOwnProperty("cluster_requests")) { + if (!Array.isArray(message.cluster_requests)) + return "cluster_requests: array expected"; + for (let i = 0; i < message.cluster_requests.length; ++i) { + let error = $root.vtadmin.GetSchemaMigrationsRequest.ClusterRequest.verify(message.cluster_requests[i]); + if (error) + return "cluster_requests." + error; + } } return null; }; /** - * Creates a GetSchemasRequest message from a plain object. Also converts values to their respective internal types. + * Creates a GetSchemaMigrationsRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetSchemasRequest + * @memberof vtadmin.GetSchemaMigrationsRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetSchemasRequest} GetSchemasRequest + * @returns {vtadmin.GetSchemaMigrationsRequest} GetSchemaMigrationsRequest */ - GetSchemasRequest.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetSchemasRequest) + GetSchemaMigrationsRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetSchemaMigrationsRequest) return object; - let message = new $root.vtadmin.GetSchemasRequest(); - if (object.cluster_ids) { - if (!Array.isArray(object.cluster_ids)) - throw TypeError(".vtadmin.GetSchemasRequest.cluster_ids: array expected"); - message.cluster_ids = []; - for (let i = 0; i < object.cluster_ids.length; ++i) - message.cluster_ids[i] = String(object.cluster_ids[i]); - } - if (object.table_size_options != null) { - if (typeof object.table_size_options !== "object") - throw TypeError(".vtadmin.GetSchemasRequest.table_size_options: object expected"); - message.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.fromObject(object.table_size_options); + let message = new $root.vtadmin.GetSchemaMigrationsRequest(); + if (object.cluster_requests) { + if (!Array.isArray(object.cluster_requests)) + throw TypeError(".vtadmin.GetSchemaMigrationsRequest.cluster_requests: array expected"); + message.cluster_requests = []; + for (let i = 0; i < object.cluster_requests.length; ++i) { + if (typeof object.cluster_requests[i] !== "object") + throw TypeError(".vtadmin.GetSchemaMigrationsRequest.cluster_requests: object expected"); + message.cluster_requests[i] = $root.vtadmin.GetSchemaMigrationsRequest.ClusterRequest.fromObject(object.cluster_requests[i]); + } } return message; }; /** - * Creates a plain object from a GetSchemasRequest message. Also converts values to other types if specified. + * Creates a plain object from a GetSchemaMigrationsRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetSchemasRequest + * @memberof vtadmin.GetSchemaMigrationsRequest * @static - * @param {vtadmin.GetSchemasRequest} message GetSchemasRequest + * @param {vtadmin.GetSchemaMigrationsRequest} message GetSchemaMigrationsRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetSchemasRequest.toObject = function toObject(message, options) { + GetSchemaMigrationsRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; if (options.arrays || options.defaults) - object.cluster_ids = []; - if (options.defaults) - object.table_size_options = null; - if (message.cluster_ids && message.cluster_ids.length) { - object.cluster_ids = []; - for (let j = 0; j < message.cluster_ids.length; ++j) - object.cluster_ids[j] = message.cluster_ids[j]; + object.cluster_requests = []; + if (message.cluster_requests && message.cluster_requests.length) { + object.cluster_requests = []; + for (let j = 0; j < message.cluster_requests.length; ++j) + object.cluster_requests[j] = $root.vtadmin.GetSchemaMigrationsRequest.ClusterRequest.toObject(message.cluster_requests[j], options); } - if (message.table_size_options != null && message.hasOwnProperty("table_size_options")) - object.table_size_options = $root.vtadmin.GetSchemaTableSizeOptions.toObject(message.table_size_options, options); return object; }; /** - * Converts this GetSchemasRequest to JSON. + * Converts this GetSchemaMigrationsRequest to JSON. * @function toJSON - * @memberof vtadmin.GetSchemasRequest + * @memberof vtadmin.GetSchemaMigrationsRequest * @instance * @returns {Object.} JSON object */ - GetSchemasRequest.prototype.toJSON = function toJSON() { + GetSchemaMigrationsRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetSchemasRequest + * Gets the default type url for GetSchemaMigrationsRequest * @function getTypeUrl - * @memberof vtadmin.GetSchemasRequest + * @memberof vtadmin.GetSchemaMigrationsRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetSchemasRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + GetSchemaMigrationsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetSchemasRequest"; + return typeUrlPrefix + "/vtadmin.GetSchemaMigrationsRequest"; }; - return GetSchemasRequest; + GetSchemaMigrationsRequest.ClusterRequest = (function() { + + /** + * Properties of a ClusterRequest. + * @memberof vtadmin.GetSchemaMigrationsRequest + * @interface IClusterRequest + * @property {string|null} [cluster_id] ClusterRequest cluster_id + * @property {vtctldata.IGetSchemaMigrationsRequest|null} [request] ClusterRequest request + */ + + /** + * Constructs a new ClusterRequest. + * @memberof vtadmin.GetSchemaMigrationsRequest + * @classdesc Represents a ClusterRequest. + * @implements IClusterRequest + * @constructor + * @param {vtadmin.GetSchemaMigrationsRequest.IClusterRequest=} [properties] Properties to set + */ + function ClusterRequest(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]]; + } + + /** + * ClusterRequest cluster_id. + * @member {string} cluster_id + * @memberof vtadmin.GetSchemaMigrationsRequest.ClusterRequest + * @instance + */ + ClusterRequest.prototype.cluster_id = ""; + + /** + * ClusterRequest request. + * @member {vtctldata.IGetSchemaMigrationsRequest|null|undefined} request + * @memberof vtadmin.GetSchemaMigrationsRequest.ClusterRequest + * @instance + */ + ClusterRequest.prototype.request = null; + + /** + * Creates a new ClusterRequest instance using the specified properties. + * @function create + * @memberof vtadmin.GetSchemaMigrationsRequest.ClusterRequest + * @static + * @param {vtadmin.GetSchemaMigrationsRequest.IClusterRequest=} [properties] Properties to set + * @returns {vtadmin.GetSchemaMigrationsRequest.ClusterRequest} ClusterRequest instance + */ + ClusterRequest.create = function create(properties) { + return new ClusterRequest(properties); + }; + + /** + * Encodes the specified ClusterRequest message. Does not implicitly {@link vtadmin.GetSchemaMigrationsRequest.ClusterRequest.verify|verify} messages. + * @function encode + * @memberof vtadmin.GetSchemaMigrationsRequest.ClusterRequest + * @static + * @param {vtadmin.GetSchemaMigrationsRequest.IClusterRequest} message ClusterRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ClusterRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); + if (message.request != null && Object.hasOwnProperty.call(message, "request")) + $root.vtctldata.GetSchemaMigrationsRequest.encode(message.request, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ClusterRequest message, length delimited. Does not implicitly {@link vtadmin.GetSchemaMigrationsRequest.ClusterRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof vtadmin.GetSchemaMigrationsRequest.ClusterRequest + * @static + * @param {vtadmin.GetSchemaMigrationsRequest.IClusterRequest} message ClusterRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ClusterRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ClusterRequest message from the specified reader or buffer. + * @function decode + * @memberof vtadmin.GetSchemaMigrationsRequest.ClusterRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {vtadmin.GetSchemaMigrationsRequest.ClusterRequest} ClusterRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ClusterRequest.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.vtadmin.GetSchemaMigrationsRequest.ClusterRequest(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.cluster_id = reader.string(); + break; + } + case 2: { + message.request = $root.vtctldata.GetSchemaMigrationsRequest.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ClusterRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof vtadmin.GetSchemaMigrationsRequest.ClusterRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {vtadmin.GetSchemaMigrationsRequest.ClusterRequest} ClusterRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ClusterRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ClusterRequest message. + * @function verify + * @memberof vtadmin.GetSchemaMigrationsRequest.ClusterRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ClusterRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + if (!$util.isString(message.cluster_id)) + return "cluster_id: string expected"; + if (message.request != null && message.hasOwnProperty("request")) { + let error = $root.vtctldata.GetSchemaMigrationsRequest.verify(message.request); + if (error) + return "request." + error; + } + return null; + }; + + /** + * Creates a ClusterRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof vtadmin.GetSchemaMigrationsRequest.ClusterRequest + * @static + * @param {Object.} object Plain object + * @returns {vtadmin.GetSchemaMigrationsRequest.ClusterRequest} ClusterRequest + */ + ClusterRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetSchemaMigrationsRequest.ClusterRequest) + return object; + let message = new $root.vtadmin.GetSchemaMigrationsRequest.ClusterRequest(); + if (object.cluster_id != null) + message.cluster_id = String(object.cluster_id); + if (object.request != null) { + if (typeof object.request !== "object") + throw TypeError(".vtadmin.GetSchemaMigrationsRequest.ClusterRequest.request: object expected"); + message.request = $root.vtctldata.GetSchemaMigrationsRequest.fromObject(object.request); + } + return message; + }; + + /** + * Creates a plain object from a ClusterRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof vtadmin.GetSchemaMigrationsRequest.ClusterRequest + * @static + * @param {vtadmin.GetSchemaMigrationsRequest.ClusterRequest} message ClusterRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ClusterRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + let object = {}; + if (options.defaults) { + object.cluster_id = ""; + object.request = null; + } + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + object.cluster_id = message.cluster_id; + if (message.request != null && message.hasOwnProperty("request")) + object.request = $root.vtctldata.GetSchemaMigrationsRequest.toObject(message.request, options); + return object; + }; + + /** + * Converts this ClusterRequest to JSON. + * @function toJSON + * @memberof vtadmin.GetSchemaMigrationsRequest.ClusterRequest + * @instance + * @returns {Object.} JSON object + */ + ClusterRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for ClusterRequest + * @function getTypeUrl + * @memberof vtadmin.GetSchemaMigrationsRequest.ClusterRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ClusterRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/vtadmin.GetSchemaMigrationsRequest.ClusterRequest"; + }; + + return ClusterRequest; + })(); + + return GetSchemaMigrationsRequest; })(); - vtadmin.GetSchemasResponse = (function() { + vtadmin.GetSchemaMigrationsResponse = (function() { /** - * Properties of a GetSchemasResponse. + * Properties of a GetSchemaMigrationsResponse. * @memberof vtadmin - * @interface IGetSchemasResponse - * @property {Array.|null} [schemas] GetSchemasResponse schemas + * @interface IGetSchemaMigrationsResponse + * @property {Array.|null} [schema_migrations] GetSchemaMigrationsResponse schema_migrations */ /** - * Constructs a new GetSchemasResponse. + * Constructs a new GetSchemaMigrationsResponse. * @memberof vtadmin - * @classdesc Represents a GetSchemasResponse. - * @implements IGetSchemasResponse + * @classdesc Represents a GetSchemaMigrationsResponse. + * @implements IGetSchemaMigrationsResponse * @constructor - * @param {vtadmin.IGetSchemasResponse=} [properties] Properties to set + * @param {vtadmin.IGetSchemaMigrationsResponse=} [properties] Properties to set */ - function GetSchemasResponse(properties) { - this.schemas = []; + function GetSchemaMigrationsResponse(properties) { + this.schema_migrations = []; if (properties) for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -12706,78 +14782,78 @@ export const vtadmin = $root.vtadmin = (() => { } /** - * GetSchemasResponse schemas. - * @member {Array.} schemas - * @memberof vtadmin.GetSchemasResponse + * GetSchemaMigrationsResponse schema_migrations. + * @member {Array.} schema_migrations + * @memberof vtadmin.GetSchemaMigrationsResponse * @instance */ - GetSchemasResponse.prototype.schemas = $util.emptyArray; + GetSchemaMigrationsResponse.prototype.schema_migrations = $util.emptyArray; /** - * Creates a new GetSchemasResponse instance using the specified properties. + * Creates a new GetSchemaMigrationsResponse instance using the specified properties. * @function create - * @memberof vtadmin.GetSchemasResponse + * @memberof vtadmin.GetSchemaMigrationsResponse * @static - * @param {vtadmin.IGetSchemasResponse=} [properties] Properties to set - * @returns {vtadmin.GetSchemasResponse} GetSchemasResponse instance + * @param {vtadmin.IGetSchemaMigrationsResponse=} [properties] Properties to set + * @returns {vtadmin.GetSchemaMigrationsResponse} GetSchemaMigrationsResponse instance */ - GetSchemasResponse.create = function create(properties) { - return new GetSchemasResponse(properties); + GetSchemaMigrationsResponse.create = function create(properties) { + return new GetSchemaMigrationsResponse(properties); }; /** - * Encodes the specified GetSchemasResponse message. Does not implicitly {@link vtadmin.GetSchemasResponse.verify|verify} messages. + * Encodes the specified GetSchemaMigrationsResponse message. Does not implicitly {@link vtadmin.GetSchemaMigrationsResponse.verify|verify} messages. * @function encode - * @memberof vtadmin.GetSchemasResponse + * @memberof vtadmin.GetSchemaMigrationsResponse * @static - * @param {vtadmin.IGetSchemasResponse} message GetSchemasResponse message or plain object to encode + * @param {vtadmin.IGetSchemaMigrationsResponse} message GetSchemaMigrationsResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetSchemasResponse.encode = function encode(message, writer) { + GetSchemaMigrationsResponse.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.schemas != null && message.schemas.length) - for (let i = 0; i < message.schemas.length; ++i) - $root.vtadmin.Schema.encode(message.schemas[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.schema_migrations != null && message.schema_migrations.length) + for (let i = 0; i < message.schema_migrations.length; ++i) + $root.vtadmin.SchemaMigration.encode(message.schema_migrations[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); return writer; }; /** - * Encodes the specified GetSchemasResponse message, length delimited. Does not implicitly {@link vtadmin.GetSchemasResponse.verify|verify} messages. + * Encodes the specified GetSchemaMigrationsResponse message, length delimited. Does not implicitly {@link vtadmin.GetSchemaMigrationsResponse.verify|verify} messages. * @function encodeDelimited - * @memberof vtadmin.GetSchemasResponse + * @memberof vtadmin.GetSchemaMigrationsResponse * @static - * @param {vtadmin.IGetSchemasResponse} message GetSchemasResponse message or plain object to encode + * @param {vtadmin.IGetSchemaMigrationsResponse} message GetSchemaMigrationsResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetSchemasResponse.encodeDelimited = function encodeDelimited(message, writer) { + GetSchemaMigrationsResponse.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetSchemasResponse message from the specified reader or buffer. + * Decodes a GetSchemaMigrationsResponse message from the specified reader or buffer. * @function decode - * @memberof vtadmin.GetSchemasResponse + * @memberof vtadmin.GetSchemaMigrationsResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {vtadmin.GetSchemasResponse} GetSchemasResponse + * @returns {vtadmin.GetSchemaMigrationsResponse} GetSchemaMigrationsResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetSchemasResponse.decode = function decode(reader, length) { + GetSchemaMigrationsResponse.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.vtadmin.GetSchemasResponse(); + let end = length === undefined ? reader.len : reader.pos + length, message = new $root.vtadmin.GetSchemaMigrationsResponse(); while (reader.pos < end) { let tag = reader.uint32(); switch (tag >>> 3) { case 1: { - if (!(message.schemas && message.schemas.length)) - message.schemas = []; - message.schemas.push($root.vtadmin.Schema.decode(reader, reader.uint32())); + if (!(message.schema_migrations && message.schema_migrations.length)) + message.schema_migrations = []; + message.schema_migrations.push($root.vtadmin.SchemaMigration.decode(reader, reader.uint32())); break; } default: @@ -12789,119 +14865,119 @@ export const vtadmin = $root.vtadmin = (() => { }; /** - * Decodes a GetSchemasResponse message from the specified reader or buffer, length delimited. + * Decodes a GetSchemaMigrationsResponse message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetSchemasResponse + * @memberof vtadmin.GetSchemaMigrationsResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetSchemasResponse} GetSchemasResponse + * @returns {vtadmin.GetSchemaMigrationsResponse} GetSchemaMigrationsResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetSchemasResponse.decodeDelimited = function decodeDelimited(reader) { + GetSchemaMigrationsResponse.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetSchemasResponse message. + * Verifies a GetSchemaMigrationsResponse message. * @function verify - * @memberof vtadmin.GetSchemasResponse + * @memberof vtadmin.GetSchemaMigrationsResponse * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetSchemasResponse.verify = function verify(message) { + GetSchemaMigrationsResponse.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.schemas != null && message.hasOwnProperty("schemas")) { - if (!Array.isArray(message.schemas)) - return "schemas: array expected"; - for (let i = 0; i < message.schemas.length; ++i) { - let error = $root.vtadmin.Schema.verify(message.schemas[i]); + if (message.schema_migrations != null && message.hasOwnProperty("schema_migrations")) { + if (!Array.isArray(message.schema_migrations)) + return "schema_migrations: array expected"; + for (let i = 0; i < message.schema_migrations.length; ++i) { + let error = $root.vtadmin.SchemaMigration.verify(message.schema_migrations[i]); if (error) - return "schemas." + error; + return "schema_migrations." + error; } } return null; }; /** - * Creates a GetSchemasResponse message from a plain object. Also converts values to their respective internal types. + * Creates a GetSchemaMigrationsResponse message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetSchemasResponse + * @memberof vtadmin.GetSchemaMigrationsResponse * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetSchemasResponse} GetSchemasResponse + * @returns {vtadmin.GetSchemaMigrationsResponse} GetSchemaMigrationsResponse */ - GetSchemasResponse.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetSchemasResponse) + GetSchemaMigrationsResponse.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetSchemaMigrationsResponse) return object; - let message = new $root.vtadmin.GetSchemasResponse(); - if (object.schemas) { - if (!Array.isArray(object.schemas)) - throw TypeError(".vtadmin.GetSchemasResponse.schemas: array expected"); - message.schemas = []; - for (let i = 0; i < object.schemas.length; ++i) { - if (typeof object.schemas[i] !== "object") - throw TypeError(".vtadmin.GetSchemasResponse.schemas: object expected"); - message.schemas[i] = $root.vtadmin.Schema.fromObject(object.schemas[i]); + let message = new $root.vtadmin.GetSchemaMigrationsResponse(); + if (object.schema_migrations) { + if (!Array.isArray(object.schema_migrations)) + throw TypeError(".vtadmin.GetSchemaMigrationsResponse.schema_migrations: array expected"); + message.schema_migrations = []; + for (let i = 0; i < object.schema_migrations.length; ++i) { + if (typeof object.schema_migrations[i] !== "object") + throw TypeError(".vtadmin.GetSchemaMigrationsResponse.schema_migrations: object expected"); + message.schema_migrations[i] = $root.vtadmin.SchemaMigration.fromObject(object.schema_migrations[i]); } } return message; }; /** - * Creates a plain object from a GetSchemasResponse message. Also converts values to other types if specified. + * Creates a plain object from a GetSchemaMigrationsResponse message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetSchemasResponse + * @memberof vtadmin.GetSchemaMigrationsResponse * @static - * @param {vtadmin.GetSchemasResponse} message GetSchemasResponse + * @param {vtadmin.GetSchemaMigrationsResponse} message GetSchemaMigrationsResponse * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetSchemasResponse.toObject = function toObject(message, options) { + GetSchemaMigrationsResponse.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; if (options.arrays || options.defaults) - object.schemas = []; - if (message.schemas && message.schemas.length) { - object.schemas = []; - for (let j = 0; j < message.schemas.length; ++j) - object.schemas[j] = $root.vtadmin.Schema.toObject(message.schemas[j], options); + object.schema_migrations = []; + if (message.schema_migrations && message.schema_migrations.length) { + object.schema_migrations = []; + for (let j = 0; j < message.schema_migrations.length; ++j) + object.schema_migrations[j] = $root.vtadmin.SchemaMigration.toObject(message.schema_migrations[j], options); } return object; }; /** - * Converts this GetSchemasResponse to JSON. + * Converts this GetSchemaMigrationsResponse to JSON. * @function toJSON - * @memberof vtadmin.GetSchemasResponse + * @memberof vtadmin.GetSchemaMigrationsResponse * @instance * @returns {Object.} JSON object */ - GetSchemasResponse.prototype.toJSON = function toJSON() { + GetSchemaMigrationsResponse.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetSchemasResponse + * Gets the default type url for GetSchemaMigrationsResponse * @function getTypeUrl - * @memberof vtadmin.GetSchemasResponse + * @memberof vtadmin.GetSchemaMigrationsResponse * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetSchemasResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + GetSchemaMigrationsResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetSchemasResponse"; + return typeUrlPrefix + "/vtadmin.GetSchemaMigrationsResponse"; }; - return GetSchemasResponse; + return GetSchemaMigrationsResponse; })(); vtadmin.GetShardReplicationPositionsRequest = (function() { @@ -17890,119 +19966,351 @@ export const vtadmin = $root.vtadmin = (() => { /** * Decodes a GetWorkflowsResponse message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof vtadmin.GetWorkflowsResponse + * @memberof vtadmin.GetWorkflowsResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {vtadmin.GetWorkflowsResponse} GetWorkflowsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetWorkflowsResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GetWorkflowsResponse message. + * @function verify + * @memberof vtadmin.GetWorkflowsResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetWorkflowsResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.workflows_by_cluster != null && message.hasOwnProperty("workflows_by_cluster")) { + if (!$util.isObject(message.workflows_by_cluster)) + return "workflows_by_cluster: object expected"; + let key = Object.keys(message.workflows_by_cluster); + for (let i = 0; i < key.length; ++i) { + let error = $root.vtadmin.ClusterWorkflows.verify(message.workflows_by_cluster[key[i]]); + if (error) + return "workflows_by_cluster." + error; + } + } + return null; + }; + + /** + * Creates a GetWorkflowsResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof vtadmin.GetWorkflowsResponse + * @static + * @param {Object.} object Plain object + * @returns {vtadmin.GetWorkflowsResponse} GetWorkflowsResponse + */ + GetWorkflowsResponse.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.GetWorkflowsResponse) + return object; + let message = new $root.vtadmin.GetWorkflowsResponse(); + if (object.workflows_by_cluster) { + if (typeof object.workflows_by_cluster !== "object") + throw TypeError(".vtadmin.GetWorkflowsResponse.workflows_by_cluster: object expected"); + message.workflows_by_cluster = {}; + for (let keys = Object.keys(object.workflows_by_cluster), i = 0; i < keys.length; ++i) { + if (typeof object.workflows_by_cluster[keys[i]] !== "object") + throw TypeError(".vtadmin.GetWorkflowsResponse.workflows_by_cluster: object expected"); + message.workflows_by_cluster[keys[i]] = $root.vtadmin.ClusterWorkflows.fromObject(object.workflows_by_cluster[keys[i]]); + } + } + return message; + }; + + /** + * Creates a plain object from a GetWorkflowsResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof vtadmin.GetWorkflowsResponse + * @static + * @param {vtadmin.GetWorkflowsResponse} message GetWorkflowsResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetWorkflowsResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + let object = {}; + if (options.objects || options.defaults) + object.workflows_by_cluster = {}; + let keys2; + if (message.workflows_by_cluster && (keys2 = Object.keys(message.workflows_by_cluster)).length) { + object.workflows_by_cluster = {}; + for (let j = 0; j < keys2.length; ++j) + object.workflows_by_cluster[keys2[j]] = $root.vtadmin.ClusterWorkflows.toObject(message.workflows_by_cluster[keys2[j]], options); + } + return object; + }; + + /** + * Converts this GetWorkflowsResponse to JSON. + * @function toJSON + * @memberof vtadmin.GetWorkflowsResponse + * @instance + * @returns {Object.} JSON object + */ + GetWorkflowsResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for GetWorkflowsResponse + * @function getTypeUrl + * @memberof vtadmin.GetWorkflowsResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GetWorkflowsResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/vtadmin.GetWorkflowsResponse"; + }; + + return GetWorkflowsResponse; + })(); + + vtadmin.LaunchSchemaMigrationRequest = (function() { + + /** + * Properties of a LaunchSchemaMigrationRequest. + * @memberof vtadmin + * @interface ILaunchSchemaMigrationRequest + * @property {string|null} [cluster_id] LaunchSchemaMigrationRequest cluster_id + * @property {vtctldata.ILaunchSchemaMigrationRequest|null} [request] LaunchSchemaMigrationRequest request + */ + + /** + * Constructs a new LaunchSchemaMigrationRequest. + * @memberof vtadmin + * @classdesc Represents a LaunchSchemaMigrationRequest. + * @implements ILaunchSchemaMigrationRequest + * @constructor + * @param {vtadmin.ILaunchSchemaMigrationRequest=} [properties] Properties to set + */ + function LaunchSchemaMigrationRequest(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]]; + } + + /** + * LaunchSchemaMigrationRequest cluster_id. + * @member {string} cluster_id + * @memberof vtadmin.LaunchSchemaMigrationRequest + * @instance + */ + LaunchSchemaMigrationRequest.prototype.cluster_id = ""; + + /** + * LaunchSchemaMigrationRequest request. + * @member {vtctldata.ILaunchSchemaMigrationRequest|null|undefined} request + * @memberof vtadmin.LaunchSchemaMigrationRequest + * @instance + */ + LaunchSchemaMigrationRequest.prototype.request = null; + + /** + * Creates a new LaunchSchemaMigrationRequest instance using the specified properties. + * @function create + * @memberof vtadmin.LaunchSchemaMigrationRequest + * @static + * @param {vtadmin.ILaunchSchemaMigrationRequest=} [properties] Properties to set + * @returns {vtadmin.LaunchSchemaMigrationRequest} LaunchSchemaMigrationRequest instance + */ + LaunchSchemaMigrationRequest.create = function create(properties) { + return new LaunchSchemaMigrationRequest(properties); + }; + + /** + * Encodes the specified LaunchSchemaMigrationRequest message. Does not implicitly {@link vtadmin.LaunchSchemaMigrationRequest.verify|verify} messages. + * @function encode + * @memberof vtadmin.LaunchSchemaMigrationRequest + * @static + * @param {vtadmin.ILaunchSchemaMigrationRequest} message LaunchSchemaMigrationRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + LaunchSchemaMigrationRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); + if (message.request != null && Object.hasOwnProperty.call(message, "request")) + $root.vtctldata.LaunchSchemaMigrationRequest.encode(message.request, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified LaunchSchemaMigrationRequest message, length delimited. Does not implicitly {@link vtadmin.LaunchSchemaMigrationRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof vtadmin.LaunchSchemaMigrationRequest + * @static + * @param {vtadmin.ILaunchSchemaMigrationRequest} message LaunchSchemaMigrationRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + LaunchSchemaMigrationRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a LaunchSchemaMigrationRequest message from the specified reader or buffer. + * @function decode + * @memberof vtadmin.LaunchSchemaMigrationRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {vtadmin.LaunchSchemaMigrationRequest} LaunchSchemaMigrationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + LaunchSchemaMigrationRequest.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.vtadmin.LaunchSchemaMigrationRequest(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.cluster_id = reader.string(); + break; + } + case 2: { + message.request = $root.vtctldata.LaunchSchemaMigrationRequest.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a LaunchSchemaMigrationRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof vtadmin.LaunchSchemaMigrationRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {vtadmin.GetWorkflowsResponse} GetWorkflowsResponse + * @returns {vtadmin.LaunchSchemaMigrationRequest} LaunchSchemaMigrationRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetWorkflowsResponse.decodeDelimited = function decodeDelimited(reader) { + LaunchSchemaMigrationRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetWorkflowsResponse message. + * Verifies a LaunchSchemaMigrationRequest message. * @function verify - * @memberof vtadmin.GetWorkflowsResponse + * @memberof vtadmin.LaunchSchemaMigrationRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetWorkflowsResponse.verify = function verify(message) { + LaunchSchemaMigrationRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.workflows_by_cluster != null && message.hasOwnProperty("workflows_by_cluster")) { - if (!$util.isObject(message.workflows_by_cluster)) - return "workflows_by_cluster: object expected"; - let key = Object.keys(message.workflows_by_cluster); - for (let i = 0; i < key.length; ++i) { - let error = $root.vtadmin.ClusterWorkflows.verify(message.workflows_by_cluster[key[i]]); - if (error) - return "workflows_by_cluster." + error; - } + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + if (!$util.isString(message.cluster_id)) + return "cluster_id: string expected"; + if (message.request != null && message.hasOwnProperty("request")) { + let error = $root.vtctldata.LaunchSchemaMigrationRequest.verify(message.request); + if (error) + return "request." + error; } return null; }; /** - * Creates a GetWorkflowsResponse message from a plain object. Also converts values to their respective internal types. + * Creates a LaunchSchemaMigrationRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof vtadmin.GetWorkflowsResponse + * @memberof vtadmin.LaunchSchemaMigrationRequest * @static * @param {Object.} object Plain object - * @returns {vtadmin.GetWorkflowsResponse} GetWorkflowsResponse + * @returns {vtadmin.LaunchSchemaMigrationRequest} LaunchSchemaMigrationRequest */ - GetWorkflowsResponse.fromObject = function fromObject(object) { - if (object instanceof $root.vtadmin.GetWorkflowsResponse) + LaunchSchemaMigrationRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.LaunchSchemaMigrationRequest) return object; - let message = new $root.vtadmin.GetWorkflowsResponse(); - if (object.workflows_by_cluster) { - if (typeof object.workflows_by_cluster !== "object") - throw TypeError(".vtadmin.GetWorkflowsResponse.workflows_by_cluster: object expected"); - message.workflows_by_cluster = {}; - for (let keys = Object.keys(object.workflows_by_cluster), i = 0; i < keys.length; ++i) { - if (typeof object.workflows_by_cluster[keys[i]] !== "object") - throw TypeError(".vtadmin.GetWorkflowsResponse.workflows_by_cluster: object expected"); - message.workflows_by_cluster[keys[i]] = $root.vtadmin.ClusterWorkflows.fromObject(object.workflows_by_cluster[keys[i]]); - } + let message = new $root.vtadmin.LaunchSchemaMigrationRequest(); + if (object.cluster_id != null) + message.cluster_id = String(object.cluster_id); + if (object.request != null) { + if (typeof object.request !== "object") + throw TypeError(".vtadmin.LaunchSchemaMigrationRequest.request: object expected"); + message.request = $root.vtctldata.LaunchSchemaMigrationRequest.fromObject(object.request); } return message; }; /** - * Creates a plain object from a GetWorkflowsResponse message. Also converts values to other types if specified. + * Creates a plain object from a LaunchSchemaMigrationRequest message. Also converts values to other types if specified. * @function toObject - * @memberof vtadmin.GetWorkflowsResponse + * @memberof vtadmin.LaunchSchemaMigrationRequest * @static - * @param {vtadmin.GetWorkflowsResponse} message GetWorkflowsResponse + * @param {vtadmin.LaunchSchemaMigrationRequest} message LaunchSchemaMigrationRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetWorkflowsResponse.toObject = function toObject(message, options) { + LaunchSchemaMigrationRequest.toObject = function toObject(message, options) { if (!options) options = {}; let object = {}; - if (options.objects || options.defaults) - object.workflows_by_cluster = {}; - let keys2; - if (message.workflows_by_cluster && (keys2 = Object.keys(message.workflows_by_cluster)).length) { - object.workflows_by_cluster = {}; - for (let j = 0; j < keys2.length; ++j) - object.workflows_by_cluster[keys2[j]] = $root.vtadmin.ClusterWorkflows.toObject(message.workflows_by_cluster[keys2[j]], options); + if (options.defaults) { + object.cluster_id = ""; + object.request = null; } + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + object.cluster_id = message.cluster_id; + if (message.request != null && message.hasOwnProperty("request")) + object.request = $root.vtctldata.LaunchSchemaMigrationRequest.toObject(message.request, options); return object; }; /** - * Converts this GetWorkflowsResponse to JSON. + * Converts this LaunchSchemaMigrationRequest to JSON. * @function toJSON - * @memberof vtadmin.GetWorkflowsResponse + * @memberof vtadmin.LaunchSchemaMigrationRequest * @instance * @returns {Object.} JSON object */ - GetWorkflowsResponse.prototype.toJSON = function toJSON() { + LaunchSchemaMigrationRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for GetWorkflowsResponse + * Gets the default type url for LaunchSchemaMigrationRequest * @function getTypeUrl - * @memberof vtadmin.GetWorkflowsResponse + * @memberof vtadmin.LaunchSchemaMigrationRequest * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - GetWorkflowsResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + LaunchSchemaMigrationRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/vtadmin.GetWorkflowsResponse"; + return typeUrlPrefix + "/vtadmin.LaunchSchemaMigrationRequest"; }; - return GetWorkflowsResponse; + return LaunchSchemaMigrationRequest; })(); vtadmin.PingTabletRequest = (function() { @@ -23055,6 +25363,238 @@ export const vtadmin = $root.vtadmin = (() => { return RemoveKeyspaceCellResponse; })(); + vtadmin.RetrySchemaMigrationRequest = (function() { + + /** + * Properties of a RetrySchemaMigrationRequest. + * @memberof vtadmin + * @interface IRetrySchemaMigrationRequest + * @property {string|null} [cluster_id] RetrySchemaMigrationRequest cluster_id + * @property {vtctldata.IRetrySchemaMigrationRequest|null} [request] RetrySchemaMigrationRequest request + */ + + /** + * Constructs a new RetrySchemaMigrationRequest. + * @memberof vtadmin + * @classdesc Represents a RetrySchemaMigrationRequest. + * @implements IRetrySchemaMigrationRequest + * @constructor + * @param {vtadmin.IRetrySchemaMigrationRequest=} [properties] Properties to set + */ + function RetrySchemaMigrationRequest(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]]; + } + + /** + * RetrySchemaMigrationRequest cluster_id. + * @member {string} cluster_id + * @memberof vtadmin.RetrySchemaMigrationRequest + * @instance + */ + RetrySchemaMigrationRequest.prototype.cluster_id = ""; + + /** + * RetrySchemaMigrationRequest request. + * @member {vtctldata.IRetrySchemaMigrationRequest|null|undefined} request + * @memberof vtadmin.RetrySchemaMigrationRequest + * @instance + */ + RetrySchemaMigrationRequest.prototype.request = null; + + /** + * Creates a new RetrySchemaMigrationRequest instance using the specified properties. + * @function create + * @memberof vtadmin.RetrySchemaMigrationRequest + * @static + * @param {vtadmin.IRetrySchemaMigrationRequest=} [properties] Properties to set + * @returns {vtadmin.RetrySchemaMigrationRequest} RetrySchemaMigrationRequest instance + */ + RetrySchemaMigrationRequest.create = function create(properties) { + return new RetrySchemaMigrationRequest(properties); + }; + + /** + * Encodes the specified RetrySchemaMigrationRequest message. Does not implicitly {@link vtadmin.RetrySchemaMigrationRequest.verify|verify} messages. + * @function encode + * @memberof vtadmin.RetrySchemaMigrationRequest + * @static + * @param {vtadmin.IRetrySchemaMigrationRequest} message RetrySchemaMigrationRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + RetrySchemaMigrationRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.cluster_id != null && Object.hasOwnProperty.call(message, "cluster_id")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.cluster_id); + if (message.request != null && Object.hasOwnProperty.call(message, "request")) + $root.vtctldata.RetrySchemaMigrationRequest.encode(message.request, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified RetrySchemaMigrationRequest message, length delimited. Does not implicitly {@link vtadmin.RetrySchemaMigrationRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof vtadmin.RetrySchemaMigrationRequest + * @static + * @param {vtadmin.IRetrySchemaMigrationRequest} message RetrySchemaMigrationRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + RetrySchemaMigrationRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a RetrySchemaMigrationRequest message from the specified reader or buffer. + * @function decode + * @memberof vtadmin.RetrySchemaMigrationRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {vtadmin.RetrySchemaMigrationRequest} RetrySchemaMigrationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + RetrySchemaMigrationRequest.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.vtadmin.RetrySchemaMigrationRequest(); + while (reader.pos < end) { + let tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.cluster_id = reader.string(); + break; + } + case 2: { + message.request = $root.vtctldata.RetrySchemaMigrationRequest.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a RetrySchemaMigrationRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof vtadmin.RetrySchemaMigrationRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {vtadmin.RetrySchemaMigrationRequest} RetrySchemaMigrationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + RetrySchemaMigrationRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a RetrySchemaMigrationRequest message. + * @function verify + * @memberof vtadmin.RetrySchemaMigrationRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + RetrySchemaMigrationRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + if (!$util.isString(message.cluster_id)) + return "cluster_id: string expected"; + if (message.request != null && message.hasOwnProperty("request")) { + let error = $root.vtctldata.RetrySchemaMigrationRequest.verify(message.request); + if (error) + return "request." + error; + } + return null; + }; + + /** + * Creates a RetrySchemaMigrationRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof vtadmin.RetrySchemaMigrationRequest + * @static + * @param {Object.} object Plain object + * @returns {vtadmin.RetrySchemaMigrationRequest} RetrySchemaMigrationRequest + */ + RetrySchemaMigrationRequest.fromObject = function fromObject(object) { + if (object instanceof $root.vtadmin.RetrySchemaMigrationRequest) + return object; + let message = new $root.vtadmin.RetrySchemaMigrationRequest(); + if (object.cluster_id != null) + message.cluster_id = String(object.cluster_id); + if (object.request != null) { + if (typeof object.request !== "object") + throw TypeError(".vtadmin.RetrySchemaMigrationRequest.request: object expected"); + message.request = $root.vtctldata.RetrySchemaMigrationRequest.fromObject(object.request); + } + return message; + }; + + /** + * Creates a plain object from a RetrySchemaMigrationRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof vtadmin.RetrySchemaMigrationRequest + * @static + * @param {vtadmin.RetrySchemaMigrationRequest} message RetrySchemaMigrationRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + RetrySchemaMigrationRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + let object = {}; + if (options.defaults) { + object.cluster_id = ""; + object.request = null; + } + if (message.cluster_id != null && message.hasOwnProperty("cluster_id")) + object.cluster_id = message.cluster_id; + if (message.request != null && message.hasOwnProperty("request")) + object.request = $root.vtctldata.RetrySchemaMigrationRequest.toObject(message.request, options); + return object; + }; + + /** + * Converts this RetrySchemaMigrationRequest to JSON. + * @function toJSON + * @memberof vtadmin.RetrySchemaMigrationRequest + * @instance + * @returns {Object.} JSON object + */ + RetrySchemaMigrationRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for RetrySchemaMigrationRequest + * @function getTypeUrl + * @memberof vtadmin.RetrySchemaMigrationRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + RetrySchemaMigrationRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/vtadmin.RetrySchemaMigrationRequest"; + }; + + return RetrySchemaMigrationRequest; + })(); + vtadmin.RunHealthCheckRequest = (function() { /**