github.com/team-ide/go-dialect@v1.9.20/vitess/topodata/topodata.pb.go (about) 1 // 2 //Copyright 2019 The Vitess Authors. 3 // 4 //Licensed under the Apache License, Version 2.0 (the "License"); 5 //you may not use this file except in compliance with the License. 6 //You may obtain a copy of the License at 7 // 8 //http://www.apache.org/licenses/LICENSE-2.0 9 // 10 //Unless required by applicable law or agreed to in writing, software 11 //distributed under the License is distributed on an "AS IS" BASIS, 12 //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 //See the License for the specific language governing permissions and 14 //limitations under the License. 15 16 // This file contains the Vitess topology related data structures. 17 // Very few of these structures are exchanged over the wire (only 18 // TabletType and KeyRange), but they are all used by the topology 19 // service. 20 21 // Code generated by protoc-gen-go. DO NOT EDIT. 22 // versions: 23 // protoc-gen-go v1.27.1 24 // protoc v3.19.4 25 // source: topodata.proto 26 27 package topodata 28 29 import ( 30 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 31 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 32 reflect "reflect" 33 sync "sync" 34 vttime "github.com/team-ide/go-dialect/vitess/vttime" 35 ) 36 37 const ( 38 // Verify that this generated code is sufficiently up-to-date. 39 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 40 // Verify that runtime/protoimpl is sufficiently up-to-date. 41 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 42 ) 43 44 // KeyspaceType describes the type of the keyspace 45 type KeyspaceType int32 46 47 const ( 48 // NORMAL is the default value 49 KeyspaceType_NORMAL KeyspaceType = 0 50 // SNAPSHOT is when we are creating a snapshot keyspace 51 KeyspaceType_SNAPSHOT KeyspaceType = 1 52 ) 53 54 // Enum value maps for KeyspaceType. 55 var ( 56 KeyspaceType_name = map[int32]string{ 57 0: "NORMAL", 58 1: "SNAPSHOT", 59 } 60 KeyspaceType_value = map[string]int32{ 61 "NORMAL": 0, 62 "SNAPSHOT": 1, 63 } 64 ) 65 66 func (x KeyspaceType) Enum() *KeyspaceType { 67 p := new(KeyspaceType) 68 *p = x 69 return p 70 } 71 72 func (x KeyspaceType) String() string { 73 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 74 } 75 76 func (KeyspaceType) Descriptor() protoreflect.EnumDescriptor { 77 return file_topodata_proto_enumTypes[0].Descriptor() 78 } 79 80 func (KeyspaceType) Type() protoreflect.EnumType { 81 return &file_topodata_proto_enumTypes[0] 82 } 83 84 func (x KeyspaceType) Number() protoreflect.EnumNumber { 85 return protoreflect.EnumNumber(x) 86 } 87 88 // Deprecated: Use KeyspaceType.Descriptor instead. 89 func (KeyspaceType) EnumDescriptor() ([]byte, []int) { 90 return file_topodata_proto_rawDescGZIP(), []int{0} 91 } 92 93 // KeyspaceIdType describes the type of the sharding key for a 94 // range-based sharded keyspace. 95 type KeyspaceIdType int32 96 97 const ( 98 // UNSET is the default value, when range-based sharding is not used. 99 KeyspaceIdType_UNSET KeyspaceIdType = 0 100 // UINT64 is when uint64 value is used. 101 // This is represented as 'unsigned bigint' in mysql 102 KeyspaceIdType_UINT64 KeyspaceIdType = 1 103 // BYTES is when an array of bytes is used. 104 // This is represented as 'varbinary' in mysql 105 KeyspaceIdType_BYTES KeyspaceIdType = 2 106 ) 107 108 // Enum value maps for KeyspaceIdType. 109 var ( 110 KeyspaceIdType_name = map[int32]string{ 111 0: "UNSET", 112 1: "UINT64", 113 2: "BYTES", 114 } 115 KeyspaceIdType_value = map[string]int32{ 116 "UNSET": 0, 117 "UINT64": 1, 118 "BYTES": 2, 119 } 120 ) 121 122 func (x KeyspaceIdType) Enum() *KeyspaceIdType { 123 p := new(KeyspaceIdType) 124 *p = x 125 return p 126 } 127 128 func (x KeyspaceIdType) String() string { 129 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 130 } 131 132 func (KeyspaceIdType) Descriptor() protoreflect.EnumDescriptor { 133 return file_topodata_proto_enumTypes[1].Descriptor() 134 } 135 136 func (KeyspaceIdType) Type() protoreflect.EnumType { 137 return &file_topodata_proto_enumTypes[1] 138 } 139 140 func (x KeyspaceIdType) Number() protoreflect.EnumNumber { 141 return protoreflect.EnumNumber(x) 142 } 143 144 // Deprecated: Use KeyspaceIdType.Descriptor instead. 145 func (KeyspaceIdType) EnumDescriptor() ([]byte, []int) { 146 return file_topodata_proto_rawDescGZIP(), []int{1} 147 } 148 149 // TabletType represents the type of a given tablet. 150 type TabletType int32 151 152 const ( 153 // UNKNOWN is not a valid value. 154 TabletType_UNKNOWN TabletType = 0 155 // PRIMARY is the primary server for the shard. Only PRIMARY allows DMLs. 156 TabletType_PRIMARY TabletType = 1 157 // DEPRECATED 158 TabletType_MASTER TabletType = 1 159 // REPLICA replicates from primary. It is used to serve live traffic. 160 // A REPLICA can be promoted to PRIMARY. A demoted PRIMARY will go to REPLICA. 161 TabletType_REPLICA TabletType = 2 162 // RDONLY (old name) / BATCH (new name) is used to serve traffic for 163 // long-running jobs. It is a separate type from REPLICA so 164 // long-running queries don't affect web-like traffic. 165 TabletType_RDONLY TabletType = 3 166 TabletType_BATCH TabletType = 3 167 // SPARE is a type of servers that cannot serve queries, but is available 168 // in case an extra server is needed. 169 TabletType_SPARE TabletType = 4 170 // EXPERIMENTAL is like SPARE, except it can serve queries. This 171 // type can be used for usages not planned by Vitess, like online 172 // export to another storage engine. 173 TabletType_EXPERIMENTAL TabletType = 5 174 // BACKUP is the type a server goes to when taking a backup. No queries 175 // can be served in BACKUP mode. 176 TabletType_BACKUP TabletType = 6 177 // RESTORE is the type a server uses when restoring a backup, at 178 // startup time. No queries can be served in RESTORE mode. 179 TabletType_RESTORE TabletType = 7 180 // DRAINED is the type a server goes into when used by Vitess tools 181 // to perform an offline action. It is a serving type (as 182 // the tools processes may need to run queries), but it's not used 183 // to route queries from Vitess users. In this state, 184 // this tablet is dedicated to the process that uses it. 185 TabletType_DRAINED TabletType = 8 186 ) 187 188 // Enum value maps for TabletType. 189 var ( 190 TabletType_name = map[int32]string{ 191 0: "UNKNOWN", 192 1: "PRIMARY", 193 // Duplicate value: 1: "MASTER", 194 2: "REPLICA", 195 3: "RDONLY", 196 // Duplicate value: 3: "BATCH", 197 4: "SPARE", 198 5: "EXPERIMENTAL", 199 6: "BACKUP", 200 7: "RESTORE", 201 8: "DRAINED", 202 } 203 TabletType_value = map[string]int32{ 204 "UNKNOWN": 0, 205 "PRIMARY": 1, 206 "MASTER": 1, 207 "REPLICA": 2, 208 "RDONLY": 3, 209 "BATCH": 3, 210 "SPARE": 4, 211 "EXPERIMENTAL": 5, 212 "BACKUP": 6, 213 "RESTORE": 7, 214 "DRAINED": 8, 215 } 216 ) 217 218 func (x TabletType) Enum() *TabletType { 219 p := new(TabletType) 220 *p = x 221 return p 222 } 223 224 func (x TabletType) String() string { 225 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 226 } 227 228 func (TabletType) Descriptor() protoreflect.EnumDescriptor { 229 return file_topodata_proto_enumTypes[2].Descriptor() 230 } 231 232 func (TabletType) Type() protoreflect.EnumType { 233 return &file_topodata_proto_enumTypes[2] 234 } 235 236 func (x TabletType) Number() protoreflect.EnumNumber { 237 return protoreflect.EnumNumber(x) 238 } 239 240 // Deprecated: Use TabletType.Descriptor instead. 241 func (TabletType) EnumDescriptor() ([]byte, []int) { 242 return file_topodata_proto_rawDescGZIP(), []int{2} 243 } 244 245 // KeyRange describes a range of sharding keys, when range-based 246 // sharding is used. 247 type KeyRange struct { 248 state protoimpl.MessageState 249 sizeCache protoimpl.SizeCache 250 unknownFields protoimpl.UnknownFields 251 252 Start []byte `protobuf:"bytes,1,opt,name=start,proto3" json:"start,omitempty"` 253 End []byte `protobuf:"bytes,2,opt,name=end,proto3" json:"end,omitempty"` 254 } 255 256 func (x *KeyRange) Reset() { 257 *x = KeyRange{} 258 if protoimpl.UnsafeEnabled { 259 mi := &file_topodata_proto_msgTypes[0] 260 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 261 ms.StoreMessageInfo(mi) 262 } 263 } 264 265 func (x *KeyRange) String() string { 266 return protoimpl.X.MessageStringOf(x) 267 } 268 269 func (*KeyRange) ProtoMessage() {} 270 271 func (x *KeyRange) ProtoReflect() protoreflect.Message { 272 mi := &file_topodata_proto_msgTypes[0] 273 if protoimpl.UnsafeEnabled && x != nil { 274 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 275 if ms.LoadMessageInfo() == nil { 276 ms.StoreMessageInfo(mi) 277 } 278 return ms 279 } 280 return mi.MessageOf(x) 281 } 282 283 // Deprecated: Use KeyRange.ProtoReflect.Descriptor instead. 284 func (*KeyRange) Descriptor() ([]byte, []int) { 285 return file_topodata_proto_rawDescGZIP(), []int{0} 286 } 287 288 func (x *KeyRange) GetStart() []byte { 289 if x != nil { 290 return x.Start 291 } 292 return nil 293 } 294 295 func (x *KeyRange) GetEnd() []byte { 296 if x != nil { 297 return x.End 298 } 299 return nil 300 } 301 302 // TabletAlias is a globally unique tablet identifier. 303 type TabletAlias struct { 304 state protoimpl.MessageState 305 sizeCache protoimpl.SizeCache 306 unknownFields protoimpl.UnknownFields 307 308 // cell is the cell (or datacenter) the tablet is in 309 Cell string `protobuf:"bytes,1,opt,name=cell,proto3" json:"cell,omitempty"` 310 // uid is a unique id for this tablet within the shard 311 // (this is the MySQL server id as well). 312 Uid uint32 `protobuf:"varint,2,opt,name=uid,proto3" json:"uid,omitempty"` 313 } 314 315 func (x *TabletAlias) Reset() { 316 *x = TabletAlias{} 317 if protoimpl.UnsafeEnabled { 318 mi := &file_topodata_proto_msgTypes[1] 319 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 320 ms.StoreMessageInfo(mi) 321 } 322 } 323 324 func (x *TabletAlias) String() string { 325 return protoimpl.X.MessageStringOf(x) 326 } 327 328 func (*TabletAlias) ProtoMessage() {} 329 330 func (x *TabletAlias) ProtoReflect() protoreflect.Message { 331 mi := &file_topodata_proto_msgTypes[1] 332 if protoimpl.UnsafeEnabled && x != nil { 333 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 334 if ms.LoadMessageInfo() == nil { 335 ms.StoreMessageInfo(mi) 336 } 337 return ms 338 } 339 return mi.MessageOf(x) 340 } 341 342 // Deprecated: Use TabletAlias.ProtoReflect.Descriptor instead. 343 func (*TabletAlias) Descriptor() ([]byte, []int) { 344 return file_topodata_proto_rawDescGZIP(), []int{1} 345 } 346 347 func (x *TabletAlias) GetCell() string { 348 if x != nil { 349 return x.Cell 350 } 351 return "" 352 } 353 354 func (x *TabletAlias) GetUid() uint32 { 355 if x != nil { 356 return x.Uid 357 } 358 return 0 359 } 360 361 // Tablet represents information about a running instance of vttablet. 362 type Tablet struct { 363 state protoimpl.MessageState 364 sizeCache protoimpl.SizeCache 365 unknownFields protoimpl.UnknownFields 366 367 // alias is the unique name of the tablet. 368 Alias *TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"` 369 // Fully qualified domain name of the host. 370 Hostname string `protobuf:"bytes,2,opt,name=hostname,proto3" json:"hostname,omitempty"` 371 // Map of named ports. Normally this should include vt and grpc. 372 // Going forward, the mysql port will be stored in mysql_port 373 // instead of here. 374 // For accessing mysql port, use topoproto.MysqlPort to fetch, and 375 // topoproto.SetMysqlPort to set. These wrappers will ensure 376 // legacy behavior is supported. 377 PortMap map[string]int32 `protobuf:"bytes,4,rep,name=port_map,json=portMap,proto3" json:"port_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` 378 // Keyspace name. 379 Keyspace string `protobuf:"bytes,5,opt,name=keyspace,proto3" json:"keyspace,omitempty"` 380 // Shard name. If range based sharding is used, it should match 381 // key_range. 382 Shard string `protobuf:"bytes,6,opt,name=shard,proto3" json:"shard,omitempty"` 383 // If range based sharding is used, range for the tablet's shard. 384 KeyRange *KeyRange `protobuf:"bytes,7,opt,name=key_range,json=keyRange,proto3" json:"key_range,omitempty"` 385 // type is the current type of the tablet. 386 Type TabletType `protobuf:"varint,8,opt,name=type,proto3,enum=topodata.TabletType" json:"type,omitempty"` 387 // It this is set, it is used as the database name instead of the 388 // normal "vt_" + keyspace. 389 DbNameOverride string `protobuf:"bytes,9,opt,name=db_name_override,json=dbNameOverride,proto3" json:"db_name_override,omitempty"` 390 // tablet tags 391 Tags map[string]string `protobuf:"bytes,10,rep,name=tags,proto3" json:"tags,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 392 // MySQL hostname. 393 MysqlHostname string `protobuf:"bytes,12,opt,name=mysql_hostname,json=mysqlHostname,proto3" json:"mysql_hostname,omitempty"` 394 // MySQL port. Use topoproto.MysqlPort and topoproto.SetMysqlPort 395 // to access this variable. The functions provide support 396 // for legacy behavior. 397 MysqlPort int32 `protobuf:"varint,13,opt,name=mysql_port,json=mysqlPort,proto3" json:"mysql_port,omitempty"` 398 // primary_term_start_time is the time (in UTC) at which the current term of 399 // the current tablet began as primary. If this tablet is not currently the 400 // primary, this value is ignored. 401 // 402 // A new primary term begins any time an authoritative decision is communicated 403 // about which tablet should be the primary, such as via Vitess 404 // replication-management commands like PlannedReparentShard, 405 // EmergencyReparentShard, and TabletExternallyReparented. 406 // 407 PrimaryTermStartTime *vttime.Time `protobuf:"bytes,14,opt,name=primary_term_start_time,json=primaryTermStartTime,proto3" json:"primary_term_start_time,omitempty"` 408 // db_server_version represents the database version used by the tablet. 409 DbServerVersion string `protobuf:"bytes,15,opt,name=db_server_version,json=dbServerVersion,proto3" json:"db_server_version,omitempty"` 410 // default_conn_collation is the default connection collation used by this tablet. 411 DefaultConnCollation uint32 `protobuf:"varint,16,opt,name=default_conn_collation,json=defaultConnCollation,proto3" json:"default_conn_collation,omitempty"` 412 } 413 414 func (x *Tablet) Reset() { 415 *x = Tablet{} 416 if protoimpl.UnsafeEnabled { 417 mi := &file_topodata_proto_msgTypes[2] 418 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 419 ms.StoreMessageInfo(mi) 420 } 421 } 422 423 func (x *Tablet) String() string { 424 return protoimpl.X.MessageStringOf(x) 425 } 426 427 func (*Tablet) ProtoMessage() {} 428 429 func (x *Tablet) ProtoReflect() protoreflect.Message { 430 mi := &file_topodata_proto_msgTypes[2] 431 if protoimpl.UnsafeEnabled && x != nil { 432 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 433 if ms.LoadMessageInfo() == nil { 434 ms.StoreMessageInfo(mi) 435 } 436 return ms 437 } 438 return mi.MessageOf(x) 439 } 440 441 // Deprecated: Use Tablet.ProtoReflect.Descriptor instead. 442 func (*Tablet) Descriptor() ([]byte, []int) { 443 return file_topodata_proto_rawDescGZIP(), []int{2} 444 } 445 446 func (x *Tablet) GetAlias() *TabletAlias { 447 if x != nil { 448 return x.Alias 449 } 450 return nil 451 } 452 453 func (x *Tablet) GetHostname() string { 454 if x != nil { 455 return x.Hostname 456 } 457 return "" 458 } 459 460 func (x *Tablet) GetPortMap() map[string]int32 { 461 if x != nil { 462 return x.PortMap 463 } 464 return nil 465 } 466 467 func (x *Tablet) GetKeyspace() string { 468 if x != nil { 469 return x.Keyspace 470 } 471 return "" 472 } 473 474 func (x *Tablet) GetShard() string { 475 if x != nil { 476 return x.Shard 477 } 478 return "" 479 } 480 481 func (x *Tablet) GetKeyRange() *KeyRange { 482 if x != nil { 483 return x.KeyRange 484 } 485 return nil 486 } 487 488 func (x *Tablet) GetType() TabletType { 489 if x != nil { 490 return x.Type 491 } 492 return TabletType_UNKNOWN 493 } 494 495 func (x *Tablet) GetDbNameOverride() string { 496 if x != nil { 497 return x.DbNameOverride 498 } 499 return "" 500 } 501 502 func (x *Tablet) GetTags() map[string]string { 503 if x != nil { 504 return x.Tags 505 } 506 return nil 507 } 508 509 func (x *Tablet) GetMysqlHostname() string { 510 if x != nil { 511 return x.MysqlHostname 512 } 513 return "" 514 } 515 516 func (x *Tablet) GetMysqlPort() int32 { 517 if x != nil { 518 return x.MysqlPort 519 } 520 return 0 521 } 522 523 func (x *Tablet) GetPrimaryTermStartTime() *vttime.Time { 524 if x != nil { 525 return x.PrimaryTermStartTime 526 } 527 return nil 528 } 529 530 func (x *Tablet) GetDbServerVersion() string { 531 if x != nil { 532 return x.DbServerVersion 533 } 534 return "" 535 } 536 537 func (x *Tablet) GetDefaultConnCollation() uint32 { 538 if x != nil { 539 return x.DefaultConnCollation 540 } 541 return 0 542 } 543 544 // A Shard contains data about a subset of the data whithin a keyspace. 545 type Shard struct { 546 state protoimpl.MessageState 547 sizeCache protoimpl.SizeCache 548 unknownFields protoimpl.UnknownFields 549 550 // primary_alias is the tablet alias of the primary for the shard. 551 // If it is unset, then there is no primary in this shard yet. 552 // No lock is necessary to update this field, when for instance 553 // TabletExternallyReparented updates this. However, we lock the 554 // shard for reparenting operations (InitShardPrimary, 555 // PlannedReparentShard,EmergencyReparentShard), to guarantee 556 // exclusive operation. 557 PrimaryAlias *TabletAlias `protobuf:"bytes,1,opt,name=primary_alias,json=primaryAlias,proto3" json:"primary_alias,omitempty"` 558 // primary_term_start_time is the time (in UTC) at which the current term of 559 // the primary specified in primary_alias began. 560 // 561 // A new primary term begins any time an authoritative decision is communicated 562 // about which tablet should be the primary, such as via Vitess 563 // replication-management commands like PlannedReparentShard, 564 // EmergencyReparentShard, and TabletExternallyReparented. 565 // 566 // The primary_alias should only ever be changed if the new primary's term began 567 // at a later time than this. Note that a new term can start for the tablet 568 // that is already the primary. In that case, the primary_term_start_time would 569 // be increased without changing the primary_alias. 570 PrimaryTermStartTime *vttime.Time `protobuf:"bytes,8,opt,name=primary_term_start_time,json=primaryTermStartTime,proto3" json:"primary_term_start_time,omitempty"` 571 // key_range is the KeyRange for this shard. It can be unset if: 572 // - we are not using range-based sharding in this shard. 573 // - the shard covers the entire keyrange. 574 // This must match the shard name based on our other conventions, but 575 // helpful to have it decomposed here. 576 // Once set at creation time, it is never changed. 577 KeyRange *KeyRange `protobuf:"bytes,2,opt,name=key_range,json=keyRange,proto3" json:"key_range,omitempty"` 578 // SourceShards is the list of shards we're replicating from, 579 // using filtered replication. 580 // The keyspace lock is always taken when changing this. 581 SourceShards []*Shard_SourceShard `protobuf:"bytes,4,rep,name=source_shards,json=sourceShards,proto3" json:"source_shards,omitempty"` 582 // tablet_controls has at most one entry per TabletType. 583 // The keyspace lock is always taken when changing this. 584 TabletControls []*Shard_TabletControl `protobuf:"bytes,6,rep,name=tablet_controls,json=tabletControls,proto3" json:"tablet_controls,omitempty"` 585 // is_primary_serving sets whether this shard primary is serving traffic or not. 586 // The keyspace lock is always taken when changing this. 587 IsPrimaryServing bool `protobuf:"varint,7,opt,name=is_primary_serving,json=isPrimaryServing,proto3" json:"is_primary_serving,omitempty"` 588 } 589 590 func (x *Shard) Reset() { 591 *x = Shard{} 592 if protoimpl.UnsafeEnabled { 593 mi := &file_topodata_proto_msgTypes[3] 594 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 595 ms.StoreMessageInfo(mi) 596 } 597 } 598 599 func (x *Shard) String() string { 600 return protoimpl.X.MessageStringOf(x) 601 } 602 603 func (*Shard) ProtoMessage() {} 604 605 func (x *Shard) ProtoReflect() protoreflect.Message { 606 mi := &file_topodata_proto_msgTypes[3] 607 if protoimpl.UnsafeEnabled && x != nil { 608 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 609 if ms.LoadMessageInfo() == nil { 610 ms.StoreMessageInfo(mi) 611 } 612 return ms 613 } 614 return mi.MessageOf(x) 615 } 616 617 // Deprecated: Use Shard.ProtoReflect.Descriptor instead. 618 func (*Shard) Descriptor() ([]byte, []int) { 619 return file_topodata_proto_rawDescGZIP(), []int{3} 620 } 621 622 func (x *Shard) GetPrimaryAlias() *TabletAlias { 623 if x != nil { 624 return x.PrimaryAlias 625 } 626 return nil 627 } 628 629 func (x *Shard) GetPrimaryTermStartTime() *vttime.Time { 630 if x != nil { 631 return x.PrimaryTermStartTime 632 } 633 return nil 634 } 635 636 func (x *Shard) GetKeyRange() *KeyRange { 637 if x != nil { 638 return x.KeyRange 639 } 640 return nil 641 } 642 643 func (x *Shard) GetSourceShards() []*Shard_SourceShard { 644 if x != nil { 645 return x.SourceShards 646 } 647 return nil 648 } 649 650 func (x *Shard) GetTabletControls() []*Shard_TabletControl { 651 if x != nil { 652 return x.TabletControls 653 } 654 return nil 655 } 656 657 func (x *Shard) GetIsPrimaryServing() bool { 658 if x != nil { 659 return x.IsPrimaryServing 660 } 661 return false 662 } 663 664 // A Keyspace contains data about a keyspace. 665 type Keyspace struct { 666 state protoimpl.MessageState 667 sizeCache protoimpl.SizeCache 668 unknownFields protoimpl.UnknownFields 669 670 // name of the column used for sharding 671 // empty if the keyspace is not sharded 672 ShardingColumnName string `protobuf:"bytes,1,opt,name=sharding_column_name,json=shardingColumnName,proto3" json:"sharding_column_name,omitempty"` 673 // type of the column used for sharding 674 // UNSET if the keyspace is not sharded 675 ShardingColumnType KeyspaceIdType `protobuf:"varint,2,opt,name=sharding_column_type,json=shardingColumnType,proto3,enum=topodata.KeyspaceIdType" json:"sharding_column_type,omitempty"` 676 // ServedFrom will redirect the appropriate traffic to 677 // another keyspace. 678 ServedFroms []*Keyspace_ServedFrom `protobuf:"bytes,4,rep,name=served_froms,json=servedFroms,proto3" json:"served_froms,omitempty"` 679 // keyspace_type will determine how this keyspace is treated by 680 // vtgate / vschema. Normal keyspaces are routable by 681 // any query. Snapshot keyspaces are only accessible 682 // by explicit addresssing or by calling "use keyspace" first 683 KeyspaceType KeyspaceType `protobuf:"varint,5,opt,name=keyspace_type,json=keyspaceType,proto3,enum=topodata.KeyspaceType" json:"keyspace_type,omitempty"` 684 // base_keyspace is the base keyspace from which a snapshot 685 // keyspace is created. empty for normal keyspaces 686 BaseKeyspace string `protobuf:"bytes,6,opt,name=base_keyspace,json=baseKeyspace,proto3" json:"base_keyspace,omitempty"` 687 // snapshot_time (in UTC) is a property of snapshot 688 // keyspaces which tells us what point in time 689 // the snapshot is of 690 SnapshotTime *vttime.Time `protobuf:"bytes,7,opt,name=snapshot_time,json=snapshotTime,proto3" json:"snapshot_time,omitempty"` 691 } 692 693 func (x *Keyspace) Reset() { 694 *x = Keyspace{} 695 if protoimpl.UnsafeEnabled { 696 mi := &file_topodata_proto_msgTypes[4] 697 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 698 ms.StoreMessageInfo(mi) 699 } 700 } 701 702 func (x *Keyspace) String() string { 703 return protoimpl.X.MessageStringOf(x) 704 } 705 706 func (*Keyspace) ProtoMessage() {} 707 708 func (x *Keyspace) ProtoReflect() protoreflect.Message { 709 mi := &file_topodata_proto_msgTypes[4] 710 if protoimpl.UnsafeEnabled && x != nil { 711 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 712 if ms.LoadMessageInfo() == nil { 713 ms.StoreMessageInfo(mi) 714 } 715 return ms 716 } 717 return mi.MessageOf(x) 718 } 719 720 // Deprecated: Use Keyspace.ProtoReflect.Descriptor instead. 721 func (*Keyspace) Descriptor() ([]byte, []int) { 722 return file_topodata_proto_rawDescGZIP(), []int{4} 723 } 724 725 func (x *Keyspace) GetShardingColumnName() string { 726 if x != nil { 727 return x.ShardingColumnName 728 } 729 return "" 730 } 731 732 func (x *Keyspace) GetShardingColumnType() KeyspaceIdType { 733 if x != nil { 734 return x.ShardingColumnType 735 } 736 return KeyspaceIdType_UNSET 737 } 738 739 func (x *Keyspace) GetServedFroms() []*Keyspace_ServedFrom { 740 if x != nil { 741 return x.ServedFroms 742 } 743 return nil 744 } 745 746 func (x *Keyspace) GetKeyspaceType() KeyspaceType { 747 if x != nil { 748 return x.KeyspaceType 749 } 750 return KeyspaceType_NORMAL 751 } 752 753 func (x *Keyspace) GetBaseKeyspace() string { 754 if x != nil { 755 return x.BaseKeyspace 756 } 757 return "" 758 } 759 760 func (x *Keyspace) GetSnapshotTime() *vttime.Time { 761 if x != nil { 762 return x.SnapshotTime 763 } 764 return nil 765 } 766 767 // ShardReplication describes the MySQL replication relationships 768 // whithin a cell. 769 type ShardReplication struct { 770 state protoimpl.MessageState 771 sizeCache protoimpl.SizeCache 772 unknownFields protoimpl.UnknownFields 773 774 // Note there can be only one Node in this array 775 // for a given tablet. 776 Nodes []*ShardReplication_Node `protobuf:"bytes,1,rep,name=nodes,proto3" json:"nodes,omitempty"` 777 } 778 779 func (x *ShardReplication) Reset() { 780 *x = ShardReplication{} 781 if protoimpl.UnsafeEnabled { 782 mi := &file_topodata_proto_msgTypes[5] 783 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 784 ms.StoreMessageInfo(mi) 785 } 786 } 787 788 func (x *ShardReplication) String() string { 789 return protoimpl.X.MessageStringOf(x) 790 } 791 792 func (*ShardReplication) ProtoMessage() {} 793 794 func (x *ShardReplication) ProtoReflect() protoreflect.Message { 795 mi := &file_topodata_proto_msgTypes[5] 796 if protoimpl.UnsafeEnabled && x != nil { 797 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 798 if ms.LoadMessageInfo() == nil { 799 ms.StoreMessageInfo(mi) 800 } 801 return ms 802 } 803 return mi.MessageOf(x) 804 } 805 806 // Deprecated: Use ShardReplication.ProtoReflect.Descriptor instead. 807 func (*ShardReplication) Descriptor() ([]byte, []int) { 808 return file_topodata_proto_rawDescGZIP(), []int{5} 809 } 810 811 func (x *ShardReplication) GetNodes() []*ShardReplication_Node { 812 if x != nil { 813 return x.Nodes 814 } 815 return nil 816 } 817 818 // ShardReference is used as a pointer from a SrvKeyspace to a Shard 819 type ShardReference struct { 820 state protoimpl.MessageState 821 sizeCache protoimpl.SizeCache 822 unknownFields protoimpl.UnknownFields 823 824 // Copied from Shard. 825 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 826 KeyRange *KeyRange `protobuf:"bytes,2,opt,name=key_range,json=keyRange,proto3" json:"key_range,omitempty"` // Disable query serving in this shard 827 } 828 829 func (x *ShardReference) Reset() { 830 *x = ShardReference{} 831 if protoimpl.UnsafeEnabled { 832 mi := &file_topodata_proto_msgTypes[6] 833 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 834 ms.StoreMessageInfo(mi) 835 } 836 } 837 838 func (x *ShardReference) String() string { 839 return protoimpl.X.MessageStringOf(x) 840 } 841 842 func (*ShardReference) ProtoMessage() {} 843 844 func (x *ShardReference) ProtoReflect() protoreflect.Message { 845 mi := &file_topodata_proto_msgTypes[6] 846 if protoimpl.UnsafeEnabled && x != nil { 847 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 848 if ms.LoadMessageInfo() == nil { 849 ms.StoreMessageInfo(mi) 850 } 851 return ms 852 } 853 return mi.MessageOf(x) 854 } 855 856 // Deprecated: Use ShardReference.ProtoReflect.Descriptor instead. 857 func (*ShardReference) Descriptor() ([]byte, []int) { 858 return file_topodata_proto_rawDescGZIP(), []int{6} 859 } 860 861 func (x *ShardReference) GetName() string { 862 if x != nil { 863 return x.Name 864 } 865 return "" 866 } 867 868 func (x *ShardReference) GetKeyRange() *KeyRange { 869 if x != nil { 870 return x.KeyRange 871 } 872 return nil 873 } 874 875 // ShardTabletControl is used as a pointer from a SrvKeyspace to a Shard 876 type ShardTabletControl struct { 877 state protoimpl.MessageState 878 sizeCache protoimpl.SizeCache 879 unknownFields protoimpl.UnknownFields 880 881 // Copied from Shard. 882 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 883 KeyRange *KeyRange `protobuf:"bytes,2,opt,name=key_range,json=keyRange,proto3" json:"key_range,omitempty"` 884 // Disable query serving in this shard 885 QueryServiceDisabled bool `protobuf:"varint,3,opt,name=query_service_disabled,json=queryServiceDisabled,proto3" json:"query_service_disabled,omitempty"` 886 } 887 888 func (x *ShardTabletControl) Reset() { 889 *x = ShardTabletControl{} 890 if protoimpl.UnsafeEnabled { 891 mi := &file_topodata_proto_msgTypes[7] 892 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 893 ms.StoreMessageInfo(mi) 894 } 895 } 896 897 func (x *ShardTabletControl) String() string { 898 return protoimpl.X.MessageStringOf(x) 899 } 900 901 func (*ShardTabletControl) ProtoMessage() {} 902 903 func (x *ShardTabletControl) ProtoReflect() protoreflect.Message { 904 mi := &file_topodata_proto_msgTypes[7] 905 if protoimpl.UnsafeEnabled && x != nil { 906 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 907 if ms.LoadMessageInfo() == nil { 908 ms.StoreMessageInfo(mi) 909 } 910 return ms 911 } 912 return mi.MessageOf(x) 913 } 914 915 // Deprecated: Use ShardTabletControl.ProtoReflect.Descriptor instead. 916 func (*ShardTabletControl) Descriptor() ([]byte, []int) { 917 return file_topodata_proto_rawDescGZIP(), []int{7} 918 } 919 920 func (x *ShardTabletControl) GetName() string { 921 if x != nil { 922 return x.Name 923 } 924 return "" 925 } 926 927 func (x *ShardTabletControl) GetKeyRange() *KeyRange { 928 if x != nil { 929 return x.KeyRange 930 } 931 return nil 932 } 933 934 func (x *ShardTabletControl) GetQueryServiceDisabled() bool { 935 if x != nil { 936 return x.QueryServiceDisabled 937 } 938 return false 939 } 940 941 // SrvKeyspace is a rollup node for the keyspace itself. 942 type SrvKeyspace struct { 943 state protoimpl.MessageState 944 sizeCache protoimpl.SizeCache 945 unknownFields protoimpl.UnknownFields 946 947 // The partitions this keyspace is serving, per tablet type. 948 Partitions []*SrvKeyspace_KeyspacePartition `protobuf:"bytes,1,rep,name=partitions,proto3" json:"partitions,omitempty"` 949 // copied from Keyspace 950 ShardingColumnName string `protobuf:"bytes,2,opt,name=sharding_column_name,json=shardingColumnName,proto3" json:"sharding_column_name,omitempty"` 951 ShardingColumnType KeyspaceIdType `protobuf:"varint,3,opt,name=sharding_column_type,json=shardingColumnType,proto3,enum=topodata.KeyspaceIdType" json:"sharding_column_type,omitempty"` 952 ServedFrom []*SrvKeyspace_ServedFrom `protobuf:"bytes,4,rep,name=served_from,json=servedFrom,proto3" json:"served_from,omitempty"` 953 } 954 955 func (x *SrvKeyspace) Reset() { 956 *x = SrvKeyspace{} 957 if protoimpl.UnsafeEnabled { 958 mi := &file_topodata_proto_msgTypes[8] 959 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 960 ms.StoreMessageInfo(mi) 961 } 962 } 963 964 func (x *SrvKeyspace) String() string { 965 return protoimpl.X.MessageStringOf(x) 966 } 967 968 func (*SrvKeyspace) ProtoMessage() {} 969 970 func (x *SrvKeyspace) ProtoReflect() protoreflect.Message { 971 mi := &file_topodata_proto_msgTypes[8] 972 if protoimpl.UnsafeEnabled && x != nil { 973 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 974 if ms.LoadMessageInfo() == nil { 975 ms.StoreMessageInfo(mi) 976 } 977 return ms 978 } 979 return mi.MessageOf(x) 980 } 981 982 // Deprecated: Use SrvKeyspace.ProtoReflect.Descriptor instead. 983 func (*SrvKeyspace) Descriptor() ([]byte, []int) { 984 return file_topodata_proto_rawDescGZIP(), []int{8} 985 } 986 987 func (x *SrvKeyspace) GetPartitions() []*SrvKeyspace_KeyspacePartition { 988 if x != nil { 989 return x.Partitions 990 } 991 return nil 992 } 993 994 func (x *SrvKeyspace) GetShardingColumnName() string { 995 if x != nil { 996 return x.ShardingColumnName 997 } 998 return "" 999 } 1000 1001 func (x *SrvKeyspace) GetShardingColumnType() KeyspaceIdType { 1002 if x != nil { 1003 return x.ShardingColumnType 1004 } 1005 return KeyspaceIdType_UNSET 1006 } 1007 1008 func (x *SrvKeyspace) GetServedFrom() []*SrvKeyspace_ServedFrom { 1009 if x != nil { 1010 return x.ServedFrom 1011 } 1012 return nil 1013 } 1014 1015 // CellInfo contains information about a cell. CellInfo objects are 1016 // stored in the global topology server, and describe how to reach 1017 // local topology servers. 1018 type CellInfo struct { 1019 state protoimpl.MessageState 1020 sizeCache protoimpl.SizeCache 1021 unknownFields protoimpl.UnknownFields 1022 1023 // ServerAddress contains the address of the server for the cell. 1024 // The syntax of this field is topology implementation specific. 1025 // For instance, for Zookeeper, it is a comma-separated list of 1026 // server addresses. 1027 ServerAddress string `protobuf:"bytes,1,opt,name=server_address,json=serverAddress,proto3" json:"server_address,omitempty"` 1028 // Root is the path to store data in. It is only used when talking 1029 // to server_address. 1030 Root string `protobuf:"bytes,2,opt,name=root,proto3" json:"root,omitempty"` 1031 } 1032 1033 func (x *CellInfo) Reset() { 1034 *x = CellInfo{} 1035 if protoimpl.UnsafeEnabled { 1036 mi := &file_topodata_proto_msgTypes[9] 1037 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1038 ms.StoreMessageInfo(mi) 1039 } 1040 } 1041 1042 func (x *CellInfo) String() string { 1043 return protoimpl.X.MessageStringOf(x) 1044 } 1045 1046 func (*CellInfo) ProtoMessage() {} 1047 1048 func (x *CellInfo) ProtoReflect() protoreflect.Message { 1049 mi := &file_topodata_proto_msgTypes[9] 1050 if protoimpl.UnsafeEnabled && x != nil { 1051 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1052 if ms.LoadMessageInfo() == nil { 1053 ms.StoreMessageInfo(mi) 1054 } 1055 return ms 1056 } 1057 return mi.MessageOf(x) 1058 } 1059 1060 // Deprecated: Use CellInfo.ProtoReflect.Descriptor instead. 1061 func (*CellInfo) Descriptor() ([]byte, []int) { 1062 return file_topodata_proto_rawDescGZIP(), []int{9} 1063 } 1064 1065 func (x *CellInfo) GetServerAddress() string { 1066 if x != nil { 1067 return x.ServerAddress 1068 } 1069 return "" 1070 } 1071 1072 func (x *CellInfo) GetRoot() string { 1073 if x != nil { 1074 return x.Root 1075 } 1076 return "" 1077 } 1078 1079 // CellsAlias 1080 type CellsAlias struct { 1081 state protoimpl.MessageState 1082 sizeCache protoimpl.SizeCache 1083 unknownFields protoimpl.UnknownFields 1084 1085 // Cells that map to this alias 1086 Cells []string `protobuf:"bytes,2,rep,name=cells,proto3" json:"cells,omitempty"` 1087 } 1088 1089 func (x *CellsAlias) Reset() { 1090 *x = CellsAlias{} 1091 if protoimpl.UnsafeEnabled { 1092 mi := &file_topodata_proto_msgTypes[10] 1093 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1094 ms.StoreMessageInfo(mi) 1095 } 1096 } 1097 1098 func (x *CellsAlias) String() string { 1099 return protoimpl.X.MessageStringOf(x) 1100 } 1101 1102 func (*CellsAlias) ProtoMessage() {} 1103 1104 func (x *CellsAlias) ProtoReflect() protoreflect.Message { 1105 mi := &file_topodata_proto_msgTypes[10] 1106 if protoimpl.UnsafeEnabled && x != nil { 1107 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1108 if ms.LoadMessageInfo() == nil { 1109 ms.StoreMessageInfo(mi) 1110 } 1111 return ms 1112 } 1113 return mi.MessageOf(x) 1114 } 1115 1116 // Deprecated: Use CellsAlias.ProtoReflect.Descriptor instead. 1117 func (*CellsAlias) Descriptor() ([]byte, []int) { 1118 return file_topodata_proto_rawDescGZIP(), []int{10} 1119 } 1120 1121 func (x *CellsAlias) GetCells() []string { 1122 if x != nil { 1123 return x.Cells 1124 } 1125 return nil 1126 } 1127 1128 type TopoConfig struct { 1129 state protoimpl.MessageState 1130 sizeCache protoimpl.SizeCache 1131 unknownFields protoimpl.UnknownFields 1132 1133 TopoType string `protobuf:"bytes,1,opt,name=topo_type,json=topoType,proto3" json:"topo_type,omitempty"` 1134 Server string `protobuf:"bytes,2,opt,name=server,proto3" json:"server,omitempty"` 1135 Root string `protobuf:"bytes,3,opt,name=root,proto3" json:"root,omitempty"` 1136 } 1137 1138 func (x *TopoConfig) Reset() { 1139 *x = TopoConfig{} 1140 if protoimpl.UnsafeEnabled { 1141 mi := &file_topodata_proto_msgTypes[11] 1142 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1143 ms.StoreMessageInfo(mi) 1144 } 1145 } 1146 1147 func (x *TopoConfig) String() string { 1148 return protoimpl.X.MessageStringOf(x) 1149 } 1150 1151 func (*TopoConfig) ProtoMessage() {} 1152 1153 func (x *TopoConfig) ProtoReflect() protoreflect.Message { 1154 mi := &file_topodata_proto_msgTypes[11] 1155 if protoimpl.UnsafeEnabled && x != nil { 1156 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1157 if ms.LoadMessageInfo() == nil { 1158 ms.StoreMessageInfo(mi) 1159 } 1160 return ms 1161 } 1162 return mi.MessageOf(x) 1163 } 1164 1165 // Deprecated: Use TopoConfig.ProtoReflect.Descriptor instead. 1166 func (*TopoConfig) Descriptor() ([]byte, []int) { 1167 return file_topodata_proto_rawDescGZIP(), []int{11} 1168 } 1169 1170 func (x *TopoConfig) GetTopoType() string { 1171 if x != nil { 1172 return x.TopoType 1173 } 1174 return "" 1175 } 1176 1177 func (x *TopoConfig) GetServer() string { 1178 if x != nil { 1179 return x.Server 1180 } 1181 return "" 1182 } 1183 1184 func (x *TopoConfig) GetRoot() string { 1185 if x != nil { 1186 return x.Root 1187 } 1188 return "" 1189 } 1190 1191 type ExternalVitessCluster struct { 1192 state protoimpl.MessageState 1193 sizeCache protoimpl.SizeCache 1194 unknownFields protoimpl.UnknownFields 1195 1196 TopoConfig *TopoConfig `protobuf:"bytes,1,opt,name=topo_config,json=topoConfig,proto3" json:"topo_config,omitempty"` 1197 } 1198 1199 func (x *ExternalVitessCluster) Reset() { 1200 *x = ExternalVitessCluster{} 1201 if protoimpl.UnsafeEnabled { 1202 mi := &file_topodata_proto_msgTypes[12] 1203 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1204 ms.StoreMessageInfo(mi) 1205 } 1206 } 1207 1208 func (x *ExternalVitessCluster) String() string { 1209 return protoimpl.X.MessageStringOf(x) 1210 } 1211 1212 func (*ExternalVitessCluster) ProtoMessage() {} 1213 1214 func (x *ExternalVitessCluster) ProtoReflect() protoreflect.Message { 1215 mi := &file_topodata_proto_msgTypes[12] 1216 if protoimpl.UnsafeEnabled && x != nil { 1217 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1218 if ms.LoadMessageInfo() == nil { 1219 ms.StoreMessageInfo(mi) 1220 } 1221 return ms 1222 } 1223 return mi.MessageOf(x) 1224 } 1225 1226 // Deprecated: Use ExternalVitessCluster.ProtoReflect.Descriptor instead. 1227 func (*ExternalVitessCluster) Descriptor() ([]byte, []int) { 1228 return file_topodata_proto_rawDescGZIP(), []int{12} 1229 } 1230 1231 func (x *ExternalVitessCluster) GetTopoConfig() *TopoConfig { 1232 if x != nil { 1233 return x.TopoConfig 1234 } 1235 return nil 1236 } 1237 1238 // ExternalClusters 1239 type ExternalClusters struct { 1240 state protoimpl.MessageState 1241 sizeCache protoimpl.SizeCache 1242 unknownFields protoimpl.UnknownFields 1243 1244 VitessCluster []*ExternalVitessCluster `protobuf:"bytes,1,rep,name=vitess_cluster,json=vitessCluster,proto3" json:"vitess_cluster,omitempty"` 1245 } 1246 1247 func (x *ExternalClusters) Reset() { 1248 *x = ExternalClusters{} 1249 if protoimpl.UnsafeEnabled { 1250 mi := &file_topodata_proto_msgTypes[13] 1251 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1252 ms.StoreMessageInfo(mi) 1253 } 1254 } 1255 1256 func (x *ExternalClusters) String() string { 1257 return protoimpl.X.MessageStringOf(x) 1258 } 1259 1260 func (*ExternalClusters) ProtoMessage() {} 1261 1262 func (x *ExternalClusters) ProtoReflect() protoreflect.Message { 1263 mi := &file_topodata_proto_msgTypes[13] 1264 if protoimpl.UnsafeEnabled && x != nil { 1265 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1266 if ms.LoadMessageInfo() == nil { 1267 ms.StoreMessageInfo(mi) 1268 } 1269 return ms 1270 } 1271 return mi.MessageOf(x) 1272 } 1273 1274 // Deprecated: Use ExternalClusters.ProtoReflect.Descriptor instead. 1275 func (*ExternalClusters) Descriptor() ([]byte, []int) { 1276 return file_topodata_proto_rawDescGZIP(), []int{13} 1277 } 1278 1279 func (x *ExternalClusters) GetVitessCluster() []*ExternalVitessCluster { 1280 if x != nil { 1281 return x.VitessCluster 1282 } 1283 return nil 1284 } 1285 1286 // SourceShard represents a data source for filtered replication 1287 // across shards. When this is used in a destination shard, the primary 1288 // of that shard will run filtered replication. 1289 type Shard_SourceShard struct { 1290 state protoimpl.MessageState 1291 sizeCache protoimpl.SizeCache 1292 unknownFields protoimpl.UnknownFields 1293 1294 // Uid is the unique ID for this SourceShard object. 1295 Uid uint32 `protobuf:"varint,1,opt,name=uid,proto3" json:"uid,omitempty"` 1296 // the source keyspace 1297 Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` 1298 // the source shard 1299 Shard string `protobuf:"bytes,3,opt,name=shard,proto3" json:"shard,omitempty"` 1300 // the source shard keyrange 1301 KeyRange *KeyRange `protobuf:"bytes,4,opt,name=key_range,json=keyRange,proto3" json:"key_range,omitempty"` 1302 // the source table list to replicate 1303 Tables []string `protobuf:"bytes,5,rep,name=tables,proto3" json:"tables,omitempty"` 1304 } 1305 1306 func (x *Shard_SourceShard) Reset() { 1307 *x = Shard_SourceShard{} 1308 if protoimpl.UnsafeEnabled { 1309 mi := &file_topodata_proto_msgTypes[16] 1310 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1311 ms.StoreMessageInfo(mi) 1312 } 1313 } 1314 1315 func (x *Shard_SourceShard) String() string { 1316 return protoimpl.X.MessageStringOf(x) 1317 } 1318 1319 func (*Shard_SourceShard) ProtoMessage() {} 1320 1321 func (x *Shard_SourceShard) ProtoReflect() protoreflect.Message { 1322 mi := &file_topodata_proto_msgTypes[16] 1323 if protoimpl.UnsafeEnabled && x != nil { 1324 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1325 if ms.LoadMessageInfo() == nil { 1326 ms.StoreMessageInfo(mi) 1327 } 1328 return ms 1329 } 1330 return mi.MessageOf(x) 1331 } 1332 1333 // Deprecated: Use Shard_SourceShard.ProtoReflect.Descriptor instead. 1334 func (*Shard_SourceShard) Descriptor() ([]byte, []int) { 1335 return file_topodata_proto_rawDescGZIP(), []int{3, 0} 1336 } 1337 1338 func (x *Shard_SourceShard) GetUid() uint32 { 1339 if x != nil { 1340 return x.Uid 1341 } 1342 return 0 1343 } 1344 1345 func (x *Shard_SourceShard) GetKeyspace() string { 1346 if x != nil { 1347 return x.Keyspace 1348 } 1349 return "" 1350 } 1351 1352 func (x *Shard_SourceShard) GetShard() string { 1353 if x != nil { 1354 return x.Shard 1355 } 1356 return "" 1357 } 1358 1359 func (x *Shard_SourceShard) GetKeyRange() *KeyRange { 1360 if x != nil { 1361 return x.KeyRange 1362 } 1363 return nil 1364 } 1365 1366 func (x *Shard_SourceShard) GetTables() []string { 1367 if x != nil { 1368 return x.Tables 1369 } 1370 return nil 1371 } 1372 1373 // TabletControl controls tablet's behavior 1374 type Shard_TabletControl struct { 1375 state protoimpl.MessageState 1376 sizeCache protoimpl.SizeCache 1377 unknownFields protoimpl.UnknownFields 1378 1379 // which tablet type is affected 1380 TabletType TabletType `protobuf:"varint,1,opt,name=tablet_type,json=tabletType,proto3,enum=topodata.TabletType" json:"tablet_type,omitempty"` 1381 Cells []string `protobuf:"bytes,2,rep,name=cells,proto3" json:"cells,omitempty"` 1382 DeniedTables []string `protobuf:"bytes,4,rep,name=denied_tables,json=deniedTables,proto3" json:"denied_tables,omitempty"` 1383 // frozen is set if we've started failing over traffic for 1384 // the primary. If set, this record should not be removed. 1385 Frozen bool `protobuf:"varint,5,opt,name=frozen,proto3" json:"frozen,omitempty"` 1386 } 1387 1388 func (x *Shard_TabletControl) Reset() { 1389 *x = Shard_TabletControl{} 1390 if protoimpl.UnsafeEnabled { 1391 mi := &file_topodata_proto_msgTypes[17] 1392 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1393 ms.StoreMessageInfo(mi) 1394 } 1395 } 1396 1397 func (x *Shard_TabletControl) String() string { 1398 return protoimpl.X.MessageStringOf(x) 1399 } 1400 1401 func (*Shard_TabletControl) ProtoMessage() {} 1402 1403 func (x *Shard_TabletControl) ProtoReflect() protoreflect.Message { 1404 mi := &file_topodata_proto_msgTypes[17] 1405 if protoimpl.UnsafeEnabled && x != nil { 1406 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1407 if ms.LoadMessageInfo() == nil { 1408 ms.StoreMessageInfo(mi) 1409 } 1410 return ms 1411 } 1412 return mi.MessageOf(x) 1413 } 1414 1415 // Deprecated: Use Shard_TabletControl.ProtoReflect.Descriptor instead. 1416 func (*Shard_TabletControl) Descriptor() ([]byte, []int) { 1417 return file_topodata_proto_rawDescGZIP(), []int{3, 1} 1418 } 1419 1420 func (x *Shard_TabletControl) GetTabletType() TabletType { 1421 if x != nil { 1422 return x.TabletType 1423 } 1424 return TabletType_UNKNOWN 1425 } 1426 1427 func (x *Shard_TabletControl) GetCells() []string { 1428 if x != nil { 1429 return x.Cells 1430 } 1431 return nil 1432 } 1433 1434 func (x *Shard_TabletControl) GetDeniedTables() []string { 1435 if x != nil { 1436 return x.DeniedTables 1437 } 1438 return nil 1439 } 1440 1441 func (x *Shard_TabletControl) GetFrozen() bool { 1442 if x != nil { 1443 return x.Frozen 1444 } 1445 return false 1446 } 1447 1448 // ServedFrom indicates a relationship between a TabletType and the 1449 // keyspace name that's serving it. 1450 type Keyspace_ServedFrom struct { 1451 state protoimpl.MessageState 1452 sizeCache protoimpl.SizeCache 1453 unknownFields protoimpl.UnknownFields 1454 1455 // the tablet type (key for the map) 1456 TabletType TabletType `protobuf:"varint,1,opt,name=tablet_type,json=tabletType,proto3,enum=topodata.TabletType" json:"tablet_type,omitempty"` 1457 // the cells to limit this to 1458 Cells []string `protobuf:"bytes,2,rep,name=cells,proto3" json:"cells,omitempty"` 1459 // the keyspace name that's serving it 1460 Keyspace string `protobuf:"bytes,3,opt,name=keyspace,proto3" json:"keyspace,omitempty"` 1461 } 1462 1463 func (x *Keyspace_ServedFrom) Reset() { 1464 *x = Keyspace_ServedFrom{} 1465 if protoimpl.UnsafeEnabled { 1466 mi := &file_topodata_proto_msgTypes[18] 1467 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1468 ms.StoreMessageInfo(mi) 1469 } 1470 } 1471 1472 func (x *Keyspace_ServedFrom) String() string { 1473 return protoimpl.X.MessageStringOf(x) 1474 } 1475 1476 func (*Keyspace_ServedFrom) ProtoMessage() {} 1477 1478 func (x *Keyspace_ServedFrom) ProtoReflect() protoreflect.Message { 1479 mi := &file_topodata_proto_msgTypes[18] 1480 if protoimpl.UnsafeEnabled && x != nil { 1481 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1482 if ms.LoadMessageInfo() == nil { 1483 ms.StoreMessageInfo(mi) 1484 } 1485 return ms 1486 } 1487 return mi.MessageOf(x) 1488 } 1489 1490 // Deprecated: Use Keyspace_ServedFrom.ProtoReflect.Descriptor instead. 1491 func (*Keyspace_ServedFrom) Descriptor() ([]byte, []int) { 1492 return file_topodata_proto_rawDescGZIP(), []int{4, 0} 1493 } 1494 1495 func (x *Keyspace_ServedFrom) GetTabletType() TabletType { 1496 if x != nil { 1497 return x.TabletType 1498 } 1499 return TabletType_UNKNOWN 1500 } 1501 1502 func (x *Keyspace_ServedFrom) GetCells() []string { 1503 if x != nil { 1504 return x.Cells 1505 } 1506 return nil 1507 } 1508 1509 func (x *Keyspace_ServedFrom) GetKeyspace() string { 1510 if x != nil { 1511 return x.Keyspace 1512 } 1513 return "" 1514 } 1515 1516 // Node describes a tablet instance within the cell 1517 type ShardReplication_Node struct { 1518 state protoimpl.MessageState 1519 sizeCache protoimpl.SizeCache 1520 unknownFields protoimpl.UnknownFields 1521 1522 TabletAlias *TabletAlias `protobuf:"bytes,1,opt,name=tablet_alias,json=tabletAlias,proto3" json:"tablet_alias,omitempty"` 1523 } 1524 1525 func (x *ShardReplication_Node) Reset() { 1526 *x = ShardReplication_Node{} 1527 if protoimpl.UnsafeEnabled { 1528 mi := &file_topodata_proto_msgTypes[19] 1529 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1530 ms.StoreMessageInfo(mi) 1531 } 1532 } 1533 1534 func (x *ShardReplication_Node) String() string { 1535 return protoimpl.X.MessageStringOf(x) 1536 } 1537 1538 func (*ShardReplication_Node) ProtoMessage() {} 1539 1540 func (x *ShardReplication_Node) ProtoReflect() protoreflect.Message { 1541 mi := &file_topodata_proto_msgTypes[19] 1542 if protoimpl.UnsafeEnabled && x != nil { 1543 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1544 if ms.LoadMessageInfo() == nil { 1545 ms.StoreMessageInfo(mi) 1546 } 1547 return ms 1548 } 1549 return mi.MessageOf(x) 1550 } 1551 1552 // Deprecated: Use ShardReplication_Node.ProtoReflect.Descriptor instead. 1553 func (*ShardReplication_Node) Descriptor() ([]byte, []int) { 1554 return file_topodata_proto_rawDescGZIP(), []int{5, 0} 1555 } 1556 1557 func (x *ShardReplication_Node) GetTabletAlias() *TabletAlias { 1558 if x != nil { 1559 return x.TabletAlias 1560 } 1561 return nil 1562 } 1563 1564 type SrvKeyspace_KeyspacePartition struct { 1565 state protoimpl.MessageState 1566 sizeCache protoimpl.SizeCache 1567 unknownFields protoimpl.UnknownFields 1568 1569 // The type this partition applies to. 1570 ServedType TabletType `protobuf:"varint,1,opt,name=served_type,json=servedType,proto3,enum=topodata.TabletType" json:"served_type,omitempty"` 1571 // List of non-overlapping continuous shards sorted by range. 1572 ShardReferences []*ShardReference `protobuf:"bytes,2,rep,name=shard_references,json=shardReferences,proto3" json:"shard_references,omitempty"` 1573 // List of shard tablet controls 1574 ShardTabletControls []*ShardTabletControl `protobuf:"bytes,3,rep,name=shard_tablet_controls,json=shardTabletControls,proto3" json:"shard_tablet_controls,omitempty"` 1575 } 1576 1577 func (x *SrvKeyspace_KeyspacePartition) Reset() { 1578 *x = SrvKeyspace_KeyspacePartition{} 1579 if protoimpl.UnsafeEnabled { 1580 mi := &file_topodata_proto_msgTypes[20] 1581 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1582 ms.StoreMessageInfo(mi) 1583 } 1584 } 1585 1586 func (x *SrvKeyspace_KeyspacePartition) String() string { 1587 return protoimpl.X.MessageStringOf(x) 1588 } 1589 1590 func (*SrvKeyspace_KeyspacePartition) ProtoMessage() {} 1591 1592 func (x *SrvKeyspace_KeyspacePartition) ProtoReflect() protoreflect.Message { 1593 mi := &file_topodata_proto_msgTypes[20] 1594 if protoimpl.UnsafeEnabled && x != nil { 1595 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1596 if ms.LoadMessageInfo() == nil { 1597 ms.StoreMessageInfo(mi) 1598 } 1599 return ms 1600 } 1601 return mi.MessageOf(x) 1602 } 1603 1604 // Deprecated: Use SrvKeyspace_KeyspacePartition.ProtoReflect.Descriptor instead. 1605 func (*SrvKeyspace_KeyspacePartition) Descriptor() ([]byte, []int) { 1606 return file_topodata_proto_rawDescGZIP(), []int{8, 0} 1607 } 1608 1609 func (x *SrvKeyspace_KeyspacePartition) GetServedType() TabletType { 1610 if x != nil { 1611 return x.ServedType 1612 } 1613 return TabletType_UNKNOWN 1614 } 1615 1616 func (x *SrvKeyspace_KeyspacePartition) GetShardReferences() []*ShardReference { 1617 if x != nil { 1618 return x.ShardReferences 1619 } 1620 return nil 1621 } 1622 1623 func (x *SrvKeyspace_KeyspacePartition) GetShardTabletControls() []*ShardTabletControl { 1624 if x != nil { 1625 return x.ShardTabletControls 1626 } 1627 return nil 1628 } 1629 1630 // ServedFrom indicates a relationship between a TabletType and the 1631 // keyspace name that's serving it. 1632 type SrvKeyspace_ServedFrom struct { 1633 state protoimpl.MessageState 1634 sizeCache protoimpl.SizeCache 1635 unknownFields protoimpl.UnknownFields 1636 1637 // the tablet type 1638 TabletType TabletType `protobuf:"varint,1,opt,name=tablet_type,json=tabletType,proto3,enum=topodata.TabletType" json:"tablet_type,omitempty"` 1639 // the keyspace name that's serving it 1640 Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"` 1641 } 1642 1643 func (x *SrvKeyspace_ServedFrom) Reset() { 1644 *x = SrvKeyspace_ServedFrom{} 1645 if protoimpl.UnsafeEnabled { 1646 mi := &file_topodata_proto_msgTypes[21] 1647 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1648 ms.StoreMessageInfo(mi) 1649 } 1650 } 1651 1652 func (x *SrvKeyspace_ServedFrom) String() string { 1653 return protoimpl.X.MessageStringOf(x) 1654 } 1655 1656 func (*SrvKeyspace_ServedFrom) ProtoMessage() {} 1657 1658 func (x *SrvKeyspace_ServedFrom) ProtoReflect() protoreflect.Message { 1659 mi := &file_topodata_proto_msgTypes[21] 1660 if protoimpl.UnsafeEnabled && x != nil { 1661 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1662 if ms.LoadMessageInfo() == nil { 1663 ms.StoreMessageInfo(mi) 1664 } 1665 return ms 1666 } 1667 return mi.MessageOf(x) 1668 } 1669 1670 // Deprecated: Use SrvKeyspace_ServedFrom.ProtoReflect.Descriptor instead. 1671 func (*SrvKeyspace_ServedFrom) Descriptor() ([]byte, []int) { 1672 return file_topodata_proto_rawDescGZIP(), []int{8, 1} 1673 } 1674 1675 func (x *SrvKeyspace_ServedFrom) GetTabletType() TabletType { 1676 if x != nil { 1677 return x.TabletType 1678 } 1679 return TabletType_UNKNOWN 1680 } 1681 1682 func (x *SrvKeyspace_ServedFrom) GetKeyspace() string { 1683 if x != nil { 1684 return x.Keyspace 1685 } 1686 return "" 1687 } 1688 1689 var File_topodata_proto protoreflect.FileDescriptor 1690 1691 var file_topodata_proto_rawDesc = []byte{ 1692 0x0a, 0x0e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1693 0x12, 0x08, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x0c, 0x76, 0x74, 0x74, 0x69, 1694 0x6d, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x32, 0x0a, 0x08, 0x4b, 0x65, 0x79, 0x52, 1695 0x61, 0x6e, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 1696 0x01, 0x28, 0x0c, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 1697 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x22, 0x33, 0x0a, 0x0b, 1698 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 1699 0x65, 0x6c, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x65, 0x6c, 0x6c, 0x12, 1700 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x75, 0x69, 1701 0x64, 0x22, 0xe0, 0x05, 0x0a, 0x06, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x12, 0x2b, 0x0a, 0x05, 1702 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 1703 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 1704 0x61, 0x73, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73, 1705 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 1706 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x08, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x6d, 0x61, 1707 0x70, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 1708 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x4d, 0x61, 1709 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x70, 0x6f, 0x72, 0x74, 0x4d, 0x61, 0x70, 0x12, 1710 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 1711 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 1712 0x68, 0x61, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 1713 0x64, 0x12, 0x2f, 0x0a, 0x09, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x07, 1714 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 1715 0x4b, 0x65, 0x79, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x52, 0x61, 0x6e, 1716 0x67, 0x65, 0x12, 0x28, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 1717 0x32, 0x14, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 1718 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x28, 0x0a, 0x10, 1719 0x64, 0x62, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 1720 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x64, 0x62, 0x4e, 0x61, 0x6d, 0x65, 0x4f, 0x76, 1721 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x0a, 1722 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 1723 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 1724 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, 1725 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 1726 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x48, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 1727 0x0a, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 1728 0x05, 0x52, 0x09, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x43, 0x0a, 0x17, 1729 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x74, 0x65, 0x72, 0x6d, 0x5f, 0x73, 0x74, 0x61, 1730 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 1731 0x76, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x14, 0x70, 0x72, 0x69, 1732 0x6d, 0x61, 0x72, 0x79, 0x54, 0x65, 0x72, 0x6d, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 1733 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x64, 0x62, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x76, 1734 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x62, 1735 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 1736 0x16, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x5f, 0x63, 0x6f, 1737 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x64, 1738 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x43, 0x6f, 0x6c, 0x6c, 0x61, 0x74, 1739 0x69, 0x6f, 0x6e, 0x1a, 0x3a, 0x0a, 0x0c, 0x50, 0x6f, 0x72, 0x74, 0x4d, 0x61, 0x70, 0x45, 0x6e, 1740 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 1741 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 1742 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 1743 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 1744 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 1745 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 1746 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, 0x4a, 0x04, 1747 0x08, 0x0b, 0x10, 0x0c, 0x22, 0xbc, 0x05, 0x0a, 0x05, 0x53, 0x68, 0x61, 0x72, 0x64, 0x12, 0x3a, 1748 0x0a, 0x0d, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 1749 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 1750 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x52, 0x0c, 0x70, 0x72, 1751 0x69, 0x6d, 0x61, 0x72, 0x79, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x43, 0x0a, 0x17, 0x70, 0x72, 1752 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x74, 0x65, 0x72, 0x6d, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 1753 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x76, 0x74, 1754 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x14, 0x70, 0x72, 0x69, 0x6d, 0x61, 1755 0x72, 0x79, 0x54, 0x65, 0x72, 0x6d, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 1756 0x2f, 0x0a, 0x09, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 1757 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x4b, 0x65, 1758 0x79, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x52, 0x61, 0x6e, 0x67, 0x65, 1759 0x12, 0x40, 0x0a, 0x0d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x73, 0x68, 0x61, 0x72, 0x64, 1760 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 1761 0x74, 0x61, 0x2e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 1762 0x68, 0x61, 0x72, 0x64, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x68, 0x61, 0x72, 1763 0x64, 0x73, 0x12, 0x46, 0x0a, 0x0f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 1764 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x74, 0x6f, 1765 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x2e, 0x54, 0x61, 0x62, 1766 0x6c, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x0e, 0x74, 0x61, 0x62, 0x6c, 1767 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x73, 1768 0x5f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x6e, 0x67, 1769 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 1770 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x6e, 0x67, 0x1a, 0x9a, 0x01, 0x0a, 0x0b, 0x53, 0x6f, 0x75, 1771 0x72, 0x63, 0x65, 0x53, 0x68, 0x61, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 1772 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 1773 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 1774 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x18, 1775 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x12, 0x2f, 0x0a, 0x09, 1776 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 1777 0x12, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x61, 1778 0x6e, 0x67, 0x65, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x16, 0x0a, 1779 0x06, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x74, 1780 0x61, 0x62, 0x6c, 0x65, 0x73, 0x1a, 0x9f, 0x01, 0x0a, 0x0d, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 1781 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x35, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, 1782 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x74, 1783 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x54, 0x79, 1784 0x70, 0x65, 0x52, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 1785 0x0a, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x63, 1786 0x65, 0x6c, 0x6c, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x5f, 0x74, 1787 0x61, 0x62, 0x6c, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x65, 0x6e, 1788 0x69, 0x65, 0x64, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x72, 0x6f, 1789 0x7a, 0x65, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x66, 0x72, 0x6f, 0x7a, 0x65, 1790 0x6e, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, 0x4a, 0x04, 0x08, 1791 0x05, 0x10, 0x06, 0x22, 0xdc, 0x03, 0x0a, 0x08, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 1792 0x12, 0x30, 0x0a, 0x14, 0x73, 0x68, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6c, 1793 0x75, 0x6d, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 1794 0x73, 0x68, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x4e, 0x61, 1795 0x6d, 0x65, 0x12, 0x4a, 0x0a, 0x14, 0x73, 0x68, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 1796 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 1797 0x32, 0x18, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x4b, 0x65, 0x79, 0x73, 1798 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x12, 0x73, 0x68, 0x61, 0x72, 1799 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x40, 1800 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x73, 0x18, 0x04, 1801 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 1802 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x64, 0x46, 1803 0x72, 0x6f, 0x6d, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x46, 0x72, 0x6f, 0x6d, 0x73, 1804 0x12, 0x3b, 0x0a, 0x0d, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 1805 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 1806 0x74, 0x61, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 1807 0x0c, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 1808 0x0d, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x06, 1809 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x62, 0x61, 0x73, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 1810 0x63, 0x65, 0x12, 0x31, 0x0a, 0x0d, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x74, 1811 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x76, 0x74, 0x74, 0x69, 1812 0x6d, 0x65, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x0c, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 1813 0x74, 0x54, 0x69, 0x6d, 0x65, 0x1a, 0x75, 0x0a, 0x0a, 0x53, 0x65, 0x72, 0x76, 0x65, 0x64, 0x46, 1814 0x72, 0x6f, 0x6d, 0x12, 0x35, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, 0x74, 0x79, 1815 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 1816 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 1817 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x65, 1818 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, 1819 0x12, 0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 1820 0x28, 0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x4a, 0x04, 0x08, 0x03, 1821 0x10, 0x04, 0x22, 0x8b, 0x01, 0x0a, 0x10, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x70, 0x6c, 1822 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 1823 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 1824 0x61, 0x2e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 1825 0x6f, 0x6e, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x1a, 0x40, 1826 0x0a, 0x04, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x38, 0x0a, 0x0c, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 1827 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 1828 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 1829 0x69, 0x61, 0x73, 0x52, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x41, 0x6c, 0x69, 0x61, 0x73, 1830 0x22, 0x55, 0x0a, 0x0e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 1831 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 1832 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x09, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x61, 1833 0x6e, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 1834 0x64, 0x61, 0x74, 0x61, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x08, 0x6b, 1835 0x65, 0x79, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x22, 0x8f, 0x01, 0x0a, 0x12, 0x53, 0x68, 0x61, 0x72, 1836 0x64, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x12, 1837 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 1838 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x09, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 1839 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 1840 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x52, 0x61, 1841 0x6e, 0x67, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73, 0x65, 0x72, 1842 0x76, 0x69, 0x63, 0x65, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 1843 0x01, 0x28, 0x08, 0x52, 0x14, 0x71, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 1844 0x65, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0xe2, 0x04, 0x0a, 0x0b, 0x53, 0x72, 1845 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x47, 0x0a, 0x0a, 0x70, 0x61, 0x72, 1846 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 1847 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 1848 0x70, 0x61, 0x63, 0x65, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x50, 0x61, 0x72, 1849 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 1850 0x6e, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x73, 0x68, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 1851 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 1852 0x52, 0x12, 0x73, 0x68, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 1853 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x4a, 0x0a, 0x14, 0x73, 0x68, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 1854 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 1855 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x4b, 0x65, 1856 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x12, 0x73, 0x68, 1857 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x54, 0x79, 0x70, 0x65, 1858 0x12, 0x41, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x18, 1859 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 1860 0x2e, 0x53, 0x72, 0x76, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2e, 0x53, 0x65, 0x72, 1861 0x76, 0x65, 0x64, 0x46, 0x72, 0x6f, 0x6d, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x46, 1862 0x72, 0x6f, 0x6d, 0x1a, 0xe1, 0x01, 0x0a, 0x11, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 1863 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x0b, 0x73, 0x65, 0x72, 1864 0x76, 0x65, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 1865 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 1866 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 1867 0x12, 0x43, 0x0a, 0x10, 0x73, 0x68, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 1868 0x6e, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x74, 0x6f, 0x70, 1869 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x66, 0x65, 0x72, 1870 0x65, 0x6e, 0x63, 0x65, 0x52, 0x0f, 0x73, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x66, 0x65, 0x72, 1871 0x65, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x50, 0x0a, 0x15, 0x73, 0x68, 0x61, 0x72, 0x64, 0x5f, 0x74, 1872 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x18, 0x03, 1873 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 1874 0x53, 0x68, 0x61, 0x72, 0x64, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 1875 0x6f, 0x6c, 0x52, 0x13, 0x73, 0x68, 0x61, 0x72, 0x64, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x43, 1876 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x1a, 0x5f, 0x0a, 0x0a, 0x53, 0x65, 0x72, 0x76, 0x65, 1877 0x64, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x35, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, 1878 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x74, 0x6f, 0x70, 1879 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 1880 0x52, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 1881 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 1882 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x4a, 0x04, 0x08, 0x05, 0x10, 0x06, 0x22, 0x4b, 1883 0x0a, 0x08, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 1884 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 1885 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 1886 0x73, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 1887 0x04, 0x72, 0x6f, 0x6f, 0x74, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, 0x22, 0x22, 0x0a, 0x0a, 0x43, 1888 0x65, 0x6c, 0x6c, 0x73, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x65, 0x6c, 1889 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x22, 1890 0x55, 0x0a, 0x0a, 0x54, 0x6f, 0x70, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1b, 0x0a, 1891 0x09, 0x74, 0x6f, 0x70, 0x6f, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 1892 0x52, 0x08, 0x74, 0x6f, 0x70, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 1893 0x72, 0x76, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x72, 0x76, 1894 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6f, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 1895 0x52, 0x04, 0x72, 0x6f, 0x6f, 0x74, 0x22, 0x4e, 0x0a, 0x15, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 1896 0x61, 0x6c, 0x56, 0x69, 0x74, 0x65, 0x73, 0x73, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 1897 0x35, 0x0a, 0x0b, 0x74, 0x6f, 0x70, 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 1898 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 1899 0x54, 0x6f, 0x70, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0a, 0x74, 0x6f, 0x70, 0x6f, 1900 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x5a, 0x0a, 0x10, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 1901 0x61, 0x6c, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x73, 0x12, 0x46, 0x0a, 0x0e, 0x76, 0x69, 1902 0x74, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x03, 1903 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x45, 0x78, 1904 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x56, 0x69, 0x74, 0x65, 0x73, 0x73, 0x43, 0x6c, 0x75, 0x73, 1905 0x74, 0x65, 0x72, 0x52, 0x0d, 0x76, 0x69, 0x74, 0x65, 0x73, 0x73, 0x43, 0x6c, 0x75, 0x73, 0x74, 1906 0x65, 0x72, 0x2a, 0x28, 0x0a, 0x0c, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x54, 0x79, 1907 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x00, 0x12, 0x0c, 1908 0x0a, 0x08, 0x53, 0x4e, 0x41, 0x50, 0x53, 0x48, 0x4f, 0x54, 0x10, 0x01, 0x2a, 0x32, 0x0a, 0x0e, 1909 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x09, 1910 0x0a, 0x05, 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x49, 0x4e, 1911 0x54, 0x36, 0x34, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x42, 0x59, 0x54, 0x45, 0x53, 0x10, 0x02, 1912 0x2a, 0x9d, 0x01, 0x0a, 0x0a, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 1913 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 1914 0x50, 0x52, 0x49, 0x4d, 0x41, 0x52, 0x59, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x4d, 0x41, 0x53, 1915 0x54, 0x45, 0x52, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x45, 0x50, 0x4c, 0x49, 0x43, 0x41, 1916 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x44, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x03, 0x12, 0x09, 1917 0x0a, 0x05, 0x42, 0x41, 0x54, 0x43, 0x48, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x50, 0x41, 1918 0x52, 0x45, 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x45, 0x58, 0x50, 0x45, 0x52, 0x49, 0x4d, 0x45, 1919 0x4e, 0x54, 0x41, 0x4c, 0x10, 0x05, 0x12, 0x0a, 0x0a, 0x06, 0x42, 0x41, 0x43, 0x4b, 0x55, 0x50, 1920 0x10, 0x06, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x45, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x10, 0x07, 0x12, 1921 0x0b, 0x0a, 0x07, 0x44, 0x52, 0x41, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x08, 0x1a, 0x02, 0x10, 0x01, 1922 0x42, 0x38, 0x0a, 0x0f, 0x69, 0x6f, 0x2e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x73, 0x2e, 0x70, 0x72, 1923 0x6f, 0x74, 0x6f, 0x5a, 0x25, 0x76, 0x69, 0x74, 0x65, 0x73, 0x73, 0x2e, 0x69, 0x6f, 0x2f, 0x76, 1924 0x69, 0x74, 0x65, 0x73, 0x73, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x74, 0x2f, 0x70, 0x72, 0x6f, 0x74, 1925 0x6f, 0x2f, 0x74, 0x6f, 0x70, 0x6f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 1926 0x6f, 0x33, 1927 } 1928 1929 var ( 1930 file_topodata_proto_rawDescOnce sync.Once 1931 file_topodata_proto_rawDescData = file_topodata_proto_rawDesc 1932 ) 1933 1934 func file_topodata_proto_rawDescGZIP() []byte { 1935 file_topodata_proto_rawDescOnce.Do(func() { 1936 file_topodata_proto_rawDescData = protoimpl.X.CompressGZIP(file_topodata_proto_rawDescData) 1937 }) 1938 return file_topodata_proto_rawDescData 1939 } 1940 1941 var file_topodata_proto_enumTypes = make([]protoimpl.EnumInfo, 3) 1942 var file_topodata_proto_msgTypes = make([]protoimpl.MessageInfo, 22) 1943 var file_topodata_proto_goTypes = []interface{}{ 1944 (KeyspaceType)(0), // 0: topodata.KeyspaceType 1945 (KeyspaceIdType)(0), // 1: topodata.KeyspaceIdType 1946 (TabletType)(0), // 2: topodata.TabletType 1947 (*KeyRange)(nil), // 3: topodata.KeyRange 1948 (*TabletAlias)(nil), // 4: topodata.TabletAlias 1949 (*Tablet)(nil), // 5: topodata.Tablet 1950 (*Shard)(nil), // 6: topodata.Shard 1951 (*Keyspace)(nil), // 7: topodata.Keyspace 1952 (*ShardReplication)(nil), // 8: topodata.ShardReplication 1953 (*ShardReference)(nil), // 9: topodata.ShardReference 1954 (*ShardTabletControl)(nil), // 10: topodata.ShardTabletControl 1955 (*SrvKeyspace)(nil), // 11: topodata.SrvKeyspace 1956 (*CellInfo)(nil), // 12: topodata.CellInfo 1957 (*CellsAlias)(nil), // 13: topodata.CellsAlias 1958 (*TopoConfig)(nil), // 14: topodata.TopoConfig 1959 (*ExternalVitessCluster)(nil), // 15: topodata.ExternalVitessCluster 1960 (*ExternalClusters)(nil), // 16: topodata.ExternalClusters 1961 nil, // 17: topodata.Tablet.PortMapEntry 1962 nil, // 18: topodata.Tablet.TagsEntry 1963 (*Shard_SourceShard)(nil), // 19: topodata.Shard.SourceShard 1964 (*Shard_TabletControl)(nil), // 20: topodata.Shard.TabletControl 1965 (*Keyspace_ServedFrom)(nil), // 21: topodata.Keyspace.ServedFrom 1966 (*ShardReplication_Node)(nil), // 22: topodata.ShardReplication.Node 1967 (*SrvKeyspace_KeyspacePartition)(nil), // 23: topodata.SrvKeyspace.KeyspacePartition 1968 (*SrvKeyspace_ServedFrom)(nil), // 24: topodata.SrvKeyspace.ServedFrom 1969 (*vttime.Time)(nil), // 25: vttime.Time 1970 } 1971 var file_topodata_proto_depIdxs = []int32{ 1972 4, // 0: topodata.Tablet.alias:type_name -> topodata.TabletAlias 1973 17, // 1: topodata.Tablet.port_map:type_name -> topodata.Tablet.PortMapEntry 1974 3, // 2: topodata.Tablet.key_range:type_name -> topodata.KeyRange 1975 2, // 3: topodata.Tablet.type:type_name -> topodata.TabletType 1976 18, // 4: topodata.Tablet.tags:type_name -> topodata.Tablet.TagsEntry 1977 25, // 5: topodata.Tablet.primary_term_start_time:type_name -> vttime.Time 1978 4, // 6: topodata.Shard.primary_alias:type_name -> topodata.TabletAlias 1979 25, // 7: topodata.Shard.primary_term_start_time:type_name -> vttime.Time 1980 3, // 8: topodata.Shard.key_range:type_name -> topodata.KeyRange 1981 19, // 9: topodata.Shard.source_shards:type_name -> topodata.Shard.SourceShard 1982 20, // 10: topodata.Shard.tablet_controls:type_name -> topodata.Shard.TabletControl 1983 1, // 11: topodata.Keyspace.sharding_column_type:type_name -> topodata.KeyspaceIdType 1984 21, // 12: topodata.Keyspace.served_froms:type_name -> topodata.Keyspace.ServedFrom 1985 0, // 13: topodata.Keyspace.keyspace_type:type_name -> topodata.KeyspaceType 1986 25, // 14: topodata.Keyspace.snapshot_time:type_name -> vttime.Time 1987 22, // 15: topodata.ShardReplication.nodes:type_name -> topodata.ShardReplication.Node 1988 3, // 16: topodata.ShardReference.key_range:type_name -> topodata.KeyRange 1989 3, // 17: topodata.ShardTabletControl.key_range:type_name -> topodata.KeyRange 1990 23, // 18: topodata.SrvKeyspace.partitions:type_name -> topodata.SrvKeyspace.KeyspacePartition 1991 1, // 19: topodata.SrvKeyspace.sharding_column_type:type_name -> topodata.KeyspaceIdType 1992 24, // 20: topodata.SrvKeyspace.served_from:type_name -> topodata.SrvKeyspace.ServedFrom 1993 14, // 21: topodata.ExternalVitessCluster.topo_config:type_name -> topodata.TopoConfig 1994 15, // 22: topodata.ExternalClusters.vitess_cluster:type_name -> topodata.ExternalVitessCluster 1995 3, // 23: topodata.Shard.SourceShard.key_range:type_name -> topodata.KeyRange 1996 2, // 24: topodata.Shard.TabletControl.tablet_type:type_name -> topodata.TabletType 1997 2, // 25: topodata.Keyspace.ServedFrom.tablet_type:type_name -> topodata.TabletType 1998 4, // 26: topodata.ShardReplication.Node.tablet_alias:type_name -> topodata.TabletAlias 1999 2, // 27: topodata.SrvKeyspace.KeyspacePartition.served_type:type_name -> topodata.TabletType 2000 9, // 28: topodata.SrvKeyspace.KeyspacePartition.shard_references:type_name -> topodata.ShardReference 2001 10, // 29: topodata.SrvKeyspace.KeyspacePartition.shard_tablet_controls:type_name -> topodata.ShardTabletControl 2002 2, // 30: topodata.SrvKeyspace.ServedFrom.tablet_type:type_name -> topodata.TabletType 2003 31, // [31:31] is the sub-list for method output_type 2004 31, // [31:31] is the sub-list for method input_type 2005 31, // [31:31] is the sub-list for extension type_name 2006 31, // [31:31] is the sub-list for extension extendee 2007 0, // [0:31] is the sub-list for field type_name 2008 } 2009 2010 func init() { file_topodata_proto_init() } 2011 func file_topodata_proto_init() { 2012 if File_topodata_proto != nil { 2013 return 2014 } 2015 if !protoimpl.UnsafeEnabled { 2016 file_topodata_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 2017 switch v := v.(*KeyRange); i { 2018 case 0: 2019 return &v.state 2020 case 1: 2021 return &v.sizeCache 2022 case 2: 2023 return &v.unknownFields 2024 default: 2025 return nil 2026 } 2027 } 2028 file_topodata_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 2029 switch v := v.(*TabletAlias); i { 2030 case 0: 2031 return &v.state 2032 case 1: 2033 return &v.sizeCache 2034 case 2: 2035 return &v.unknownFields 2036 default: 2037 return nil 2038 } 2039 } 2040 file_topodata_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 2041 switch v := v.(*Tablet); i { 2042 case 0: 2043 return &v.state 2044 case 1: 2045 return &v.sizeCache 2046 case 2: 2047 return &v.unknownFields 2048 default: 2049 return nil 2050 } 2051 } 2052 file_topodata_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 2053 switch v := v.(*Shard); i { 2054 case 0: 2055 return &v.state 2056 case 1: 2057 return &v.sizeCache 2058 case 2: 2059 return &v.unknownFields 2060 default: 2061 return nil 2062 } 2063 } 2064 file_topodata_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 2065 switch v := v.(*Keyspace); i { 2066 case 0: 2067 return &v.state 2068 case 1: 2069 return &v.sizeCache 2070 case 2: 2071 return &v.unknownFields 2072 default: 2073 return nil 2074 } 2075 } 2076 file_topodata_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 2077 switch v := v.(*ShardReplication); i { 2078 case 0: 2079 return &v.state 2080 case 1: 2081 return &v.sizeCache 2082 case 2: 2083 return &v.unknownFields 2084 default: 2085 return nil 2086 } 2087 } 2088 file_topodata_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 2089 switch v := v.(*ShardReference); i { 2090 case 0: 2091 return &v.state 2092 case 1: 2093 return &v.sizeCache 2094 case 2: 2095 return &v.unknownFields 2096 default: 2097 return nil 2098 } 2099 } 2100 file_topodata_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 2101 switch v := v.(*ShardTabletControl); i { 2102 case 0: 2103 return &v.state 2104 case 1: 2105 return &v.sizeCache 2106 case 2: 2107 return &v.unknownFields 2108 default: 2109 return nil 2110 } 2111 } 2112 file_topodata_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 2113 switch v := v.(*SrvKeyspace); i { 2114 case 0: 2115 return &v.state 2116 case 1: 2117 return &v.sizeCache 2118 case 2: 2119 return &v.unknownFields 2120 default: 2121 return nil 2122 } 2123 } 2124 file_topodata_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 2125 switch v := v.(*CellInfo); i { 2126 case 0: 2127 return &v.state 2128 case 1: 2129 return &v.sizeCache 2130 case 2: 2131 return &v.unknownFields 2132 default: 2133 return nil 2134 } 2135 } 2136 file_topodata_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 2137 switch v := v.(*CellsAlias); i { 2138 case 0: 2139 return &v.state 2140 case 1: 2141 return &v.sizeCache 2142 case 2: 2143 return &v.unknownFields 2144 default: 2145 return nil 2146 } 2147 } 2148 file_topodata_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { 2149 switch v := v.(*TopoConfig); i { 2150 case 0: 2151 return &v.state 2152 case 1: 2153 return &v.sizeCache 2154 case 2: 2155 return &v.unknownFields 2156 default: 2157 return nil 2158 } 2159 } 2160 file_topodata_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { 2161 switch v := v.(*ExternalVitessCluster); i { 2162 case 0: 2163 return &v.state 2164 case 1: 2165 return &v.sizeCache 2166 case 2: 2167 return &v.unknownFields 2168 default: 2169 return nil 2170 } 2171 } 2172 file_topodata_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { 2173 switch v := v.(*ExternalClusters); i { 2174 case 0: 2175 return &v.state 2176 case 1: 2177 return &v.sizeCache 2178 case 2: 2179 return &v.unknownFields 2180 default: 2181 return nil 2182 } 2183 } 2184 file_topodata_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { 2185 switch v := v.(*Shard_SourceShard); i { 2186 case 0: 2187 return &v.state 2188 case 1: 2189 return &v.sizeCache 2190 case 2: 2191 return &v.unknownFields 2192 default: 2193 return nil 2194 } 2195 } 2196 file_topodata_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { 2197 switch v := v.(*Shard_TabletControl); i { 2198 case 0: 2199 return &v.state 2200 case 1: 2201 return &v.sizeCache 2202 case 2: 2203 return &v.unknownFields 2204 default: 2205 return nil 2206 } 2207 } 2208 file_topodata_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { 2209 switch v := v.(*Keyspace_ServedFrom); i { 2210 case 0: 2211 return &v.state 2212 case 1: 2213 return &v.sizeCache 2214 case 2: 2215 return &v.unknownFields 2216 default: 2217 return nil 2218 } 2219 } 2220 file_topodata_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { 2221 switch v := v.(*ShardReplication_Node); i { 2222 case 0: 2223 return &v.state 2224 case 1: 2225 return &v.sizeCache 2226 case 2: 2227 return &v.unknownFields 2228 default: 2229 return nil 2230 } 2231 } 2232 file_topodata_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { 2233 switch v := v.(*SrvKeyspace_KeyspacePartition); i { 2234 case 0: 2235 return &v.state 2236 case 1: 2237 return &v.sizeCache 2238 case 2: 2239 return &v.unknownFields 2240 default: 2241 return nil 2242 } 2243 } 2244 file_topodata_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { 2245 switch v := v.(*SrvKeyspace_ServedFrom); i { 2246 case 0: 2247 return &v.state 2248 case 1: 2249 return &v.sizeCache 2250 case 2: 2251 return &v.unknownFields 2252 default: 2253 return nil 2254 } 2255 } 2256 } 2257 type x struct{} 2258 out := protoimpl.TypeBuilder{ 2259 File: protoimpl.DescBuilder{ 2260 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 2261 RawDescriptor: file_topodata_proto_rawDesc, 2262 NumEnums: 3, 2263 NumMessages: 22, 2264 NumExtensions: 0, 2265 NumServices: 0, 2266 }, 2267 GoTypes: file_topodata_proto_goTypes, 2268 DependencyIndexes: file_topodata_proto_depIdxs, 2269 EnumInfos: file_topodata_proto_enumTypes, 2270 MessageInfos: file_topodata_proto_msgTypes, 2271 }.Build() 2272 File_topodata_proto = out.File 2273 file_topodata_proto_rawDesc = nil 2274 file_topodata_proto_goTypes = nil 2275 file_topodata_proto_depIdxs = nil 2276 }