vitess.io/vitess@v0.16.2/go/vt/proto/vschema/vschema.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 types needed to define a vschema.
    17  
    18  // Code generated by protoc-gen-go. DO NOT EDIT.
    19  // versions:
    20  // 	protoc-gen-go v1.28.1
    21  // 	protoc        v3.21.3
    22  // source: vschema.proto
    23  
    24  package vschema
    25  
    26  import (
    27  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    28  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    29  	reflect "reflect"
    30  	sync "sync"
    31  	query "vitess.io/vitess/go/vt/proto/query"
    32  )
    33  
    34  const (
    35  	// Verify that this generated code is sufficiently up-to-date.
    36  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    37  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    38  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    39  )
    40  
    41  // RoutingRules specify the high level routing rules for the VSchema.
    42  type RoutingRules struct {
    43  	state         protoimpl.MessageState
    44  	sizeCache     protoimpl.SizeCache
    45  	unknownFields protoimpl.UnknownFields
    46  
    47  	// rules should ideally be a map. However protos dont't allow
    48  	// repeated fields as elements of a map. So, we use a list
    49  	// instead.
    50  	Rules []*RoutingRule `protobuf:"bytes,1,rep,name=rules,proto3" json:"rules,omitempty"`
    51  }
    52  
    53  func (x *RoutingRules) Reset() {
    54  	*x = RoutingRules{}
    55  	if protoimpl.UnsafeEnabled {
    56  		mi := &file_vschema_proto_msgTypes[0]
    57  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    58  		ms.StoreMessageInfo(mi)
    59  	}
    60  }
    61  
    62  func (x *RoutingRules) String() string {
    63  	return protoimpl.X.MessageStringOf(x)
    64  }
    65  
    66  func (*RoutingRules) ProtoMessage() {}
    67  
    68  func (x *RoutingRules) ProtoReflect() protoreflect.Message {
    69  	mi := &file_vschema_proto_msgTypes[0]
    70  	if protoimpl.UnsafeEnabled && x != nil {
    71  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    72  		if ms.LoadMessageInfo() == nil {
    73  			ms.StoreMessageInfo(mi)
    74  		}
    75  		return ms
    76  	}
    77  	return mi.MessageOf(x)
    78  }
    79  
    80  // Deprecated: Use RoutingRules.ProtoReflect.Descriptor instead.
    81  func (*RoutingRules) Descriptor() ([]byte, []int) {
    82  	return file_vschema_proto_rawDescGZIP(), []int{0}
    83  }
    84  
    85  func (x *RoutingRules) GetRules() []*RoutingRule {
    86  	if x != nil {
    87  		return x.Rules
    88  	}
    89  	return nil
    90  }
    91  
    92  // RoutingRule specifies a routing rule.
    93  type RoutingRule struct {
    94  	state         protoimpl.MessageState
    95  	sizeCache     protoimpl.SizeCache
    96  	unknownFields protoimpl.UnknownFields
    97  
    98  	FromTable string   `protobuf:"bytes,1,opt,name=from_table,json=fromTable,proto3" json:"from_table,omitempty"`
    99  	ToTables  []string `protobuf:"bytes,2,rep,name=to_tables,json=toTables,proto3" json:"to_tables,omitempty"`
   100  }
   101  
   102  func (x *RoutingRule) Reset() {
   103  	*x = RoutingRule{}
   104  	if protoimpl.UnsafeEnabled {
   105  		mi := &file_vschema_proto_msgTypes[1]
   106  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   107  		ms.StoreMessageInfo(mi)
   108  	}
   109  }
   110  
   111  func (x *RoutingRule) String() string {
   112  	return protoimpl.X.MessageStringOf(x)
   113  }
   114  
   115  func (*RoutingRule) ProtoMessage() {}
   116  
   117  func (x *RoutingRule) ProtoReflect() protoreflect.Message {
   118  	mi := &file_vschema_proto_msgTypes[1]
   119  	if protoimpl.UnsafeEnabled && x != nil {
   120  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   121  		if ms.LoadMessageInfo() == nil {
   122  			ms.StoreMessageInfo(mi)
   123  		}
   124  		return ms
   125  	}
   126  	return mi.MessageOf(x)
   127  }
   128  
   129  // Deprecated: Use RoutingRule.ProtoReflect.Descriptor instead.
   130  func (*RoutingRule) Descriptor() ([]byte, []int) {
   131  	return file_vschema_proto_rawDescGZIP(), []int{1}
   132  }
   133  
   134  func (x *RoutingRule) GetFromTable() string {
   135  	if x != nil {
   136  		return x.FromTable
   137  	}
   138  	return ""
   139  }
   140  
   141  func (x *RoutingRule) GetToTables() []string {
   142  	if x != nil {
   143  		return x.ToTables
   144  	}
   145  	return nil
   146  }
   147  
   148  // Keyspace is the vschema for a keyspace.
   149  type Keyspace struct {
   150  	state         protoimpl.MessageState
   151  	sizeCache     protoimpl.SizeCache
   152  	unknownFields protoimpl.UnknownFields
   153  
   154  	// If sharded is false, vindexes and tables are ignored.
   155  	Sharded  bool               `protobuf:"varint,1,opt,name=sharded,proto3" json:"sharded,omitempty"`
   156  	Vindexes map[string]*Vindex `protobuf:"bytes,2,rep,name=vindexes,proto3" json:"vindexes,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   157  	Tables   map[string]*Table  `protobuf:"bytes,3,rep,name=tables,proto3" json:"tables,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   158  	// If require_explicit_routing is true, vindexes and tables are not added to global routing
   159  	RequireExplicitRouting bool `protobuf:"varint,4,opt,name=require_explicit_routing,json=requireExplicitRouting,proto3" json:"require_explicit_routing,omitempty"`
   160  }
   161  
   162  func (x *Keyspace) Reset() {
   163  	*x = Keyspace{}
   164  	if protoimpl.UnsafeEnabled {
   165  		mi := &file_vschema_proto_msgTypes[2]
   166  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   167  		ms.StoreMessageInfo(mi)
   168  	}
   169  }
   170  
   171  func (x *Keyspace) String() string {
   172  	return protoimpl.X.MessageStringOf(x)
   173  }
   174  
   175  func (*Keyspace) ProtoMessage() {}
   176  
   177  func (x *Keyspace) ProtoReflect() protoreflect.Message {
   178  	mi := &file_vschema_proto_msgTypes[2]
   179  	if protoimpl.UnsafeEnabled && x != nil {
   180  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   181  		if ms.LoadMessageInfo() == nil {
   182  			ms.StoreMessageInfo(mi)
   183  		}
   184  		return ms
   185  	}
   186  	return mi.MessageOf(x)
   187  }
   188  
   189  // Deprecated: Use Keyspace.ProtoReflect.Descriptor instead.
   190  func (*Keyspace) Descriptor() ([]byte, []int) {
   191  	return file_vschema_proto_rawDescGZIP(), []int{2}
   192  }
   193  
   194  func (x *Keyspace) GetSharded() bool {
   195  	if x != nil {
   196  		return x.Sharded
   197  	}
   198  	return false
   199  }
   200  
   201  func (x *Keyspace) GetVindexes() map[string]*Vindex {
   202  	if x != nil {
   203  		return x.Vindexes
   204  	}
   205  	return nil
   206  }
   207  
   208  func (x *Keyspace) GetTables() map[string]*Table {
   209  	if x != nil {
   210  		return x.Tables
   211  	}
   212  	return nil
   213  }
   214  
   215  func (x *Keyspace) GetRequireExplicitRouting() bool {
   216  	if x != nil {
   217  		return x.RequireExplicitRouting
   218  	}
   219  	return false
   220  }
   221  
   222  // Vindex is the vindex info for a Keyspace.
   223  type Vindex struct {
   224  	state         protoimpl.MessageState
   225  	sizeCache     protoimpl.SizeCache
   226  	unknownFields protoimpl.UnknownFields
   227  
   228  	// The type must match one of the predefined
   229  	// (or plugged in) vindex names.
   230  	Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
   231  	// params is a map of attribute value pairs
   232  	// that must be defined as required by the
   233  	// vindex constructors. The values can only
   234  	// be strings.
   235  	Params map[string]string `protobuf:"bytes,2,rep,name=params,proto3" json:"params,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   236  	// A lookup vindex can have an owner table defined.
   237  	// If so, rows in the lookup table are created or
   238  	// deleted in sync with corresponding rows in the
   239  	// owner table.
   240  	Owner string `protobuf:"bytes,3,opt,name=owner,proto3" json:"owner,omitempty"`
   241  }
   242  
   243  func (x *Vindex) Reset() {
   244  	*x = Vindex{}
   245  	if protoimpl.UnsafeEnabled {
   246  		mi := &file_vschema_proto_msgTypes[3]
   247  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   248  		ms.StoreMessageInfo(mi)
   249  	}
   250  }
   251  
   252  func (x *Vindex) String() string {
   253  	return protoimpl.X.MessageStringOf(x)
   254  }
   255  
   256  func (*Vindex) ProtoMessage() {}
   257  
   258  func (x *Vindex) ProtoReflect() protoreflect.Message {
   259  	mi := &file_vschema_proto_msgTypes[3]
   260  	if protoimpl.UnsafeEnabled && x != nil {
   261  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   262  		if ms.LoadMessageInfo() == nil {
   263  			ms.StoreMessageInfo(mi)
   264  		}
   265  		return ms
   266  	}
   267  	return mi.MessageOf(x)
   268  }
   269  
   270  // Deprecated: Use Vindex.ProtoReflect.Descriptor instead.
   271  func (*Vindex) Descriptor() ([]byte, []int) {
   272  	return file_vschema_proto_rawDescGZIP(), []int{3}
   273  }
   274  
   275  func (x *Vindex) GetType() string {
   276  	if x != nil {
   277  		return x.Type
   278  	}
   279  	return ""
   280  }
   281  
   282  func (x *Vindex) GetParams() map[string]string {
   283  	if x != nil {
   284  		return x.Params
   285  	}
   286  	return nil
   287  }
   288  
   289  func (x *Vindex) GetOwner() string {
   290  	if x != nil {
   291  		return x.Owner
   292  	}
   293  	return ""
   294  }
   295  
   296  // Table is the table info for a Keyspace.
   297  type Table struct {
   298  	state         protoimpl.MessageState
   299  	sizeCache     protoimpl.SizeCache
   300  	unknownFields protoimpl.UnknownFields
   301  
   302  	// If the table is a sequence, type must be
   303  	// "sequence".
   304  	//
   305  	// If the table is a reference, type must be
   306  	// "reference".
   307  	// See https://vitess.io/docs/reference/features/vschema/#reference-tables.
   308  	//
   309  	// Otherwise, it should be empty.
   310  	Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
   311  	// column_vindexes associates columns to vindexes.
   312  	ColumnVindexes []*ColumnVindex `protobuf:"bytes,2,rep,name=column_vindexes,json=columnVindexes,proto3" json:"column_vindexes,omitempty"`
   313  	// auto_increment is specified if a column needs
   314  	// to be associated with a sequence.
   315  	AutoIncrement *AutoIncrement `protobuf:"bytes,3,opt,name=auto_increment,json=autoIncrement,proto3" json:"auto_increment,omitempty"`
   316  	// columns lists the columns for the table.
   317  	Columns []*Column `protobuf:"bytes,4,rep,name=columns,proto3" json:"columns,omitempty"`
   318  	// pinned pins an unsharded table to a specific
   319  	// shard, as dictated by the keyspace id.
   320  	// The keyspace id is represented in hex form
   321  	// like in keyranges.
   322  	Pinned string `protobuf:"bytes,5,opt,name=pinned,proto3" json:"pinned,omitempty"`
   323  	// column_list_authoritative is set to true if columns is
   324  	// an authoritative list for the table. This allows
   325  	// us to expand 'select *' expressions.
   326  	ColumnListAuthoritative bool `protobuf:"varint,6,opt,name=column_list_authoritative,json=columnListAuthoritative,proto3" json:"column_list_authoritative,omitempty"`
   327  	// reference tables may optionally indicate their source table.
   328  	Source string `protobuf:"bytes,7,opt,name=source,proto3" json:"source,omitempty"`
   329  }
   330  
   331  func (x *Table) Reset() {
   332  	*x = Table{}
   333  	if protoimpl.UnsafeEnabled {
   334  		mi := &file_vschema_proto_msgTypes[4]
   335  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   336  		ms.StoreMessageInfo(mi)
   337  	}
   338  }
   339  
   340  func (x *Table) String() string {
   341  	return protoimpl.X.MessageStringOf(x)
   342  }
   343  
   344  func (*Table) ProtoMessage() {}
   345  
   346  func (x *Table) ProtoReflect() protoreflect.Message {
   347  	mi := &file_vschema_proto_msgTypes[4]
   348  	if protoimpl.UnsafeEnabled && x != nil {
   349  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   350  		if ms.LoadMessageInfo() == nil {
   351  			ms.StoreMessageInfo(mi)
   352  		}
   353  		return ms
   354  	}
   355  	return mi.MessageOf(x)
   356  }
   357  
   358  // Deprecated: Use Table.ProtoReflect.Descriptor instead.
   359  func (*Table) Descriptor() ([]byte, []int) {
   360  	return file_vschema_proto_rawDescGZIP(), []int{4}
   361  }
   362  
   363  func (x *Table) GetType() string {
   364  	if x != nil {
   365  		return x.Type
   366  	}
   367  	return ""
   368  }
   369  
   370  func (x *Table) GetColumnVindexes() []*ColumnVindex {
   371  	if x != nil {
   372  		return x.ColumnVindexes
   373  	}
   374  	return nil
   375  }
   376  
   377  func (x *Table) GetAutoIncrement() *AutoIncrement {
   378  	if x != nil {
   379  		return x.AutoIncrement
   380  	}
   381  	return nil
   382  }
   383  
   384  func (x *Table) GetColumns() []*Column {
   385  	if x != nil {
   386  		return x.Columns
   387  	}
   388  	return nil
   389  }
   390  
   391  func (x *Table) GetPinned() string {
   392  	if x != nil {
   393  		return x.Pinned
   394  	}
   395  	return ""
   396  }
   397  
   398  func (x *Table) GetColumnListAuthoritative() bool {
   399  	if x != nil {
   400  		return x.ColumnListAuthoritative
   401  	}
   402  	return false
   403  }
   404  
   405  func (x *Table) GetSource() string {
   406  	if x != nil {
   407  		return x.Source
   408  	}
   409  	return ""
   410  }
   411  
   412  // ColumnVindex is used to associate a column to a vindex.
   413  type ColumnVindex struct {
   414  	state         protoimpl.MessageState
   415  	sizeCache     protoimpl.SizeCache
   416  	unknownFields protoimpl.UnknownFields
   417  
   418  	// Legacy implementation, moving forward all vindexes should define a list of columns.
   419  	Column string `protobuf:"bytes,1,opt,name=column,proto3" json:"column,omitempty"`
   420  	// The name must match a vindex defined in Keyspace.
   421  	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
   422  	// List of columns that define this Vindex
   423  	Columns []string `protobuf:"bytes,3,rep,name=columns,proto3" json:"columns,omitempty"`
   424  }
   425  
   426  func (x *ColumnVindex) Reset() {
   427  	*x = ColumnVindex{}
   428  	if protoimpl.UnsafeEnabled {
   429  		mi := &file_vschema_proto_msgTypes[5]
   430  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   431  		ms.StoreMessageInfo(mi)
   432  	}
   433  }
   434  
   435  func (x *ColumnVindex) String() string {
   436  	return protoimpl.X.MessageStringOf(x)
   437  }
   438  
   439  func (*ColumnVindex) ProtoMessage() {}
   440  
   441  func (x *ColumnVindex) ProtoReflect() protoreflect.Message {
   442  	mi := &file_vschema_proto_msgTypes[5]
   443  	if protoimpl.UnsafeEnabled && x != nil {
   444  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   445  		if ms.LoadMessageInfo() == nil {
   446  			ms.StoreMessageInfo(mi)
   447  		}
   448  		return ms
   449  	}
   450  	return mi.MessageOf(x)
   451  }
   452  
   453  // Deprecated: Use ColumnVindex.ProtoReflect.Descriptor instead.
   454  func (*ColumnVindex) Descriptor() ([]byte, []int) {
   455  	return file_vschema_proto_rawDescGZIP(), []int{5}
   456  }
   457  
   458  func (x *ColumnVindex) GetColumn() string {
   459  	if x != nil {
   460  		return x.Column
   461  	}
   462  	return ""
   463  }
   464  
   465  func (x *ColumnVindex) GetName() string {
   466  	if x != nil {
   467  		return x.Name
   468  	}
   469  	return ""
   470  }
   471  
   472  func (x *ColumnVindex) GetColumns() []string {
   473  	if x != nil {
   474  		return x.Columns
   475  	}
   476  	return nil
   477  }
   478  
   479  // Autoincrement is used to designate a column as auto-inc.
   480  type AutoIncrement struct {
   481  	state         protoimpl.MessageState
   482  	sizeCache     protoimpl.SizeCache
   483  	unknownFields protoimpl.UnknownFields
   484  
   485  	Column string `protobuf:"bytes,1,opt,name=column,proto3" json:"column,omitempty"`
   486  	// The sequence must match a table of type SEQUENCE.
   487  	Sequence string `protobuf:"bytes,2,opt,name=sequence,proto3" json:"sequence,omitempty"`
   488  }
   489  
   490  func (x *AutoIncrement) Reset() {
   491  	*x = AutoIncrement{}
   492  	if protoimpl.UnsafeEnabled {
   493  		mi := &file_vschema_proto_msgTypes[6]
   494  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   495  		ms.StoreMessageInfo(mi)
   496  	}
   497  }
   498  
   499  func (x *AutoIncrement) String() string {
   500  	return protoimpl.X.MessageStringOf(x)
   501  }
   502  
   503  func (*AutoIncrement) ProtoMessage() {}
   504  
   505  func (x *AutoIncrement) ProtoReflect() protoreflect.Message {
   506  	mi := &file_vschema_proto_msgTypes[6]
   507  	if protoimpl.UnsafeEnabled && x != nil {
   508  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   509  		if ms.LoadMessageInfo() == nil {
   510  			ms.StoreMessageInfo(mi)
   511  		}
   512  		return ms
   513  	}
   514  	return mi.MessageOf(x)
   515  }
   516  
   517  // Deprecated: Use AutoIncrement.ProtoReflect.Descriptor instead.
   518  func (*AutoIncrement) Descriptor() ([]byte, []int) {
   519  	return file_vschema_proto_rawDescGZIP(), []int{6}
   520  }
   521  
   522  func (x *AutoIncrement) GetColumn() string {
   523  	if x != nil {
   524  		return x.Column
   525  	}
   526  	return ""
   527  }
   528  
   529  func (x *AutoIncrement) GetSequence() string {
   530  	if x != nil {
   531  		return x.Sequence
   532  	}
   533  	return ""
   534  }
   535  
   536  // Column describes a column.
   537  type Column struct {
   538  	state         protoimpl.MessageState
   539  	sizeCache     protoimpl.SizeCache
   540  	unknownFields protoimpl.UnknownFields
   541  
   542  	Name string     `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   543  	Type query.Type `protobuf:"varint,2,opt,name=type,proto3,enum=query.Type" json:"type,omitempty"`
   544  }
   545  
   546  func (x *Column) Reset() {
   547  	*x = Column{}
   548  	if protoimpl.UnsafeEnabled {
   549  		mi := &file_vschema_proto_msgTypes[7]
   550  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   551  		ms.StoreMessageInfo(mi)
   552  	}
   553  }
   554  
   555  func (x *Column) String() string {
   556  	return protoimpl.X.MessageStringOf(x)
   557  }
   558  
   559  func (*Column) ProtoMessage() {}
   560  
   561  func (x *Column) ProtoReflect() protoreflect.Message {
   562  	mi := &file_vschema_proto_msgTypes[7]
   563  	if protoimpl.UnsafeEnabled && x != nil {
   564  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   565  		if ms.LoadMessageInfo() == nil {
   566  			ms.StoreMessageInfo(mi)
   567  		}
   568  		return ms
   569  	}
   570  	return mi.MessageOf(x)
   571  }
   572  
   573  // Deprecated: Use Column.ProtoReflect.Descriptor instead.
   574  func (*Column) Descriptor() ([]byte, []int) {
   575  	return file_vschema_proto_rawDescGZIP(), []int{7}
   576  }
   577  
   578  func (x *Column) GetName() string {
   579  	if x != nil {
   580  		return x.Name
   581  	}
   582  	return ""
   583  }
   584  
   585  func (x *Column) GetType() query.Type {
   586  	if x != nil {
   587  		return x.Type
   588  	}
   589  	return query.Type(0)
   590  }
   591  
   592  // SrvVSchema is the roll-up of all the Keyspace schema for a cell.
   593  type SrvVSchema struct {
   594  	state         protoimpl.MessageState
   595  	sizeCache     protoimpl.SizeCache
   596  	unknownFields protoimpl.UnknownFields
   597  
   598  	// keyspaces is a map of keyspace name -> Keyspace object.
   599  	Keyspaces         map[string]*Keyspace `protobuf:"bytes,1,rep,name=keyspaces,proto3" json:"keyspaces,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   600  	RoutingRules      *RoutingRules        `protobuf:"bytes,2,opt,name=routing_rules,json=routingRules,proto3" json:"routing_rules,omitempty"` // table routing rules
   601  	ShardRoutingRules *ShardRoutingRules   `protobuf:"bytes,3,opt,name=shard_routing_rules,json=shardRoutingRules,proto3" json:"shard_routing_rules,omitempty"`
   602  }
   603  
   604  func (x *SrvVSchema) Reset() {
   605  	*x = SrvVSchema{}
   606  	if protoimpl.UnsafeEnabled {
   607  		mi := &file_vschema_proto_msgTypes[8]
   608  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   609  		ms.StoreMessageInfo(mi)
   610  	}
   611  }
   612  
   613  func (x *SrvVSchema) String() string {
   614  	return protoimpl.X.MessageStringOf(x)
   615  }
   616  
   617  func (*SrvVSchema) ProtoMessage() {}
   618  
   619  func (x *SrvVSchema) ProtoReflect() protoreflect.Message {
   620  	mi := &file_vschema_proto_msgTypes[8]
   621  	if protoimpl.UnsafeEnabled && x != nil {
   622  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   623  		if ms.LoadMessageInfo() == nil {
   624  			ms.StoreMessageInfo(mi)
   625  		}
   626  		return ms
   627  	}
   628  	return mi.MessageOf(x)
   629  }
   630  
   631  // Deprecated: Use SrvVSchema.ProtoReflect.Descriptor instead.
   632  func (*SrvVSchema) Descriptor() ([]byte, []int) {
   633  	return file_vschema_proto_rawDescGZIP(), []int{8}
   634  }
   635  
   636  func (x *SrvVSchema) GetKeyspaces() map[string]*Keyspace {
   637  	if x != nil {
   638  		return x.Keyspaces
   639  	}
   640  	return nil
   641  }
   642  
   643  func (x *SrvVSchema) GetRoutingRules() *RoutingRules {
   644  	if x != nil {
   645  		return x.RoutingRules
   646  	}
   647  	return nil
   648  }
   649  
   650  func (x *SrvVSchema) GetShardRoutingRules() *ShardRoutingRules {
   651  	if x != nil {
   652  		return x.ShardRoutingRules
   653  	}
   654  	return nil
   655  }
   656  
   657  // ShardRoutingRules specify the shard routing rules for the VSchema.
   658  type ShardRoutingRules struct {
   659  	state         protoimpl.MessageState
   660  	sizeCache     protoimpl.SizeCache
   661  	unknownFields protoimpl.UnknownFields
   662  
   663  	Rules []*ShardRoutingRule `protobuf:"bytes,1,rep,name=rules,proto3" json:"rules,omitempty"`
   664  }
   665  
   666  func (x *ShardRoutingRules) Reset() {
   667  	*x = ShardRoutingRules{}
   668  	if protoimpl.UnsafeEnabled {
   669  		mi := &file_vschema_proto_msgTypes[9]
   670  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   671  		ms.StoreMessageInfo(mi)
   672  	}
   673  }
   674  
   675  func (x *ShardRoutingRules) String() string {
   676  	return protoimpl.X.MessageStringOf(x)
   677  }
   678  
   679  func (*ShardRoutingRules) ProtoMessage() {}
   680  
   681  func (x *ShardRoutingRules) ProtoReflect() protoreflect.Message {
   682  	mi := &file_vschema_proto_msgTypes[9]
   683  	if protoimpl.UnsafeEnabled && x != nil {
   684  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   685  		if ms.LoadMessageInfo() == nil {
   686  			ms.StoreMessageInfo(mi)
   687  		}
   688  		return ms
   689  	}
   690  	return mi.MessageOf(x)
   691  }
   692  
   693  // Deprecated: Use ShardRoutingRules.ProtoReflect.Descriptor instead.
   694  func (*ShardRoutingRules) Descriptor() ([]byte, []int) {
   695  	return file_vschema_proto_rawDescGZIP(), []int{9}
   696  }
   697  
   698  func (x *ShardRoutingRules) GetRules() []*ShardRoutingRule {
   699  	if x != nil {
   700  		return x.Rules
   701  	}
   702  	return nil
   703  }
   704  
   705  // RoutingRule specifies a routing rule.
   706  type ShardRoutingRule struct {
   707  	state         protoimpl.MessageState
   708  	sizeCache     protoimpl.SizeCache
   709  	unknownFields protoimpl.UnknownFields
   710  
   711  	FromKeyspace string `protobuf:"bytes,1,opt,name=from_keyspace,json=fromKeyspace,proto3" json:"from_keyspace,omitempty"`
   712  	ToKeyspace   string `protobuf:"bytes,2,opt,name=to_keyspace,json=toKeyspace,proto3" json:"to_keyspace,omitempty"`
   713  	Shard        string `protobuf:"bytes,3,opt,name=shard,proto3" json:"shard,omitempty"`
   714  }
   715  
   716  func (x *ShardRoutingRule) Reset() {
   717  	*x = ShardRoutingRule{}
   718  	if protoimpl.UnsafeEnabled {
   719  		mi := &file_vschema_proto_msgTypes[10]
   720  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   721  		ms.StoreMessageInfo(mi)
   722  	}
   723  }
   724  
   725  func (x *ShardRoutingRule) String() string {
   726  	return protoimpl.X.MessageStringOf(x)
   727  }
   728  
   729  func (*ShardRoutingRule) ProtoMessage() {}
   730  
   731  func (x *ShardRoutingRule) ProtoReflect() protoreflect.Message {
   732  	mi := &file_vschema_proto_msgTypes[10]
   733  	if protoimpl.UnsafeEnabled && x != nil {
   734  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   735  		if ms.LoadMessageInfo() == nil {
   736  			ms.StoreMessageInfo(mi)
   737  		}
   738  		return ms
   739  	}
   740  	return mi.MessageOf(x)
   741  }
   742  
   743  // Deprecated: Use ShardRoutingRule.ProtoReflect.Descriptor instead.
   744  func (*ShardRoutingRule) Descriptor() ([]byte, []int) {
   745  	return file_vschema_proto_rawDescGZIP(), []int{10}
   746  }
   747  
   748  func (x *ShardRoutingRule) GetFromKeyspace() string {
   749  	if x != nil {
   750  		return x.FromKeyspace
   751  	}
   752  	return ""
   753  }
   754  
   755  func (x *ShardRoutingRule) GetToKeyspace() string {
   756  	if x != nil {
   757  		return x.ToKeyspace
   758  	}
   759  	return ""
   760  }
   761  
   762  func (x *ShardRoutingRule) GetShard() string {
   763  	if x != nil {
   764  		return x.Shard
   765  	}
   766  	return ""
   767  }
   768  
   769  var File_vschema_proto protoreflect.FileDescriptor
   770  
   771  var file_vschema_proto_rawDesc = []byte{
   772  	0x0a, 0x0d, 0x76, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
   773  	0x07, 0x76, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x1a, 0x0b, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e,
   774  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x3a, 0x0a, 0x0c, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67,
   775  	0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x01,
   776  	0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x76, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x52,
   777  	0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65,
   778  	0x73, 0x22, 0x49, 0x0a, 0x0b, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65,
   779  	0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01,
   780  	0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12,
   781  	0x1b, 0x0a, 0x09, 0x74, 0x6f, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03,
   782  	0x28, 0x09, 0x52, 0x08, 0x74, 0x6f, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x22, 0xeb, 0x02, 0x0a,
   783  	0x08, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x68, 0x61,
   784  	0x72, 0x64, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x68, 0x61, 0x72,
   785  	0x64, 0x65, 0x64, 0x12, 0x3b, 0x0a, 0x08, 0x76, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x18,
   786  	0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x76, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e,
   787  	0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x2e, 0x56, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65,
   788  	0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x76, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73,
   789  	0x12, 0x35, 0x0a, 0x06, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b,
   790  	0x32, 0x1d, 0x2e, 0x76, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x70,
   791  	0x61, 0x63, 0x65, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
   792  	0x06, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x12, 0x38, 0x0a, 0x18, 0x72, 0x65, 0x71, 0x75, 0x69,
   793  	0x72, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x74,
   794  	0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x72, 0x65, 0x71, 0x75, 0x69,
   795  	0x72, 0x65, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e,
   796  	0x67, 0x1a, 0x4c, 0x0a, 0x0d, 0x56, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x45, 0x6e, 0x74,
   797  	0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
   798  	0x03, 0x6b, 0x65, 0x79, 0x12, 0x25, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20,
   799  	0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x76, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x56, 0x69,
   800  	0x6e, 0x64, 0x65, 0x78, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a,
   801  	0x49, 0x0a, 0x0b, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10,
   802  	0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
   803  	0x12, 0x24, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
   804  	0x0e, 0x2e, 0x76, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x52,
   805  	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xa2, 0x01, 0x0a, 0x06, 0x56,
   806  	0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20,
   807  	0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x33, 0x0a, 0x06, 0x70, 0x61, 0x72,
   808  	0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x76, 0x73, 0x63, 0x68,
   809  	0x65, 0x6d, 0x61, 0x2e, 0x56, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d,
   810  	0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x14,
   811  	0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f,
   812  	0x77, 0x6e, 0x65, 0x72, 0x1a, 0x39, 0x0a, 0x0b, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x45, 0x6e,
   813  	0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
   814  	0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
   815  	0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22,
   816  	0xb1, 0x02, 0x0a, 0x05, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70,
   817  	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x3e, 0x0a,
   818  	0x0f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x5f, 0x76, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73,
   819  	0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61,
   820  	0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x56, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x0e, 0x63,
   821  	0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x56, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x12, 0x3d, 0x0a,
   822  	0x0e, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18,
   823  	0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x76, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e,
   824  	0x41, 0x75, 0x74, 0x6f, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0d, 0x61,
   825  	0x75, 0x74, 0x6f, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x07,
   826  	0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e,
   827  	0x76, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x52, 0x07,
   828  	0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x69, 0x6e, 0x6e, 0x65,
   829  	0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x12,
   830  	0x3a, 0x0a, 0x19, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x61,
   831  	0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x61, 0x74, 0x69, 0x76, 0x65, 0x18, 0x06, 0x20, 0x01,
   832  	0x28, 0x08, 0x52, 0x17, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x75,
   833  	0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x61, 0x74, 0x69, 0x76, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73,
   834  	0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75,
   835  	0x72, 0x63, 0x65, 0x22, 0x54, 0x0a, 0x0c, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x56, 0x69, 0x6e,
   836  	0x64, 0x65, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x01, 0x20,
   837  	0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e,
   838  	0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
   839  	0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09,
   840  	0x52, 0x07, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x22, 0x43, 0x0a, 0x0d, 0x41, 0x75, 0x74,
   841  	0x6f, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f,
   842  	0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6c, 0x75,
   843  	0x6d, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02,
   844  	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x22, 0x3d,
   845  	0x0a, 0x06, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
   846  	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x04,
   847  	0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0b, 0x2e, 0x71, 0x75, 0x65,
   848  	0x72, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0xa7, 0x02,
   849  	0x0a, 0x0a, 0x53, 0x72, 0x76, 0x56, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x40, 0x0a, 0x09,
   850  	0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
   851  	0x22, 0x2e, 0x76, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x53, 0x72, 0x76, 0x56, 0x53, 0x63,
   852  	0x68, 0x65, 0x6d, 0x61, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x45, 0x6e,
   853  	0x74, 0x72, 0x79, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0x3a,
   854  	0x0a, 0x0d, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18,
   855  	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e,
   856  	0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x0c, 0x72, 0x6f,
   857  	0x75, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x4a, 0x0a, 0x13, 0x73, 0x68,
   858  	0x61, 0x72, 0x64, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x75, 0x6c, 0x65,
   859  	0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x76, 0x73, 0x63, 0x68, 0x65, 0x6d,
   860  	0x61, 0x2e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x75,
   861  	0x6c, 0x65, 0x73, 0x52, 0x11, 0x73, 0x68, 0x61, 0x72, 0x64, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e,
   862  	0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x1a, 0x4f, 0x0a, 0x0e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61,
   863  	0x63, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
   864  	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x27, 0x0a, 0x05, 0x76, 0x61,
   865  	0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x76, 0x73, 0x63, 0x68,
   866  	0x65, 0x6d, 0x61, 0x2e, 0x4b, 0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x52, 0x05, 0x76, 0x61,
   867  	0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x44, 0x0a, 0x11, 0x53, 0x68, 0x61, 0x72, 0x64,
   868  	0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x05,
   869  	0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x76, 0x73,
   870  	0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x6f, 0x75, 0x74, 0x69,
   871  	0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x22, 0x6e, 0x0a,
   872  	0x10, 0x53, 0x68, 0x61, 0x72, 0x64, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c,
   873  	0x65, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x70, 0x61,
   874  	0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x4b, 0x65,
   875  	0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79,
   876  	0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x6f, 0x4b,
   877  	0x65, 0x79, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64,
   878  	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x68, 0x61, 0x72, 0x64, 0x42, 0x26, 0x5a,
   879  	0x24, 0x76, 0x69, 0x74, 0x65, 0x73, 0x73, 0x2e, 0x69, 0x6f, 0x2f, 0x76, 0x69, 0x74, 0x65, 0x73,
   880  	0x73, 0x2f, 0x67, 0x6f, 0x2f, 0x76, 0x74, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x73,
   881  	0x63, 0x68, 0x65, 0x6d, 0x61, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
   882  }
   883  
   884  var (
   885  	file_vschema_proto_rawDescOnce sync.Once
   886  	file_vschema_proto_rawDescData = file_vschema_proto_rawDesc
   887  )
   888  
   889  func file_vschema_proto_rawDescGZIP() []byte {
   890  	file_vschema_proto_rawDescOnce.Do(func() {
   891  		file_vschema_proto_rawDescData = protoimpl.X.CompressGZIP(file_vschema_proto_rawDescData)
   892  	})
   893  	return file_vschema_proto_rawDescData
   894  }
   895  
   896  var file_vschema_proto_msgTypes = make([]protoimpl.MessageInfo, 15)
   897  var file_vschema_proto_goTypes = []interface{}{
   898  	(*RoutingRules)(nil),      // 0: vschema.RoutingRules
   899  	(*RoutingRule)(nil),       // 1: vschema.RoutingRule
   900  	(*Keyspace)(nil),          // 2: vschema.Keyspace
   901  	(*Vindex)(nil),            // 3: vschema.Vindex
   902  	(*Table)(nil),             // 4: vschema.Table
   903  	(*ColumnVindex)(nil),      // 5: vschema.ColumnVindex
   904  	(*AutoIncrement)(nil),     // 6: vschema.AutoIncrement
   905  	(*Column)(nil),            // 7: vschema.Column
   906  	(*SrvVSchema)(nil),        // 8: vschema.SrvVSchema
   907  	(*ShardRoutingRules)(nil), // 9: vschema.ShardRoutingRules
   908  	(*ShardRoutingRule)(nil),  // 10: vschema.ShardRoutingRule
   909  	nil,                       // 11: vschema.Keyspace.VindexesEntry
   910  	nil,                       // 12: vschema.Keyspace.TablesEntry
   911  	nil,                       // 13: vschema.Vindex.ParamsEntry
   912  	nil,                       // 14: vschema.SrvVSchema.KeyspacesEntry
   913  	(query.Type)(0),           // 15: query.Type
   914  }
   915  var file_vschema_proto_depIdxs = []int32{
   916  	1,  // 0: vschema.RoutingRules.rules:type_name -> vschema.RoutingRule
   917  	11, // 1: vschema.Keyspace.vindexes:type_name -> vschema.Keyspace.VindexesEntry
   918  	12, // 2: vschema.Keyspace.tables:type_name -> vschema.Keyspace.TablesEntry
   919  	13, // 3: vschema.Vindex.params:type_name -> vschema.Vindex.ParamsEntry
   920  	5,  // 4: vschema.Table.column_vindexes:type_name -> vschema.ColumnVindex
   921  	6,  // 5: vschema.Table.auto_increment:type_name -> vschema.AutoIncrement
   922  	7,  // 6: vschema.Table.columns:type_name -> vschema.Column
   923  	15, // 7: vschema.Column.type:type_name -> query.Type
   924  	14, // 8: vschema.SrvVSchema.keyspaces:type_name -> vschema.SrvVSchema.KeyspacesEntry
   925  	0,  // 9: vschema.SrvVSchema.routing_rules:type_name -> vschema.RoutingRules
   926  	9,  // 10: vschema.SrvVSchema.shard_routing_rules:type_name -> vschema.ShardRoutingRules
   927  	10, // 11: vschema.ShardRoutingRules.rules:type_name -> vschema.ShardRoutingRule
   928  	3,  // 12: vschema.Keyspace.VindexesEntry.value:type_name -> vschema.Vindex
   929  	4,  // 13: vschema.Keyspace.TablesEntry.value:type_name -> vschema.Table
   930  	2,  // 14: vschema.SrvVSchema.KeyspacesEntry.value:type_name -> vschema.Keyspace
   931  	15, // [15:15] is the sub-list for method output_type
   932  	15, // [15:15] is the sub-list for method input_type
   933  	15, // [15:15] is the sub-list for extension type_name
   934  	15, // [15:15] is the sub-list for extension extendee
   935  	0,  // [0:15] is the sub-list for field type_name
   936  }
   937  
   938  func init() { file_vschema_proto_init() }
   939  func file_vschema_proto_init() {
   940  	if File_vschema_proto != nil {
   941  		return
   942  	}
   943  	if !protoimpl.UnsafeEnabled {
   944  		file_vschema_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
   945  			switch v := v.(*RoutingRules); i {
   946  			case 0:
   947  				return &v.state
   948  			case 1:
   949  				return &v.sizeCache
   950  			case 2:
   951  				return &v.unknownFields
   952  			default:
   953  				return nil
   954  			}
   955  		}
   956  		file_vschema_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
   957  			switch v := v.(*RoutingRule); i {
   958  			case 0:
   959  				return &v.state
   960  			case 1:
   961  				return &v.sizeCache
   962  			case 2:
   963  				return &v.unknownFields
   964  			default:
   965  				return nil
   966  			}
   967  		}
   968  		file_vschema_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
   969  			switch v := v.(*Keyspace); i {
   970  			case 0:
   971  				return &v.state
   972  			case 1:
   973  				return &v.sizeCache
   974  			case 2:
   975  				return &v.unknownFields
   976  			default:
   977  				return nil
   978  			}
   979  		}
   980  		file_vschema_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
   981  			switch v := v.(*Vindex); i {
   982  			case 0:
   983  				return &v.state
   984  			case 1:
   985  				return &v.sizeCache
   986  			case 2:
   987  				return &v.unknownFields
   988  			default:
   989  				return nil
   990  			}
   991  		}
   992  		file_vschema_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
   993  			switch v := v.(*Table); i {
   994  			case 0:
   995  				return &v.state
   996  			case 1:
   997  				return &v.sizeCache
   998  			case 2:
   999  				return &v.unknownFields
  1000  			default:
  1001  				return nil
  1002  			}
  1003  		}
  1004  		file_vschema_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  1005  			switch v := v.(*ColumnVindex); i {
  1006  			case 0:
  1007  				return &v.state
  1008  			case 1:
  1009  				return &v.sizeCache
  1010  			case 2:
  1011  				return &v.unknownFields
  1012  			default:
  1013  				return nil
  1014  			}
  1015  		}
  1016  		file_vschema_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  1017  			switch v := v.(*AutoIncrement); i {
  1018  			case 0:
  1019  				return &v.state
  1020  			case 1:
  1021  				return &v.sizeCache
  1022  			case 2:
  1023  				return &v.unknownFields
  1024  			default:
  1025  				return nil
  1026  			}
  1027  		}
  1028  		file_vschema_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  1029  			switch v := v.(*Column); i {
  1030  			case 0:
  1031  				return &v.state
  1032  			case 1:
  1033  				return &v.sizeCache
  1034  			case 2:
  1035  				return &v.unknownFields
  1036  			default:
  1037  				return nil
  1038  			}
  1039  		}
  1040  		file_vschema_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  1041  			switch v := v.(*SrvVSchema); i {
  1042  			case 0:
  1043  				return &v.state
  1044  			case 1:
  1045  				return &v.sizeCache
  1046  			case 2:
  1047  				return &v.unknownFields
  1048  			default:
  1049  				return nil
  1050  			}
  1051  		}
  1052  		file_vschema_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  1053  			switch v := v.(*ShardRoutingRules); i {
  1054  			case 0:
  1055  				return &v.state
  1056  			case 1:
  1057  				return &v.sizeCache
  1058  			case 2:
  1059  				return &v.unknownFields
  1060  			default:
  1061  				return nil
  1062  			}
  1063  		}
  1064  		file_vschema_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  1065  			switch v := v.(*ShardRoutingRule); i {
  1066  			case 0:
  1067  				return &v.state
  1068  			case 1:
  1069  				return &v.sizeCache
  1070  			case 2:
  1071  				return &v.unknownFields
  1072  			default:
  1073  				return nil
  1074  			}
  1075  		}
  1076  	}
  1077  	type x struct{}
  1078  	out := protoimpl.TypeBuilder{
  1079  		File: protoimpl.DescBuilder{
  1080  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1081  			RawDescriptor: file_vschema_proto_rawDesc,
  1082  			NumEnums:      0,
  1083  			NumMessages:   15,
  1084  			NumExtensions: 0,
  1085  			NumServices:   0,
  1086  		},
  1087  		GoTypes:           file_vschema_proto_goTypes,
  1088  		DependencyIndexes: file_vschema_proto_depIdxs,
  1089  		MessageInfos:      file_vschema_proto_msgTypes,
  1090  	}.Build()
  1091  	File_vschema_proto = out.File
  1092  	file_vschema_proto_rawDesc = nil
  1093  	file_vschema_proto_goTypes = nil
  1094  	file_vschema_proto_depIdxs = nil
  1095  }