Documentation
¶
Index ¶
- Variables
- type AutoIncrement
- func (x *AutoIncrement) GetColumn() string
- func (x *AutoIncrement) GetSequence() string
- func (*AutoIncrement) ProtoMessage()
- func (x *AutoIncrement) ProtoReflect() protoreflect.Message
- func (x *AutoIncrement) Reset()
- func (x *AutoIncrement) SetColumn(v string)
- func (x *AutoIncrement) SetSequence(v string)
- func (x *AutoIncrement) String() string
- type AutoIncrement_builder
- type Column
- func (x *Column) ClearNullable()
- func (x *Column) GetCollationName() string
- func (x *Column) GetDefault() string
- func (x *Column) GetInvisible() bool
- func (x *Column) GetName() string
- func (x *Column) GetNullable() bool
- func (x *Column) GetScale() int32
- func (x *Column) GetSize() int32
- func (x *Column) GetType() v19.Type
- func (x *Column) GetValues() []string
- func (x *Column) HasNullable() bool
- func (*Column) ProtoMessage()
- func (x *Column) ProtoReflect() protoreflect.Message
- func (x *Column) Reset()
- func (x *Column) SetCollationName(v string)
- func (x *Column) SetDefault(v string)
- func (x *Column) SetInvisible(v bool)
- func (x *Column) SetName(v string)
- func (x *Column) SetNullable(v bool)
- func (x *Column) SetScale(v int32)
- func (x *Column) SetSize(v int32)
- func (x *Column) SetType(v v19.Type)
- func (x *Column) SetValues(v []string)
- func (x *Column) String() string
- type ColumnVindex
- func (x *ColumnVindex) GetColumn() string
- func (x *ColumnVindex) GetColumns() []string
- func (x *ColumnVindex) GetName() string
- func (*ColumnVindex) ProtoMessage()
- func (x *ColumnVindex) ProtoReflect() protoreflect.Message
- func (x *ColumnVindex) Reset()
- func (x *ColumnVindex) SetColumn(v string)
- func (x *ColumnVindex) SetColumns(v []string)
- func (x *ColumnVindex) SetName(v string)
- func (x *ColumnVindex) String() string
- type ColumnVindex_builder
- type Column_builder
- type Keyspace
- func (x *Keyspace) GetForeignKeyMode() Keyspace_ForeignKeyMode
- func (x *Keyspace) GetRequireExplicitRouting() bool
- func (x *Keyspace) GetSharded() bool
- func (x *Keyspace) GetTables() map[string]*Table
- func (x *Keyspace) GetVindexes() map[string]*Vindex
- func (*Keyspace) ProtoMessage()
- func (x *Keyspace) ProtoReflect() protoreflect.Message
- func (x *Keyspace) Reset()
- func (x *Keyspace) SetForeignKeyMode(v Keyspace_ForeignKeyMode)
- func (x *Keyspace) SetRequireExplicitRouting(v bool)
- func (x *Keyspace) SetSharded(v bool)
- func (x *Keyspace) SetTables(v map[string]*Table)
- func (x *Keyspace) SetVindexes(v map[string]*Vindex)
- func (x *Keyspace) String() string
- type Keyspace_ForeignKeyMode
- func (Keyspace_ForeignKeyMode) Descriptor() protoreflect.EnumDescriptor
- func (x Keyspace_ForeignKeyMode) Enum() *Keyspace_ForeignKeyMode
- func (x Keyspace_ForeignKeyMode) Number() protoreflect.EnumNumber
- func (x Keyspace_ForeignKeyMode) String() string
- func (Keyspace_ForeignKeyMode) Type() protoreflect.EnumType
- type Keyspace_builder
- type RoutingRule
- func (x *RoutingRule) GetFromTable() string
- func (x *RoutingRule) GetToTables() []string
- func (*RoutingRule) ProtoMessage()
- func (x *RoutingRule) ProtoReflect() protoreflect.Message
- func (x *RoutingRule) Reset()
- func (x *RoutingRule) SetFromTable(v string)
- func (x *RoutingRule) SetToTables(v []string)
- func (x *RoutingRule) String() string
- type RoutingRule_builder
- type RoutingRules
- type RoutingRules_builder
- type ShardRoutingRule
- func (x *ShardRoutingRule) GetFromKeyspace() string
- func (x *ShardRoutingRule) GetShard() string
- func (x *ShardRoutingRule) GetToKeyspace() string
- func (*ShardRoutingRule) ProtoMessage()
- func (x *ShardRoutingRule) ProtoReflect() protoreflect.Message
- func (x *ShardRoutingRule) Reset()
- func (x *ShardRoutingRule) SetFromKeyspace(v string)
- func (x *ShardRoutingRule) SetShard(v string)
- func (x *ShardRoutingRule) SetToKeyspace(v string)
- func (x *ShardRoutingRule) String() string
- type ShardRoutingRule_builder
- type ShardRoutingRules
- func (x *ShardRoutingRules) GetRules() []*ShardRoutingRule
- func (*ShardRoutingRules) ProtoMessage()
- func (x *ShardRoutingRules) ProtoReflect() protoreflect.Message
- func (x *ShardRoutingRules) Reset()
- func (x *ShardRoutingRules) SetRules(v []*ShardRoutingRule)
- func (x *ShardRoutingRules) String() string
- type ShardRoutingRules_builder
- type SrvVSchema
- func (x *SrvVSchema) ClearRoutingRules()
- func (x *SrvVSchema) ClearShardRoutingRules()
- func (x *SrvVSchema) GetKeyspaces() map[string]*Keyspace
- func (x *SrvVSchema) GetRoutingRules() *RoutingRules
- func (x *SrvVSchema) GetShardRoutingRules() *ShardRoutingRules
- func (x *SrvVSchema) HasRoutingRules() bool
- func (x *SrvVSchema) HasShardRoutingRules() bool
- func (*SrvVSchema) ProtoMessage()
- func (x *SrvVSchema) ProtoReflect() protoreflect.Message
- func (x *SrvVSchema) Reset()
- func (x *SrvVSchema) SetKeyspaces(v map[string]*Keyspace)
- func (x *SrvVSchema) SetRoutingRules(v *RoutingRules)
- func (x *SrvVSchema) SetShardRoutingRules(v *ShardRoutingRules)
- func (x *SrvVSchema) String() string
- type SrvVSchema_builder
- type Table
- func (x *Table) ClearAutoIncrement()
- func (x *Table) GetAutoIncrement() *AutoIncrement
- func (x *Table) GetColumnListAuthoritative() bool
- func (x *Table) GetColumnVindexes() []*ColumnVindex
- func (x *Table) GetColumns() []*Column
- func (x *Table) GetPinned() string
- func (x *Table) GetSource() string
- func (x *Table) GetType() string
- func (x *Table) HasAutoIncrement() bool
- func (*Table) ProtoMessage()
- func (x *Table) ProtoReflect() protoreflect.Message
- func (x *Table) Reset()
- func (x *Table) SetAutoIncrement(v *AutoIncrement)
- func (x *Table) SetColumnListAuthoritative(v bool)
- func (x *Table) SetColumnVindexes(v []*ColumnVindex)
- func (x *Table) SetColumns(v []*Column)
- func (x *Table) SetPinned(v string)
- func (x *Table) SetSource(v string)
- func (x *Table) SetType(v string)
- func (x *Table) String() string
- type Table_builder
- type Vindex
- func (x *Vindex) GetOwner() string
- func (x *Vindex) GetParams() map[string]string
- func (x *Vindex) GetType() string
- func (*Vindex) ProtoMessage()
- func (x *Vindex) ProtoReflect() protoreflect.Message
- func (x *Vindex) Reset()
- func (x *Vindex) SetOwner(v string)
- func (x *Vindex) SetParams(v map[string]string)
- func (x *Vindex) SetType(v string)
- func (x *Vindex) String() string
- type Vindex_builder
Constants ¶
This section is empty.
Variables ¶
View Source
var ( Keyspace_ForeignKeyMode_name = map[int32]string{ 0: "unspecified", 1: "disallow", 2: "unmanaged", 3: "managed", } Keyspace_ForeignKeyMode_value = map[string]int32{ "unspecified": 0, "disallow": 1, "unmanaged": 2, "managed": 3, } )
Enum value maps for Keyspace_ForeignKeyMode.
View Source
var File_vitess_vschema_v19_vschema_proto protoreflect.FileDescriptor
Functions ¶
This section is empty.
Types ¶
type AutoIncrement ¶
type AutoIncrement struct {
Column string `protobuf:"bytes,1,opt,name=column,proto3" json:"column,omitempty"`
// The sequence must match a table of type SEQUENCE.
Sequence string `protobuf:"bytes,2,opt,name=sequence,proto3" json:"sequence,omitempty"`
// contains filtered or unexported fields
}
Autoincrement is used to designate a column as auto-inc.
func (*AutoIncrement) GetColumn ¶
func (x *AutoIncrement) GetColumn() string
func (*AutoIncrement) GetSequence ¶
func (x *AutoIncrement) GetSequence() string
func (*AutoIncrement) ProtoMessage ¶
func (*AutoIncrement) ProtoMessage()
func (*AutoIncrement) ProtoReflect ¶
func (x *AutoIncrement) ProtoReflect() protoreflect.Message
func (*AutoIncrement) Reset ¶
func (x *AutoIncrement) Reset()
func (*AutoIncrement) SetColumn ¶
func (x *AutoIncrement) SetColumn(v string)
func (*AutoIncrement) SetSequence ¶
func (x *AutoIncrement) SetSequence(v string)
func (*AutoIncrement) String ¶
func (x *AutoIncrement) String() string
type AutoIncrement_builder ¶
type AutoIncrement_builder struct {
Column string
// The sequence must match a table of type SEQUENCE.
Sequence string
// contains filtered or unexported fields
}
func (AutoIncrement_builder) Build ¶
func (b0 AutoIncrement_builder) Build() *AutoIncrement
type Column ¶
type Column struct {
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Type v19.Type `protobuf:"varint,2,opt,name=type,proto3,enum=vitess.query.v19.Type" json:"type,omitempty"`
Invisible bool `protobuf:"varint,3,opt,name=invisible,proto3" json:"invisible,omitempty"`
Default string `protobuf:"bytes,4,opt,name=default,proto3" json:"default,omitempty"`
CollationName string `protobuf:"bytes,5,opt,name=collation_name,json=collationName,proto3" json:"collation_name,omitempty"`
Size int32 `protobuf:"varint,6,opt,name=size,proto3" json:"size,omitempty"`
Scale int32 `protobuf:"varint,7,opt,name=scale,proto3" json:"scale,omitempty"`
Nullable *bool `protobuf:"varint,8,opt,name=nullable,proto3,oneof" json:"nullable,omitempty"`
// values contains the list of values for an enum or set column.
Values []string `protobuf:"bytes,9,rep,name=values,proto3" json:"values,omitempty"`
// contains filtered or unexported fields
}
Column describes a column.
func (*Column) ProtoReflect ¶
func (x *Column) ProtoReflect() protoreflect.Message
type ColumnVindex ¶
type ColumnVindex struct {
// Legacy implementation, moving forward all vindexes should define a list of columns.
Column string `protobuf:"bytes,1,opt,name=column,proto3" json:"column,omitempty"`
// The name must match a vindex defined in Keyspace.
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
// List of columns that define this Vindex
Columns []string `protobuf:"bytes,3,rep,name=columns,proto3" json:"columns,omitempty"`
// contains filtered or unexported fields
}
ColumnVindex is used to associate a column to a vindex.
func (*ColumnVindex) GetColumn ¶
func (x *ColumnVindex) GetColumn() string
func (*ColumnVindex) GetColumns ¶
func (x *ColumnVindex) GetColumns() []string
func (*ColumnVindex) GetName ¶
func (x *ColumnVindex) GetName() string
func (*ColumnVindex) ProtoMessage ¶
func (*ColumnVindex) ProtoMessage()
func (*ColumnVindex) ProtoReflect ¶
func (x *ColumnVindex) ProtoReflect() protoreflect.Message
func (*ColumnVindex) Reset ¶
func (x *ColumnVindex) Reset()
func (*ColumnVindex) SetColumn ¶
func (x *ColumnVindex) SetColumn(v string)
func (*ColumnVindex) SetColumns ¶
func (x *ColumnVindex) SetColumns(v []string)
func (*ColumnVindex) SetName ¶
func (x *ColumnVindex) SetName(v string)
func (*ColumnVindex) String ¶
func (x *ColumnVindex) String() string
type ColumnVindex_builder ¶
type ColumnVindex_builder struct {
// Legacy implementation, moving forward all vindexes should define a list of columns.
Column string
// The name must match a vindex defined in Keyspace.
Name string
// List of columns that define this Vindex
Columns []string
// contains filtered or unexported fields
}
func (ColumnVindex_builder) Build ¶
func (b0 ColumnVindex_builder) Build() *ColumnVindex
type Column_builder ¶
type Column_builder struct {
Name string
Type v19.Type
Invisible bool
Default string
CollationName string
Size int32
Scale int32
Nullable *bool
// values contains the list of values for an enum or set column.
Values []string
// contains filtered or unexported fields
}
func (Column_builder) Build ¶
func (b0 Column_builder) Build() *Column
type Keyspace ¶
type Keyspace struct {
// If sharded is false, vindexes and tables are ignored.
Sharded bool `protobuf:"varint,1,opt,name=sharded,proto3" json:"sharded,omitempty"`
Vindexes map[string]*Vindex `` /* 143-byte string literal not displayed */
Tables map[string]*Table `` /* 139-byte string literal not displayed */
// If require_explicit_routing is true, vindexes and tables are not added to global routing
RequireExplicitRouting bool `` /* 130-byte string literal not displayed */
// foreign_key_mode dictates how Vitess should handle foreign keys for this keyspace.
ForeignKeyMode Keyspace_ForeignKeyMode `` /* 154-byte string literal not displayed */
// contains filtered or unexported fields
}
Keyspace is the vschema for a keyspace.
func (*Keyspace) GetForeignKeyMode ¶
func (x *Keyspace) GetForeignKeyMode() Keyspace_ForeignKeyMode
func (*Keyspace) ProtoReflect ¶
func (x *Keyspace) ProtoReflect() protoreflect.Message
func (*Keyspace) SetForeignKeyMode ¶
func (x *Keyspace) SetForeignKeyMode(v Keyspace_ForeignKeyMode)
type Keyspace_ForeignKeyMode ¶
type Keyspace_ForeignKeyMode int32
const ( Keyspace_unspecified Keyspace_ForeignKeyMode = 0 Keyspace_disallow Keyspace_ForeignKeyMode = 1 Keyspace_unmanaged Keyspace_ForeignKeyMode = 2 Keyspace_managed Keyspace_ForeignKeyMode = 3 )
func (Keyspace_ForeignKeyMode) Descriptor ¶
func (Keyspace_ForeignKeyMode) Descriptor() protoreflect.EnumDescriptor
func (Keyspace_ForeignKeyMode) Enum ¶
func (x Keyspace_ForeignKeyMode) Enum() *Keyspace_ForeignKeyMode
func (Keyspace_ForeignKeyMode) Number ¶
func (x Keyspace_ForeignKeyMode) Number() protoreflect.EnumNumber
func (Keyspace_ForeignKeyMode) String ¶
func (x Keyspace_ForeignKeyMode) String() string
func (Keyspace_ForeignKeyMode) Type ¶
func (Keyspace_ForeignKeyMode) Type() protoreflect.EnumType
type Keyspace_builder ¶
type Keyspace_builder struct {
// If sharded is false, vindexes and tables are ignored.
Sharded bool
Vindexes map[string]*Vindex
Tables map[string]*Table
// If require_explicit_routing is true, vindexes and tables are not added to global routing
RequireExplicitRouting bool
// foreign_key_mode dictates how Vitess should handle foreign keys for this keyspace.
ForeignKeyMode Keyspace_ForeignKeyMode
// contains filtered or unexported fields
}
func (Keyspace_builder) Build ¶
func (b0 Keyspace_builder) Build() *Keyspace
type RoutingRule ¶
type RoutingRule struct {
FromTable string `protobuf:"bytes,1,opt,name=from_table,json=fromTable,proto3" json:"from_table,omitempty"`
ToTables []string `protobuf:"bytes,2,rep,name=to_tables,json=toTables,proto3" json:"to_tables,omitempty"`
// contains filtered or unexported fields
}
RoutingRule specifies a routing rule.
func (*RoutingRule) GetFromTable ¶
func (x *RoutingRule) GetFromTable() string
func (*RoutingRule) GetToTables ¶
func (x *RoutingRule) GetToTables() []string
func (*RoutingRule) ProtoMessage ¶
func (*RoutingRule) ProtoMessage()
func (*RoutingRule) ProtoReflect ¶
func (x *RoutingRule) ProtoReflect() protoreflect.Message
func (*RoutingRule) Reset ¶
func (x *RoutingRule) Reset()
func (*RoutingRule) SetFromTable ¶
func (x *RoutingRule) SetFromTable(v string)
func (*RoutingRule) SetToTables ¶
func (x *RoutingRule) SetToTables(v []string)
func (*RoutingRule) String ¶
func (x *RoutingRule) String() string
type RoutingRule_builder ¶
type RoutingRule_builder struct {
FromTable string
ToTables []string
// contains filtered or unexported fields
}
func (RoutingRule_builder) Build ¶
func (b0 RoutingRule_builder) Build() *RoutingRule
type RoutingRules ¶
type RoutingRules struct {
// rules should ideally be a map. However protos dont't allow
// repeated fields as elements of a map. So, we use a list
// instead.
Rules []*RoutingRule `protobuf:"bytes,1,rep,name=rules,proto3" json:"rules,omitempty"`
// contains filtered or unexported fields
}
RoutingRules specify the high level routing rules for the VSchema.
func (*RoutingRules) GetRules ¶
func (x *RoutingRules) GetRules() []*RoutingRule
func (*RoutingRules) ProtoMessage ¶
func (*RoutingRules) ProtoMessage()
func (*RoutingRules) ProtoReflect ¶
func (x *RoutingRules) ProtoReflect() protoreflect.Message
func (*RoutingRules) Reset ¶
func (x *RoutingRules) Reset()
func (*RoutingRules) SetRules ¶
func (x *RoutingRules) SetRules(v []*RoutingRule)
func (*RoutingRules) String ¶
func (x *RoutingRules) String() string
type RoutingRules_builder ¶
type RoutingRules_builder struct {
// rules should ideally be a map. However protos dont't allow
// repeated fields as elements of a map. So, we use a list
// instead.
Rules []*RoutingRule
// contains filtered or unexported fields
}
func (RoutingRules_builder) Build ¶
func (b0 RoutingRules_builder) Build() *RoutingRules
type ShardRoutingRule ¶
type ShardRoutingRule struct {
FromKeyspace string `protobuf:"bytes,1,opt,name=from_keyspace,json=fromKeyspace,proto3" json:"from_keyspace,omitempty"`
ToKeyspace string `protobuf:"bytes,2,opt,name=to_keyspace,json=toKeyspace,proto3" json:"to_keyspace,omitempty"`
Shard string `protobuf:"bytes,3,opt,name=shard,proto3" json:"shard,omitempty"`
// contains filtered or unexported fields
}
RoutingRule specifies a routing rule.
func (*ShardRoutingRule) GetFromKeyspace ¶
func (x *ShardRoutingRule) GetFromKeyspace() string
func (*ShardRoutingRule) GetShard ¶
func (x *ShardRoutingRule) GetShard() string
func (*ShardRoutingRule) GetToKeyspace ¶
func (x *ShardRoutingRule) GetToKeyspace() string
func (*ShardRoutingRule) ProtoMessage ¶
func (*ShardRoutingRule) ProtoMessage()
func (*ShardRoutingRule) ProtoReflect ¶
func (x *ShardRoutingRule) ProtoReflect() protoreflect.Message
func (*ShardRoutingRule) Reset ¶
func (x *ShardRoutingRule) Reset()
func (*ShardRoutingRule) SetFromKeyspace ¶
func (x *ShardRoutingRule) SetFromKeyspace(v string)
func (*ShardRoutingRule) SetShard ¶
func (x *ShardRoutingRule) SetShard(v string)
func (*ShardRoutingRule) SetToKeyspace ¶
func (x *ShardRoutingRule) SetToKeyspace(v string)
func (*ShardRoutingRule) String ¶
func (x *ShardRoutingRule) String() string
type ShardRoutingRule_builder ¶
type ShardRoutingRule_builder struct {
FromKeyspace string
ToKeyspace string
Shard string
// contains filtered or unexported fields
}
func (ShardRoutingRule_builder) Build ¶
func (b0 ShardRoutingRule_builder) Build() *ShardRoutingRule
type ShardRoutingRules ¶
type ShardRoutingRules struct {
Rules []*ShardRoutingRule `protobuf:"bytes,1,rep,name=rules,proto3" json:"rules,omitempty"`
// contains filtered or unexported fields
}
ShardRoutingRules specify the shard routing rules for the VSchema.
func (*ShardRoutingRules) GetRules ¶
func (x *ShardRoutingRules) GetRules() []*ShardRoutingRule
func (*ShardRoutingRules) ProtoMessage ¶
func (*ShardRoutingRules) ProtoMessage()
func (*ShardRoutingRules) ProtoReflect ¶
func (x *ShardRoutingRules) ProtoReflect() protoreflect.Message
func (*ShardRoutingRules) Reset ¶
func (x *ShardRoutingRules) Reset()
func (*ShardRoutingRules) SetRules ¶
func (x *ShardRoutingRules) SetRules(v []*ShardRoutingRule)
func (*ShardRoutingRules) String ¶
func (x *ShardRoutingRules) String() string
type ShardRoutingRules_builder ¶
type ShardRoutingRules_builder struct {
Rules []*ShardRoutingRule
// contains filtered or unexported fields
}
func (ShardRoutingRules_builder) Build ¶
func (b0 ShardRoutingRules_builder) Build() *ShardRoutingRules
type SrvVSchema ¶
type SrvVSchema struct {
// keyspaces is a map of keyspace name -> Keyspace object.
Keyspaces map[string]*Keyspace `` /* 145-byte string literal not displayed */
RoutingRules *RoutingRules `protobuf:"bytes,2,opt,name=routing_rules,json=routingRules,proto3" json:"routing_rules,omitempty"` // table routing rules
ShardRoutingRules *ShardRoutingRules `protobuf:"bytes,3,opt,name=shard_routing_rules,json=shardRoutingRules,proto3" json:"shard_routing_rules,omitempty"`
// contains filtered or unexported fields
}
SrvVSchema is the roll-up of all the Keyspace schema for a cell.
func (*SrvVSchema) ClearRoutingRules ¶
func (x *SrvVSchema) ClearRoutingRules()
func (*SrvVSchema) ClearShardRoutingRules ¶
func (x *SrvVSchema) ClearShardRoutingRules()
func (*SrvVSchema) GetKeyspaces ¶
func (x *SrvVSchema) GetKeyspaces() map[string]*Keyspace
func (*SrvVSchema) GetRoutingRules ¶
func (x *SrvVSchema) GetRoutingRules() *RoutingRules
func (*SrvVSchema) GetShardRoutingRules ¶
func (x *SrvVSchema) GetShardRoutingRules() *ShardRoutingRules
func (*SrvVSchema) HasRoutingRules ¶
func (x *SrvVSchema) HasRoutingRules() bool
func (*SrvVSchema) HasShardRoutingRules ¶
func (x *SrvVSchema) HasShardRoutingRules() bool
func (*SrvVSchema) ProtoMessage ¶
func (*SrvVSchema) ProtoMessage()
func (*SrvVSchema) ProtoReflect ¶
func (x *SrvVSchema) ProtoReflect() protoreflect.Message
func (*SrvVSchema) Reset ¶
func (x *SrvVSchema) Reset()
func (*SrvVSchema) SetKeyspaces ¶
func (x *SrvVSchema) SetKeyspaces(v map[string]*Keyspace)
func (*SrvVSchema) SetRoutingRules ¶
func (x *SrvVSchema) SetRoutingRules(v *RoutingRules)
func (*SrvVSchema) SetShardRoutingRules ¶
func (x *SrvVSchema) SetShardRoutingRules(v *ShardRoutingRules)
func (*SrvVSchema) String ¶
func (x *SrvVSchema) String() string
type SrvVSchema_builder ¶
type SrvVSchema_builder struct {
// keyspaces is a map of keyspace name -> Keyspace object.
Keyspaces map[string]*Keyspace
RoutingRules *RoutingRules
ShardRoutingRules *ShardRoutingRules
// contains filtered or unexported fields
}
func (SrvVSchema_builder) Build ¶
func (b0 SrvVSchema_builder) Build() *SrvVSchema
type Table ¶
type Table struct {
// If the table is a sequence, type must be
// "sequence".
//
// If the table is a reference, type must be
// "reference".
// See https://vitess.io/docs/reference/features/vschema/#reference-tables.
//
// Otherwise, it should be empty.
Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
// column_vindexes associates columns to vindexes.
ColumnVindexes []*ColumnVindex `protobuf:"bytes,2,rep,name=column_vindexes,json=columnVindexes,proto3" json:"column_vindexes,omitempty"`
// auto_increment is specified if a column needs
// to be associated with a sequence.
AutoIncrement *AutoIncrement `protobuf:"bytes,3,opt,name=auto_increment,json=autoIncrement,proto3" json:"auto_increment,omitempty"`
// columns lists the columns for the table.
Columns []*Column `protobuf:"bytes,4,rep,name=columns,proto3" json:"columns,omitempty"`
// pinned pins an unsharded table to a specific
// shard, as dictated by the keyspace id.
// The keyspace id is represented in hex form
// like in keyranges.
Pinned string `protobuf:"bytes,5,opt,name=pinned,proto3" json:"pinned,omitempty"`
// column_list_authoritative is set to true if columns is
// an authoritative list for the table. This allows
// us to expand 'select *' expressions.
ColumnListAuthoritative bool `` /* 133-byte string literal not displayed */
// reference tables may optionally indicate their source table.
Source string `protobuf:"bytes,7,opt,name=source,proto3" json:"source,omitempty"`
// contains filtered or unexported fields
}
Table is the table info for a Keyspace.
func (*Table) GetAutoIncrement ¶
func (x *Table) GetAutoIncrement() *AutoIncrement
func (*Table) GetColumnVindexes ¶
func (x *Table) GetColumnVindexes() []*ColumnVindex
func (*Table) ProtoReflect ¶
func (x *Table) ProtoReflect() protoreflect.Message
func (*Table) SetAutoIncrement ¶
func (x *Table) SetAutoIncrement(v *AutoIncrement)
func (*Table) SetColumnVindexes ¶
func (x *Table) SetColumnVindexes(v []*ColumnVindex)
type Table_builder ¶
type Table_builder struct {
// If the table is a sequence, type must be
// "sequence".
//
// If the table is a reference, type must be
// "reference".
// See https://vitess.io/docs/reference/features/vschema/#reference-tables.
//
// Otherwise, it should be empty.
Type string
// column_vindexes associates columns to vindexes.
ColumnVindexes []*ColumnVindex
// auto_increment is specified if a column needs
// to be associated with a sequence.
AutoIncrement *AutoIncrement
// columns lists the columns for the table.
Columns []*Column
// pinned pins an unsharded table to a specific
// shard, as dictated by the keyspace id.
// The keyspace id is represented in hex form
// like in keyranges.
Pinned string
// column_list_authoritative is set to true if columns is
// an authoritative list for the table. This allows
// us to expand 'select *' expressions.
ColumnListAuthoritative bool
// reference tables may optionally indicate their source table.
Source string
// contains filtered or unexported fields
}
func (Table_builder) Build ¶
func (b0 Table_builder) Build() *Table
type Vindex ¶
type Vindex struct {
// The type must match one of the predefined
// (or plugged in) vindex names.
Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
// params is a map of attribute value pairs
// that must be defined as required by the
// vindex constructors. The values can only
// be strings.
Params map[string]string `` /* 139-byte string literal not displayed */
// A lookup vindex can have an owner table defined.
// If so, rows in the lookup table are created or
// deleted in sync with corresponding rows in the
// owner table.
Owner string `protobuf:"bytes,3,opt,name=owner,proto3" json:"owner,omitempty"`
// contains filtered or unexported fields
}
Vindex is the vindex info for a Keyspace.
func (*Vindex) ProtoReflect ¶
func (x *Vindex) ProtoReflect() protoreflect.Message
type Vindex_builder ¶
type Vindex_builder struct {
// The type must match one of the predefined
// (or plugged in) vindex names.
Type string
// params is a map of attribute value pairs
// that must be defined as required by the
// vindex constructors. The values can only
// be strings.
Params map[string]string
// A lookup vindex can have an owner table defined.
// If so, rows in the lookup table are created or
// deleted in sync with corresponding rows in the
// owner table.
Owner string
// contains filtered or unexported fields
}
func (Vindex_builder) Build ¶
func (b0 Vindex_builder) Build() *Vindex
Source Files
¶
- vschema.pb.go
Click to show internal directories.
Click to hide internal directories.