Help us shape the future of Go! Take the 2026 Go Developer Survey

topodata

package
v1.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 2, 2020 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var KeyspaceIdType_name = map[int32]string{
	0: "UNSET",
	1: "UINT64",
	2: "BYTES",
}
View Source
var KeyspaceIdType_value = map[string]int32{
	"UNSET":  0,
	"UINT64": 1,
	"BYTES":  2,
}
View Source
var KeyspaceType_name = map[int32]string{
	0: "NORMAL",
	1: "SNAPSHOT",
}
View Source
var KeyspaceType_value = map[string]int32{
	"NORMAL":   0,
	"SNAPSHOT": 1,
}
View Source
var TabletType_name = map[int32]string{
	0: "UNKNOWN",
	1: "MASTER",
	2: "REPLICA",
	3: "RDONLY",

	4: "SPARE",
	5: "EXPERIMENTAL",
	6: "BACKUP",
	7: "RESTORE",
	8: "DRAINED",
}
View Source
var TabletType_value = map[string]int32{
	"UNKNOWN":      0,
	"MASTER":       1,
	"REPLICA":      2,
	"RDONLY":       3,
	"BATCH":        3,
	"SPARE":        4,
	"EXPERIMENTAL": 5,
	"BACKUP":       6,
	"RESTORE":      7,
	"DRAINED":      8,
}

Functions

This section is empty.

Types

type CellInfo

type CellInfo struct {
	// ServerAddress contains the address of the server for the cell.
	// The syntax of this field is topology implementation specific.
	// For instance, for Zookeeper, it is a comma-separated list of
	// server addresses.
	ServerAddress string `protobuf:"bytes,1,opt,name=server_address,json=serverAddress,proto3" json:"server_address,omitempty"`
	// Root is the path to store data in. It is only used when talking
	// to server_address.
	Root                 string   `protobuf:"bytes,2,opt,name=root,proto3" json:"root,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

CellInfo contains information about a cell. CellInfo objects are stored in the global topology server, and describe how to reach local topology servers.

func (*CellInfo) Descriptor

func (*CellInfo) Descriptor() ([]byte, []int)

func (*CellInfo) GetRoot

func (m *CellInfo) GetRoot() string

func (*CellInfo) GetServerAddress

func (m *CellInfo) GetServerAddress() string

func (*CellInfo) ProtoMessage

func (*CellInfo) ProtoMessage()

func (*CellInfo) Reset

func (m *CellInfo) Reset()

func (*CellInfo) String

func (m *CellInfo) String() string

func (*CellInfo) XXX_DiscardUnknown

func (m *CellInfo) XXX_DiscardUnknown()

func (*CellInfo) XXX_Marshal

func (m *CellInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*CellInfo) XXX_Merge

func (m *CellInfo) XXX_Merge(src proto.Message)

func (*CellInfo) XXX_Size

func (m *CellInfo) XXX_Size() int

func (*CellInfo) XXX_Unmarshal

func (m *CellInfo) XXX_Unmarshal(b []byte) error

type CellsAlias

type CellsAlias struct {
	// Cells that map to this alias
	Cells                []string `protobuf:"bytes,2,rep,name=cells,proto3" json:"cells,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

CellsAlias

func (*CellsAlias) Descriptor

func (*CellsAlias) Descriptor() ([]byte, []int)

func (*CellsAlias) GetCells

func (m *CellsAlias) GetCells() []string

func (*CellsAlias) ProtoMessage

func (*CellsAlias) ProtoMessage()

func (*CellsAlias) Reset

func (m *CellsAlias) Reset()

func (*CellsAlias) String

func (m *CellsAlias) String() string

func (*CellsAlias) XXX_DiscardUnknown

func (m *CellsAlias) XXX_DiscardUnknown()

func (*CellsAlias) XXX_Marshal

func (m *CellsAlias) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*CellsAlias) XXX_Merge

func (m *CellsAlias) XXX_Merge(src proto.Message)

func (*CellsAlias) XXX_Size

func (m *CellsAlias) XXX_Size() int

func (*CellsAlias) XXX_Unmarshal

func (m *CellsAlias) XXX_Unmarshal(b []byte) error

type KeyRange

type KeyRange struct {
	Start                []byte   `protobuf:"bytes,1,opt,name=start,proto3" json:"start,omitempty"`
	End                  []byte   `protobuf:"bytes,2,opt,name=end,proto3" json:"end,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

KeyRange describes a range of sharding keys, when range-based sharding is used.

func (*KeyRange) Descriptor

func (*KeyRange) Descriptor() ([]byte, []int)

func (*KeyRange) GetEnd

func (m *KeyRange) GetEnd() []byte

func (*KeyRange) GetStart

func (m *KeyRange) GetStart() []byte

func (*KeyRange) ProtoMessage

func (*KeyRange) ProtoMessage()

func (*KeyRange) Reset

func (m *KeyRange) Reset()

func (*KeyRange) String

func (m *KeyRange) String() string

func (*KeyRange) XXX_DiscardUnknown

func (m *KeyRange) XXX_DiscardUnknown()

func (*KeyRange) XXX_Marshal

func (m *KeyRange) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*KeyRange) XXX_Merge

func (m *KeyRange) XXX_Merge(src proto.Message)

func (*KeyRange) XXX_Size

func (m *KeyRange) XXX_Size() int

func (*KeyRange) XXX_Unmarshal

func (m *KeyRange) XXX_Unmarshal(b []byte) error

type Keyspace

type Keyspace struct {
	// name of the column used for sharding
	// empty if the keyspace is not sharded
	ShardingColumnName string `protobuf:"bytes,1,opt,name=sharding_column_name,json=shardingColumnName,proto3" json:"sharding_column_name,omitempty"`
	// type of the column used for sharding
	// UNSET if the keyspace is not sharded
	ShardingColumnType KeyspaceIdType `` /* 147-byte string literal not displayed */
	// ServedFrom will redirect the appropriate traffic to
	// another keyspace.
	ServedFroms []*Keyspace_ServedFrom `protobuf:"bytes,4,rep,name=served_froms,json=servedFroms,proto3" json:"served_froms,omitempty"`
	// keyspace_type will determine how this keyspace is treated by
	// vtgate / vschema. Normal keyspaces are routable by
	// any query. Snapshot keyspaces are only accessible
	// by explicit addresssing or by calling "use keyspace" first
	KeyspaceType KeyspaceType `protobuf:"varint,5,opt,name=keyspace_type,json=keyspaceType,proto3,enum=topodata.KeyspaceType" json:"keyspace_type,omitempty"`
	// base_keyspace is the base keyspace from which a snapshot
	// keyspace is created. empty for normal keyspaces
	BaseKeyspace string `protobuf:"bytes,6,opt,name=base_keyspace,json=baseKeyspace,proto3" json:"base_keyspace,omitempty"`
	// snapshot_time (in UTC) is a property of snapshot
	// keyspaces which tells us what point in time
	// the snapshot is of
	SnapshotTime         *vttime.Time `protobuf:"bytes,7,opt,name=snapshot_time,json=snapshotTime,proto3" json:"snapshot_time,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

A Keyspace contains data about a keyspace.

func (*Keyspace) Descriptor

func (*Keyspace) Descriptor() ([]byte, []int)

func (*Keyspace) GetBaseKeyspace

func (m *Keyspace) GetBaseKeyspace() string

func (*Keyspace) GetKeyspaceType

func (m *Keyspace) GetKeyspaceType() KeyspaceType

func (*Keyspace) GetServedFroms

func (m *Keyspace) GetServedFroms() []*Keyspace_ServedFrom

func (*Keyspace) GetShardingColumnName

func (m *Keyspace) GetShardingColumnName() string

func (*Keyspace) GetShardingColumnType

func (m *Keyspace) GetShardingColumnType() KeyspaceIdType

func (*Keyspace) GetSnapshotTime

func (m *Keyspace) GetSnapshotTime() *vttime.Time

func (*Keyspace) ProtoMessage

func (*Keyspace) ProtoMessage()

func (*Keyspace) Reset

func (m *Keyspace) Reset()

func (*Keyspace) String

func (m *Keyspace) String() string

func (*Keyspace) XXX_DiscardUnknown

func (m *Keyspace) XXX_DiscardUnknown()

func (*Keyspace) XXX_Marshal

func (m *Keyspace) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Keyspace) XXX_Merge

func (m *Keyspace) XXX_Merge(src proto.Message)

func (*Keyspace) XXX_Size

func (m *Keyspace) XXX_Size() int

func (*Keyspace) XXX_Unmarshal

func (m *Keyspace) XXX_Unmarshal(b []byte) error

type KeyspaceIdType

type KeyspaceIdType int32

KeyspaceIdType describes the type of the sharding key for a range-based sharded keyspace.

const (
	// UNSET is the default value, when range-based sharding is not used.
	KeyspaceIdType_UNSET KeyspaceIdType = 0
	// UINT64 is when uint64 value is used.
	// This is represented as 'unsigned bigint' in mysql
	KeyspaceIdType_UINT64 KeyspaceIdType = 1
	// BYTES is when an array of bytes is used.
	// This is represented as 'varbinary' in mysql
	KeyspaceIdType_BYTES KeyspaceIdType = 2
)

func (KeyspaceIdType) EnumDescriptor

func (KeyspaceIdType) EnumDescriptor() ([]byte, []int)

func (KeyspaceIdType) String

func (x KeyspaceIdType) String() string

type KeyspaceType

type KeyspaceType int32

KeyspaceType describes the type of the keyspace

const (
	// NORMAL is the default value
	KeyspaceType_NORMAL KeyspaceType = 0
	// SNAPSHOT is when we are creating a snapshot keyspace
	KeyspaceType_SNAPSHOT KeyspaceType = 1
)

func (KeyspaceType) EnumDescriptor

func (KeyspaceType) EnumDescriptor() ([]byte, []int)

func (KeyspaceType) String

func (x KeyspaceType) String() string

type Keyspace_ServedFrom

type Keyspace_ServedFrom struct {
	// the tablet type (key for the map)
	TabletType TabletType `protobuf:"varint,1,opt,name=tablet_type,json=tabletType,proto3,enum=topodata.TabletType" json:"tablet_type,omitempty"`
	// the cells to limit this to
	Cells []string `protobuf:"bytes,2,rep,name=cells,proto3" json:"cells,omitempty"`
	// the keyspace name that's serving it
	Keyspace             string   `protobuf:"bytes,3,opt,name=keyspace,proto3" json:"keyspace,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

ServedFrom indicates a relationship between a TabletType and the keyspace name that's serving it.

func (*Keyspace_ServedFrom) Descriptor

func (*Keyspace_ServedFrom) Descriptor() ([]byte, []int)

func (*Keyspace_ServedFrom) GetCells

func (m *Keyspace_ServedFrom) GetCells() []string

func (*Keyspace_ServedFrom) GetKeyspace

func (m *Keyspace_ServedFrom) GetKeyspace() string

func (*Keyspace_ServedFrom) GetTabletType

func (m *Keyspace_ServedFrom) GetTabletType() TabletType

func (*Keyspace_ServedFrom) ProtoMessage

func (*Keyspace_ServedFrom) ProtoMessage()

func (*Keyspace_ServedFrom) Reset

func (m *Keyspace_ServedFrom) Reset()

func (*Keyspace_ServedFrom) String

func (m *Keyspace_ServedFrom) String() string

func (*Keyspace_ServedFrom) XXX_DiscardUnknown

func (m *Keyspace_ServedFrom) XXX_DiscardUnknown()

func (*Keyspace_ServedFrom) XXX_Marshal

func (m *Keyspace_ServedFrom) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Keyspace_ServedFrom) XXX_Merge

func (m *Keyspace_ServedFrom) XXX_Merge(src proto.Message)

func (*Keyspace_ServedFrom) XXX_Size

func (m *Keyspace_ServedFrom) XXX_Size() int

func (*Keyspace_ServedFrom) XXX_Unmarshal

func (m *Keyspace_ServedFrom) XXX_Unmarshal(b []byte) error

type Shard

type Shard struct {
	// master_alias is the tablet alias of the master for the shard.
	// If it is unset, then there is no master in this shard yet.
	// No lock is necessary to update this field, when for instance
	// TabletExternallyReparented updates this. However, we lock the
	// shard for reparenting operations (InitShardMaster,
	// PlannedReparentShard,EmergencyReparentShard), to guarantee
	// exclusive operation.
	MasterAlias *TabletAlias `protobuf:"bytes,1,opt,name=master_alias,json=masterAlias,proto3" json:"master_alias,omitempty"`
	// master_term_start_time is the time (in UTC) at which the current term of
	// the master specified in master_alias began.
	//
	// A new master term begins any time an authoritative decision is communicated
	// about which tablet should be the master, such as via Vitess
	// replication-management commands like PlannedReparentShard,
	// EmergencyReparentShard, and TabletExternallyReparented.
	//
	// The master_alias should only ever be changed if the new master's term began
	// at a later time than this. Note that a new term can start for the tablet
	// that is already the master. In that case, the master_term_start_time would
	// be increased without changing the master_alias.
	MasterTermStartTime *vttime.Time `protobuf:"bytes,8,opt,name=master_term_start_time,json=masterTermStartTime,proto3" json:"master_term_start_time,omitempty"`
	// key_range is the KeyRange for this shard. It can be unset if:
	// - we are not using range-based sharding in this shard.
	// - the shard covers the entire keyrange.
	// This must match the shard name based on our other conventions, but
	// helpful to have it decomposed here.
	// Once set at creation time, it is never changed.
	KeyRange *KeyRange `protobuf:"bytes,2,opt,name=key_range,json=keyRange,proto3" json:"key_range,omitempty"`
	// served_types has at most one entry per TabletType
	// This field is in the process of being deprecated in favor of
	// is_master_serving. Keeping for backwards compatibility purposes.
	ServedTypes []*Shard_ServedType `protobuf:"bytes,3,rep,name=served_types,json=servedTypes,proto3" json:"served_types,omitempty"`
	// SourceShards is the list of shards we're replicating from,
	// using filtered replication.
	// The keyspace lock is always taken when changing this.
	SourceShards []*Shard_SourceShard `protobuf:"bytes,4,rep,name=source_shards,json=sourceShards,proto3" json:"source_shards,omitempty"`
	// tablet_controls has at most one entry per TabletType.
	// The keyspace lock is always taken when changing this.
	TabletControls []*Shard_TabletControl `protobuf:"bytes,6,rep,name=tablet_controls,json=tabletControls,proto3" json:"tablet_controls,omitempty"`
	// is_master_serving sets whether this shard master is serving traffic or not.
	// The keyspace lock is always taken when changing this.
	IsMasterServing      bool     `protobuf:"varint,7,opt,name=is_master_serving,json=isMasterServing,proto3" json:"is_master_serving,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

A Shard contains data about a subset of the data whithin a keyspace.

func (*Shard) Descriptor

func (*Shard) Descriptor() ([]byte, []int)

func (*Shard) GetIsMasterServing

func (m *Shard) GetIsMasterServing() bool

func (*Shard) GetKeyRange

func (m *Shard) GetKeyRange() *KeyRange

func (*Shard) GetMasterAlias

func (m *Shard) GetMasterAlias() *TabletAlias

func (*Shard) GetMasterTermStartTime

func (m *Shard) GetMasterTermStartTime() *vttime.Time

func (*Shard) GetServedTypes

func (m *Shard) GetServedTypes() []*Shard_ServedType

func (*Shard) GetSourceShards

func (m *Shard) GetSourceShards() []*Shard_SourceShard

func (*Shard) GetTabletControls

func (m *Shard) GetTabletControls() []*Shard_TabletControl

func (*Shard) ProtoMessage

func (*Shard) ProtoMessage()

func (*Shard) Reset

func (m *Shard) Reset()

func (*Shard) String

func (m *Shard) String() string

func (*Shard) XXX_DiscardUnknown

func (m *Shard) XXX_DiscardUnknown()

func (*Shard) XXX_Marshal

func (m *Shard) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Shard) XXX_Merge

func (m *Shard) XXX_Merge(src proto.Message)

func (*Shard) XXX_Size

func (m *Shard) XXX_Size() int

func (*Shard) XXX_Unmarshal

func (m *Shard) XXX_Unmarshal(b []byte) error

type ShardReference

type ShardReference struct {
	// Copied from Shard.
	Name                 string    `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	KeyRange             *KeyRange `protobuf:"bytes,2,opt,name=key_range,json=keyRange,proto3" json:"key_range,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

ShardReference is used as a pointer from a SrvKeyspace to a Shard

func (*ShardReference) Descriptor

func (*ShardReference) Descriptor() ([]byte, []int)

func (*ShardReference) GetKeyRange

func (m *ShardReference) GetKeyRange() *KeyRange

func (*ShardReference) GetName

func (m *ShardReference) GetName() string

func (*ShardReference) ProtoMessage

func (*ShardReference) ProtoMessage()

func (*ShardReference) Reset

func (m *ShardReference) Reset()

func (*ShardReference) String

func (m *ShardReference) String() string

func (*ShardReference) XXX_DiscardUnknown

func (m *ShardReference) XXX_DiscardUnknown()

func (*ShardReference) XXX_Marshal

func (m *ShardReference) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ShardReference) XXX_Merge

func (m *ShardReference) XXX_Merge(src proto.Message)

func (*ShardReference) XXX_Size

func (m *ShardReference) XXX_Size() int

func (*ShardReference) XXX_Unmarshal

func (m *ShardReference) XXX_Unmarshal(b []byte) error

type ShardReplication

type ShardReplication struct {
	// Note there can be only one Node in this array
	// for a given tablet.
	Nodes                []*ShardReplication_Node `protobuf:"bytes,1,rep,name=nodes,proto3" json:"nodes,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                 `json:"-"`
	XXX_unrecognized     []byte                   `json:"-"`
	XXX_sizecache        int32                    `json:"-"`
}

ShardReplication describes the MySQL replication relationships whithin a cell.

func (*ShardReplication) Descriptor

func (*ShardReplication) Descriptor() ([]byte, []int)

func (*ShardReplication) GetNodes

func (m *ShardReplication) GetNodes() []*ShardReplication_Node

func (*ShardReplication) ProtoMessage

func (*ShardReplication) ProtoMessage()

func (*ShardReplication) Reset

func (m *ShardReplication) Reset()

func (*ShardReplication) String

func (m *ShardReplication) String() string

func (*ShardReplication) XXX_DiscardUnknown

func (m *ShardReplication) XXX_DiscardUnknown()

func (*ShardReplication) XXX_Marshal

func (m *ShardReplication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ShardReplication) XXX_Merge

func (m *ShardReplication) XXX_Merge(src proto.Message)

func (*ShardReplication) XXX_Size

func (m *ShardReplication) XXX_Size() int

func (*ShardReplication) XXX_Unmarshal

func (m *ShardReplication) XXX_Unmarshal(b []byte) error

type ShardReplication_Node

type ShardReplication_Node struct {
	TabletAlias          *TabletAlias `protobuf:"bytes,1,opt,name=tablet_alias,json=tabletAlias,proto3" json:"tablet_alias,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

Node describes a tablet instance within the cell

func (*ShardReplication_Node) Descriptor

func (*ShardReplication_Node) Descriptor() ([]byte, []int)

func (*ShardReplication_Node) GetTabletAlias

func (m *ShardReplication_Node) GetTabletAlias() *TabletAlias

func (*ShardReplication_Node) ProtoMessage

func (*ShardReplication_Node) ProtoMessage()

func (*ShardReplication_Node) Reset

func (m *ShardReplication_Node) Reset()

func (*ShardReplication_Node) String

func (m *ShardReplication_Node) String() string

func (*ShardReplication_Node) XXX_DiscardUnknown

func (m *ShardReplication_Node) XXX_DiscardUnknown()

func (*ShardReplication_Node) XXX_Marshal

func (m *ShardReplication_Node) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ShardReplication_Node) XXX_Merge

func (m *ShardReplication_Node) XXX_Merge(src proto.Message)

func (*ShardReplication_Node) XXX_Size

func (m *ShardReplication_Node) XXX_Size() int

func (*ShardReplication_Node) XXX_Unmarshal

func (m *ShardReplication_Node) XXX_Unmarshal(b []byte) error

type ShardTabletControl

type ShardTabletControl struct {
	// Copied from Shard.
	Name     string    `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	KeyRange *KeyRange `protobuf:"bytes,2,opt,name=key_range,json=keyRange,proto3" json:"key_range,omitempty"`
	// Disable query serving in this shard
	QueryServiceDisabled bool     `protobuf:"varint,3,opt,name=query_service_disabled,json=queryServiceDisabled,proto3" json:"query_service_disabled,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

ShardTabletControl is used as a pointer from a SrvKeyspace to a Shard

func (*ShardTabletControl) Descriptor

func (*ShardTabletControl) Descriptor() ([]byte, []int)

func (*ShardTabletControl) GetKeyRange

func (m *ShardTabletControl) GetKeyRange() *KeyRange

func (*ShardTabletControl) GetName

func (m *ShardTabletControl) GetName() string

func (*ShardTabletControl) GetQueryServiceDisabled

func (m *ShardTabletControl) GetQueryServiceDisabled() bool

func (*ShardTabletControl) ProtoMessage

func (*ShardTabletControl) ProtoMessage()

func (*ShardTabletControl) Reset

func (m *ShardTabletControl) Reset()

func (*ShardTabletControl) String

func (m *ShardTabletControl) String() string

func (*ShardTabletControl) XXX_DiscardUnknown

func (m *ShardTabletControl) XXX_DiscardUnknown()

func (*ShardTabletControl) XXX_Marshal

func (m *ShardTabletControl) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ShardTabletControl) XXX_Merge

func (m *ShardTabletControl) XXX_Merge(src proto.Message)

func (*ShardTabletControl) XXX_Size

func (m *ShardTabletControl) XXX_Size() int

func (*ShardTabletControl) XXX_Unmarshal

func (m *ShardTabletControl) XXX_Unmarshal(b []byte) error

type Shard_ServedType

type Shard_ServedType struct {
	TabletType           TabletType `protobuf:"varint,1,opt,name=tablet_type,json=tabletType,proto3,enum=topodata.TabletType" json:"tablet_type,omitempty"`
	Cells                []string   `protobuf:"bytes,2,rep,name=cells,proto3" json:"cells,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

ServedType is an entry in the served_types

func (*Shard_ServedType) Descriptor

func (*Shard_ServedType) Descriptor() ([]byte, []int)

func (*Shard_ServedType) GetCells

func (m *Shard_ServedType) GetCells() []string

func (*Shard_ServedType) GetTabletType

func (m *Shard_ServedType) GetTabletType() TabletType

func (*Shard_ServedType) ProtoMessage

func (*Shard_ServedType) ProtoMessage()

func (*Shard_ServedType) Reset

func (m *Shard_ServedType) Reset()

func (*Shard_ServedType) String

func (m *Shard_ServedType) String() string

func (*Shard_ServedType) XXX_DiscardUnknown

func (m *Shard_ServedType) XXX_DiscardUnknown()

func (*Shard_ServedType) XXX_Marshal

func (m *Shard_ServedType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Shard_ServedType) XXX_Merge

func (m *Shard_ServedType) XXX_Merge(src proto.Message)

func (*Shard_ServedType) XXX_Size

func (m *Shard_ServedType) XXX_Size() int

func (*Shard_ServedType) XXX_Unmarshal

func (m *Shard_ServedType) XXX_Unmarshal(b []byte) error

type Shard_SourceShard

type Shard_SourceShard struct {
	// Uid is the unique ID for this SourceShard object.
	Uid uint32 `protobuf:"varint,1,opt,name=uid,proto3" json:"uid,omitempty"`
	// the source keyspace
	Keyspace string `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"`
	// the source shard
	Shard string `protobuf:"bytes,3,opt,name=shard,proto3" json:"shard,omitempty"`
	// the source shard keyrange
	KeyRange *KeyRange `protobuf:"bytes,4,opt,name=key_range,json=keyRange,proto3" json:"key_range,omitempty"`
	// the source table list to replicate
	Tables               []string `protobuf:"bytes,5,rep,name=tables,proto3" json:"tables,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

SourceShard represents a data source for filtered replication across shards. When this is used in a destination shard, the master of that shard will run filtered replication.

func (*Shard_SourceShard) Descriptor

func (*Shard_SourceShard) Descriptor() ([]byte, []int)

func (*Shard_SourceShard) GetKeyRange

func (m *Shard_SourceShard) GetKeyRange() *KeyRange

func (*Shard_SourceShard) GetKeyspace

func (m *Shard_SourceShard) GetKeyspace() string

func (*Shard_SourceShard) GetShard

func (m *Shard_SourceShard) GetShard() string

func (*Shard_SourceShard) GetTables

func (m *Shard_SourceShard) GetTables() []string

func (*Shard_SourceShard) GetUid

func (m *Shard_SourceShard) GetUid() uint32

func (*Shard_SourceShard) ProtoMessage

func (*Shard_SourceShard) ProtoMessage()

func (*Shard_SourceShard) Reset

func (m *Shard_SourceShard) Reset()

func (*Shard_SourceShard) String

func (m *Shard_SourceShard) String() string

func (*Shard_SourceShard) XXX_DiscardUnknown

func (m *Shard_SourceShard) XXX_DiscardUnknown()

func (*Shard_SourceShard) XXX_Marshal

func (m *Shard_SourceShard) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Shard_SourceShard) XXX_Merge

func (m *Shard_SourceShard) XXX_Merge(src proto.Message)

func (*Shard_SourceShard) XXX_Size

func (m *Shard_SourceShard) XXX_Size() int

func (*Shard_SourceShard) XXX_Unmarshal

func (m *Shard_SourceShard) XXX_Unmarshal(b []byte) error

type Shard_TabletControl

type Shard_TabletControl struct {
	// which tablet type is affected
	TabletType        TabletType `protobuf:"varint,1,opt,name=tablet_type,json=tabletType,proto3,enum=topodata.TabletType" json:"tablet_type,omitempty"`
	Cells             []string   `protobuf:"bytes,2,rep,name=cells,proto3" json:"cells,omitempty"`
	BlacklistedTables []string   `protobuf:"bytes,4,rep,name=blacklisted_tables,json=blacklistedTables,proto3" json:"blacklisted_tables,omitempty"`
	// frozen is set if we've started failing over traffic for
	// the master. If set, this record should not be removed.
	Frozen               bool     `protobuf:"varint,5,opt,name=frozen,proto3" json:"frozen,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

TabletControl controls tablet's behavior

func (*Shard_TabletControl) Descriptor

func (*Shard_TabletControl) Descriptor() ([]byte, []int)

func (*Shard_TabletControl) GetBlacklistedTables

func (m *Shard_TabletControl) GetBlacklistedTables() []string

func (*Shard_TabletControl) GetCells

func (m *Shard_TabletControl) GetCells() []string

func (*Shard_TabletControl) GetFrozen

func (m *Shard_TabletControl) GetFrozen() bool

func (*Shard_TabletControl) GetTabletType

func (m *Shard_TabletControl) GetTabletType() TabletType

func (*Shard_TabletControl) ProtoMessage

func (*Shard_TabletControl) ProtoMessage()

func (*Shard_TabletControl) Reset

func (m *Shard_TabletControl) Reset()

func (*Shard_TabletControl) String

func (m *Shard_TabletControl) String() string

func (*Shard_TabletControl) XXX_DiscardUnknown

func (m *Shard_TabletControl) XXX_DiscardUnknown()

func (*Shard_TabletControl) XXX_Marshal

func (m *Shard_TabletControl) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Shard_TabletControl) XXX_Merge

func (m *Shard_TabletControl) XXX_Merge(src proto.Message)

func (*Shard_TabletControl) XXX_Size

func (m *Shard_TabletControl) XXX_Size() int

func (*Shard_TabletControl) XXX_Unmarshal

func (m *Shard_TabletControl) XXX_Unmarshal(b []byte) error

type SrvKeyspace

type SrvKeyspace struct {
	// The partitions this keyspace is serving, per tablet type.
	Partitions []*SrvKeyspace_KeyspacePartition `protobuf:"bytes,1,rep,name=partitions,proto3" json:"partitions,omitempty"`
	// copied from Keyspace
	ShardingColumnName   string                    `protobuf:"bytes,2,opt,name=sharding_column_name,json=shardingColumnName,proto3" json:"sharding_column_name,omitempty"`
	ShardingColumnType   KeyspaceIdType            `` /* 147-byte string literal not displayed */
	ServedFrom           []*SrvKeyspace_ServedFrom `protobuf:"bytes,4,rep,name=served_from,json=servedFrom,proto3" json:"served_from,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                  `json:"-"`
	XXX_unrecognized     []byte                    `json:"-"`
	XXX_sizecache        int32                     `json:"-"`
}

SrvKeyspace is a rollup node for the keyspace itself.

func (*SrvKeyspace) Descriptor

func (*SrvKeyspace) Descriptor() ([]byte, []int)

func (*SrvKeyspace) GetPartitions

func (m *SrvKeyspace) GetPartitions() []*SrvKeyspace_KeyspacePartition

func (*SrvKeyspace) GetServedFrom

func (m *SrvKeyspace) GetServedFrom() []*SrvKeyspace_ServedFrom

func (*SrvKeyspace) GetShardingColumnName

func (m *SrvKeyspace) GetShardingColumnName() string

func (*SrvKeyspace) GetShardingColumnType

func (m *SrvKeyspace) GetShardingColumnType() KeyspaceIdType

func (*SrvKeyspace) ProtoMessage

func (*SrvKeyspace) ProtoMessage()

func (*SrvKeyspace) Reset

func (m *SrvKeyspace) Reset()

func (*SrvKeyspace) String

func (m *SrvKeyspace) String() string

func (*SrvKeyspace) XXX_DiscardUnknown

func (m *SrvKeyspace) XXX_DiscardUnknown()

func (*SrvKeyspace) XXX_Marshal

func (m *SrvKeyspace) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*SrvKeyspace) XXX_Merge

func (m *SrvKeyspace) XXX_Merge(src proto.Message)

func (*SrvKeyspace) XXX_Size

func (m *SrvKeyspace) XXX_Size() int

func (*SrvKeyspace) XXX_Unmarshal

func (m *SrvKeyspace) XXX_Unmarshal(b []byte) error

type SrvKeyspace_KeyspacePartition

type SrvKeyspace_KeyspacePartition struct {
	// The type this partition applies to.
	ServedType TabletType `protobuf:"varint,1,opt,name=served_type,json=servedType,proto3,enum=topodata.TabletType" json:"served_type,omitempty"`
	// List of non-overlapping continuous shards sorted by range.
	ShardReferences []*ShardReference `protobuf:"bytes,2,rep,name=shard_references,json=shardReferences,proto3" json:"shard_references,omitempty"`
	// List of shard tablet controls
	ShardTabletControls  []*ShardTabletControl `protobuf:"bytes,3,rep,name=shard_tablet_controls,json=shardTabletControls,proto3" json:"shard_tablet_controls,omitempty"`
	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
	XXX_unrecognized     []byte                `json:"-"`
	XXX_sizecache        int32                 `json:"-"`
}

func (*SrvKeyspace_KeyspacePartition) Descriptor

func (*SrvKeyspace_KeyspacePartition) Descriptor() ([]byte, []int)

func (*SrvKeyspace_KeyspacePartition) GetServedType

func (m *SrvKeyspace_KeyspacePartition) GetServedType() TabletType

func (*SrvKeyspace_KeyspacePartition) GetShardReferences

func (m *SrvKeyspace_KeyspacePartition) GetShardReferences() []*ShardReference

func (*SrvKeyspace_KeyspacePartition) GetShardTabletControls

func (m *SrvKeyspace_KeyspacePartition) GetShardTabletControls() []*ShardTabletControl

func (*SrvKeyspace_KeyspacePartition) ProtoMessage

func (*SrvKeyspace_KeyspacePartition) ProtoMessage()

func (*SrvKeyspace_KeyspacePartition) Reset

func (m *SrvKeyspace_KeyspacePartition) Reset()

func (*SrvKeyspace_KeyspacePartition) String

func (*SrvKeyspace_KeyspacePartition) XXX_DiscardUnknown

func (m *SrvKeyspace_KeyspacePartition) XXX_DiscardUnknown()

func (*SrvKeyspace_KeyspacePartition) XXX_Marshal

func (m *SrvKeyspace_KeyspacePartition) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*SrvKeyspace_KeyspacePartition) XXX_Merge

func (m *SrvKeyspace_KeyspacePartition) XXX_Merge(src proto.Message)

func (*SrvKeyspace_KeyspacePartition) XXX_Size

func (m *SrvKeyspace_KeyspacePartition) XXX_Size() int

func (*SrvKeyspace_KeyspacePartition) XXX_Unmarshal

func (m *SrvKeyspace_KeyspacePartition) XXX_Unmarshal(b []byte) error

type SrvKeyspace_ServedFrom

type SrvKeyspace_ServedFrom struct {
	// the tablet type
	TabletType TabletType `protobuf:"varint,1,opt,name=tablet_type,json=tabletType,proto3,enum=topodata.TabletType" json:"tablet_type,omitempty"`
	// the keyspace name that's serving it
	Keyspace             string   `protobuf:"bytes,2,opt,name=keyspace,proto3" json:"keyspace,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

ServedFrom indicates a relationship between a TabletType and the keyspace name that's serving it.

func (*SrvKeyspace_ServedFrom) Descriptor

func (*SrvKeyspace_ServedFrom) Descriptor() ([]byte, []int)

func (*SrvKeyspace_ServedFrom) GetKeyspace

func (m *SrvKeyspace_ServedFrom) GetKeyspace() string

func (*SrvKeyspace_ServedFrom) GetTabletType

func (m *SrvKeyspace_ServedFrom) GetTabletType() TabletType

func (*SrvKeyspace_ServedFrom) ProtoMessage

func (*SrvKeyspace_ServedFrom) ProtoMessage()

func (*SrvKeyspace_ServedFrom) Reset

func (m *SrvKeyspace_ServedFrom) Reset()

func (*SrvKeyspace_ServedFrom) String

func (m *SrvKeyspace_ServedFrom) String() string

func (*SrvKeyspace_ServedFrom) XXX_DiscardUnknown

func (m *SrvKeyspace_ServedFrom) XXX_DiscardUnknown()

func (*SrvKeyspace_ServedFrom) XXX_Marshal

func (m *SrvKeyspace_ServedFrom) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*SrvKeyspace_ServedFrom) XXX_Merge

func (m *SrvKeyspace_ServedFrom) XXX_Merge(src proto.Message)

func (*SrvKeyspace_ServedFrom) XXX_Size

func (m *SrvKeyspace_ServedFrom) XXX_Size() int

func (*SrvKeyspace_ServedFrom) XXX_Unmarshal

func (m *SrvKeyspace_ServedFrom) XXX_Unmarshal(b []byte) error

type Tablet

type Tablet struct {
	// alias is the unique name of the tablet.
	Alias *TabletAlias `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"`
	// Fully qualified domain name of the host.
	Hostname string `protobuf:"bytes,2,opt,name=hostname,proto3" json:"hostname,omitempty"`
	// Map of named ports. Normally this should include vt and grpc.
	// Going forward, the mysql port will be stored in mysql_port
	// instead of here.
	// For accessing mysql port, use topoproto.MysqlPort to fetch, and
	// topoproto.SetMysqlPort to set. These wrappers will ensure
	// legacy behavior is supported.
	PortMap map[string]int32 `` /* 171-byte string literal not displayed */
	// Keyspace name.
	Keyspace string `protobuf:"bytes,5,opt,name=keyspace,proto3" json:"keyspace,omitempty"`
	// Shard name. If range based sharding is used, it should match
	// key_range.
	Shard string `protobuf:"bytes,6,opt,name=shard,proto3" json:"shard,omitempty"`
	// If range based sharding is used, range for the tablet's shard.
	KeyRange *KeyRange `protobuf:"bytes,7,opt,name=key_range,json=keyRange,proto3" json:"key_range,omitempty"`
	// type is the current type of the tablet.
	Type TabletType `protobuf:"varint,8,opt,name=type,proto3,enum=topodata.TabletType" json:"type,omitempty"`
	// It this is set, it is used as the database name instead of the
	// normal "vt_" + keyspace.
	DbNameOverride string `protobuf:"bytes,9,opt,name=db_name_override,json=dbNameOverride,proto3" json:"db_name_override,omitempty"`
	// tablet tags
	Tags map[string]string `` /* 150-byte string literal not displayed */
	// MySQL hostname.
	MysqlHostname string `protobuf:"bytes,12,opt,name=mysql_hostname,json=mysqlHostname,proto3" json:"mysql_hostname,omitempty"`
	// MySQL port. Use topoproto.MysqlPort and topoproto.SetMysqlPort
	// to access this variable. The functions provide support
	// for legacy behavior.
	MysqlPort int32 `protobuf:"varint,13,opt,name=mysql_port,json=mysqlPort,proto3" json:"mysql_port,omitempty"`
	// master_term_start_time is the time (in UTC) at which the current term of
	// the current tablet began as master. If this tablet is not currently the
	// master, this value is ignored.
	//
	// A new master term begins any time an authoritative decision is communicated
	// about which tablet should be the master, such as via Vitess
	// replication-management commands like PlannedReparentShard,
	// EmergencyReparentShard, and TabletExternallyReparented.
	//
	MasterTermStartTime  *vttime.Time `protobuf:"bytes,14,opt,name=master_term_start_time,json=masterTermStartTime,proto3" json:"master_term_start_time,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

Tablet represents information about a running instance of vttablet.

func (*Tablet) Descriptor

func (*Tablet) Descriptor() ([]byte, []int)

func (*Tablet) GetAlias

func (m *Tablet) GetAlias() *TabletAlias

func (*Tablet) GetDbNameOverride

func (m *Tablet) GetDbNameOverride() string

func (*Tablet) GetHostname

func (m *Tablet) GetHostname() string

func (*Tablet) GetKeyRange

func (m *Tablet) GetKeyRange() *KeyRange

func (*Tablet) GetKeyspace

func (m *Tablet) GetKeyspace() string

func (*Tablet) GetMasterTermStartTime

func (m *Tablet) GetMasterTermStartTime() *vttime.Time

func (*Tablet) GetMysqlHostname

func (m *Tablet) GetMysqlHostname() string

func (*Tablet) GetMysqlPort

func (m *Tablet) GetMysqlPort() int32

func (*Tablet) GetPortMap

func (m *Tablet) GetPortMap() map[string]int32

func (*Tablet) GetShard

func (m *Tablet) GetShard() string

func (*Tablet) GetTags

func (m *Tablet) GetTags() map[string]string

func (*Tablet) GetType

func (m *Tablet) GetType() TabletType

func (*Tablet) ProtoMessage

func (*Tablet) ProtoMessage()

func (*Tablet) Reset

func (m *Tablet) Reset()

func (*Tablet) String

func (m *Tablet) String() string

func (*Tablet) XXX_DiscardUnknown

func (m *Tablet) XXX_DiscardUnknown()

func (*Tablet) XXX_Marshal

func (m *Tablet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Tablet) XXX_Merge

func (m *Tablet) XXX_Merge(src proto.Message)

func (*Tablet) XXX_Size

func (m *Tablet) XXX_Size() int

func (*Tablet) XXX_Unmarshal

func (m *Tablet) XXX_Unmarshal(b []byte) error

type TabletAlias

type TabletAlias struct {
	// cell is the cell (or datacenter) the tablet is in
	Cell string `protobuf:"bytes,1,opt,name=cell,proto3" json:"cell,omitempty"`
	// uid is a unique id for this tablet within the shard
	// (this is the MySQL server id as well).
	Uid                  uint32   `protobuf:"varint,2,opt,name=uid,proto3" json:"uid,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

TabletAlias is a globally unique tablet identifier.

func (*TabletAlias) Descriptor

func (*TabletAlias) Descriptor() ([]byte, []int)

func (*TabletAlias) GetCell

func (m *TabletAlias) GetCell() string

func (*TabletAlias) GetUid

func (m *TabletAlias) GetUid() uint32

func (*TabletAlias) ProtoMessage

func (*TabletAlias) ProtoMessage()

func (*TabletAlias) Reset

func (m *TabletAlias) Reset()

func (*TabletAlias) String

func (m *TabletAlias) String() string

func (*TabletAlias) XXX_DiscardUnknown

func (m *TabletAlias) XXX_DiscardUnknown()

func (*TabletAlias) XXX_Marshal

func (m *TabletAlias) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*TabletAlias) XXX_Merge

func (m *TabletAlias) XXX_Merge(src proto.Message)

func (*TabletAlias) XXX_Size

func (m *TabletAlias) XXX_Size() int

func (*TabletAlias) XXX_Unmarshal

func (m *TabletAlias) XXX_Unmarshal(b []byte) error

type TabletType

type TabletType int32

TabletType represents the type of a given tablet.

const (
	// UNKNOWN is not a valid value.
	TabletType_UNKNOWN TabletType = 0
	// MASTER is the master server for the shard. Only MASTER allows DMLs.
	TabletType_MASTER TabletType = 1
	// REPLICA replicates from master. It is used to serve live traffic.
	// A REPLICA can be promoted to MASTER. A demoted MASTER will go to REPLICA.
	TabletType_REPLICA TabletType = 2
	// RDONLY (old name) / BATCH (new name) is used to serve traffic for
	// long-running jobs. It is a separate type from REPLICA so
	// long-running queries don't affect web-like traffic.
	TabletType_RDONLY TabletType = 3
	TabletType_BATCH  TabletType = 3
	// SPARE is a type of servers that cannot serve queries, but is available
	// in case an extra server is needed.
	TabletType_SPARE TabletType = 4
	// EXPERIMENTAL is like SPARE, except it can serve queries. This
	// type can be used for usages not planned by Vitess, like online
	// export to another storage engine.
	TabletType_EXPERIMENTAL TabletType = 5
	// BACKUP is the type a server goes to when taking a backup. No queries
	// can be served in BACKUP mode.
	TabletType_BACKUP TabletType = 6
	// RESTORE is the type a server uses when restoring a backup, at
	// startup time.  No queries can be served in RESTORE mode.
	TabletType_RESTORE TabletType = 7
	// DRAINED is the type a server goes into when used by Vitess tools
	// to perform an offline action. It is a serving type (as
	// the tools processes may need to run queries), but it's not used
	// to route queries from Vitess users. In this state,
	// this tablet is dedicated to the process that uses it.
	TabletType_DRAINED TabletType = 8
)

func (TabletType) EnumDescriptor

func (TabletType) EnumDescriptor() ([]byte, []int)

func (TabletType) String

func (x TabletType) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL