topodata

package
v0.0.13-alpha01 Latest Latest
Warning

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

Go to latest
Published: Feb 12, 2023 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