Documentation ¶
Index ¶
- Constants
- func ActionNodeCanBePurged(data string) bool
- func ActionNodeIsStale(data string) bool
- func ActionNodeToJson(n *ActionNode) string
- func BackfillAlias(zkPath string, alias *topo.TabletAlias) error
- func ChangeType(ts topo.Server, tabletAlias topo.TabletAlias, newType topo.TabletType, ...) error
- func EndPointForTablet(tablet *topo.Tablet) (*topo.EndPoint, error)
- func Scrap(ts topo.Server, tabletAlias topo.TabletAlias, force bool) error
- func SignalInterrupt()
- func StoreActionResponse(ts topo.Server, actionNode *ActionNode, actionPath string, actionErr error) error
- func WaitForCompletion(ts topo.Server, actionPath string, waitTime time.Duration) (interface{}, error)
- type ActionAgent
- func (agent *ActionAgent) AddChangeCallback(f TabletChangeCallback)
- func (agent *ActionAgent) RegisterQueryService(mysqld *mysqlctl.Mysqld)
- func (agent *ActionAgent) Start(bindAddr, secureAddr, mysqlAddr string) error
- func (agent *ActionAgent) Stop()
- func (agent *ActionAgent) Tablet() *topo.TabletInfo
- type ActionInitiator
- func (ai *ActionInitiator) ApplySchema(tabletAlias topo.TabletAlias, sc *mysqlctl.SchemaChange) (actionPath string, err error)
- func (ai *ActionInitiator) ApplySchemaKeyspace(change string, simple bool) *ActionNode
- func (ai *ActionInitiator) ApplySchemaShard(masterTabletAlias topo.TabletAlias, change string, simple bool) *ActionNode
- func (ai *ActionInitiator) BreakSlaves(tabletAlias topo.TabletAlias) (actionPath string, err error)
- func (ai *ActionInitiator) ChangeType(tabletAlias topo.TabletAlias, dbType topo.TabletType) (actionPath string, err error)
- func (ai *ActionInitiator) CheckShard() *ActionNode
- func (ai *ActionInitiator) DemoteMaster(tabletAlias topo.TabletAlias) (actionPath string, err error)
- func (ai *ActionInitiator) ExecuteHook(tabletAlias topo.TabletAlias, _hook *hook.Hook) (actionPath string, err error)
- func (ai *ActionInitiator) GetSchema(tabletAlias topo.TabletAlias, tables []string, includeViews bool) (actionPath string, err error)
- func (ai *ActionInitiator) GetSlaves(tabletAlias topo.TabletAlias) (actionPath string, err error)
- func (ai *ActionInitiator) MasterPosition(tabletAlias topo.TabletAlias) (actionPath string, err error)
- func (ai *ActionInitiator) MigrateServedTypes(servedType topo.TabletType) *ActionNode
- func (ai *ActionInitiator) MultiRestore(tabletAlias topo.TabletAlias, args *MultiRestoreArgs) (actionPath string, err error)
- func (ai *ActionInitiator) MultiSnapshot(tabletAlias topo.TabletAlias, args *MultiSnapshotArgs) (actionPath string, err error)
- func (ai *ActionInitiator) Ping(tabletAlias topo.TabletAlias) (actionPath string, err error)
- func (ai *ActionInitiator) PreflightSchema(tabletAlias topo.TabletAlias, change string) (actionPath string, err error)
- func (ai *ActionInitiator) PromoteSlave(tabletAlias topo.TabletAlias) (actionPath string, err error)
- func (ai *ActionInitiator) RebuildKeyspace() *ActionNode
- func (ai *ActionInitiator) RebuildShard() *ActionNode
- func (ai *ActionInitiator) ReparentPosition(tabletAlias topo.TabletAlias, slavePos *mysqlctl.ReplicationPosition) (actionPath string, err error)
- func (ai *ActionInitiator) ReparentShard(tabletAlias topo.TabletAlias) *ActionNode
- func (ai *ActionInitiator) ReserveForRestore(dstTabletAlias topo.TabletAlias, args *ReserveForRestoreArgs) (actionPath string, err error)
- func (ai *ActionInitiator) RestartSlave(tabletAlias topo.TabletAlias, args *RestartSlaveData) (actionPath string, err error)
- func (ai *ActionInitiator) Restore(dstTabletAlias topo.TabletAlias, args *RestoreArgs) (actionPath string, err error)
- func (ai *ActionInitiator) RpcGetPermissions(tabletAlias topo.TabletAlias, waitTime time.Duration) (*mysqlctl.Permissions, error)
- func (ai *ActionInitiator) RpcGetSchemaTablet(tablet *topo.TabletInfo, tables []string, includeViews bool, ...) (*mysqlctl.SchemaDefinition, error)
- func (ai *ActionInitiator) RpcPing(tabletAlias topo.TabletAlias, waitTime time.Duration) error
- func (ai *ActionInitiator) Scrap(tabletAlias topo.TabletAlias) (actionPath string, err error)
- func (ai *ActionInitiator) SetReadOnly(tabletAlias topo.TabletAlias) (actionPath string, err error)
- func (ai *ActionInitiator) SetReadWrite(tabletAlias topo.TabletAlias) (actionPath string, err error)
- func (ai *ActionInitiator) SetShardServedTypes(servedTypes []topo.TabletType) *ActionNode
- func (ai *ActionInitiator) ShardExternallyReparented(tabletAlias topo.TabletAlias) *ActionNode
- func (ai *ActionInitiator) ShardMultiRestore(args *MultiRestoreArgs) *ActionNode
- func (ai *ActionInitiator) SlavePosition(tabletAlias topo.TabletAlias) (actionPath string, err error)
- func (ai *ActionInitiator) SlaveWasPromoted(tabletAlias topo.TabletAlias) (actionPath string, err error)
- func (ai *ActionInitiator) SlaveWasRestarted(tabletAlias topo.TabletAlias, args *SlaveWasRestartedData) (actionPath string, err error)
- func (ai *ActionInitiator) Sleep(tabletAlias topo.TabletAlias, duration time.Duration) (actionPath string, err error)
- func (ai *ActionInitiator) Snapshot(tabletAlias topo.TabletAlias, args *SnapshotArgs) (actionPath string, err error)
- func (ai *ActionInitiator) SnapshotSourceEnd(tabletAlias topo.TabletAlias, args *SnapshotSourceEndArgs) (actionPath string, err error)
- func (ai *ActionInitiator) StopSlave(tabletAlias topo.TabletAlias) (actionPath string, err error)
- func (ai *ActionInitiator) UpdateShard() *ActionNode
- func (ai *ActionInitiator) WaitBlpPosition(tabletAlias topo.TabletAlias, blpPosition mysqlctl.BlpPosition, ...) error
- func (ai *ActionInitiator) WaitForCompletion(actionPath string, waitTime time.Duration) error
- func (ai *ActionInitiator) WaitForCompletionReply(actionPath string, waitTime time.Duration) (interface{}, error)
- func (ai *ActionInitiator) WaitSlavePosition(tabletAlias topo.TabletAlias, args *SlavePositionReq) (actionPath string, err error)
- type ActionNode
- type ActionState
- type ApplySchemaKeyspaceArgs
- type ApplySchemaShardArgs
- type GetSchemaArgs
- type InitiatorError
- type MigrateServedTypesArgs
- type MultiRestoreArgs
- type MultiSnapshotArgs
- type MultiSnapshotReply
- type ReserveForRestoreArgs
- type RestartSlaveData
- type RestoreArgs
- type SetShardServedTypesArgs
- type SlaveList
- type SlavePositionReq
- type SlaveWasRestartedData
- type SnapshotArgs
- type SnapshotReply
- type SnapshotSourceEndArgs
- type TabletActor
- type TabletActorError
- type TabletChangeCallback
- type TabletManager
- func (tm *TabletManager) GetPermissions(context *rpcproto.Context, args *rpc.UnusedRequest, ...) error
- func (tm *TabletManager) GetSchema(context *rpcproto.Context, args *GetSchemaArgs, ...) error
- func (tm *TabletManager) GetSlaves(context *rpcproto.Context, args *rpc.UnusedRequest, reply *SlaveList) (err error)
- func (tm *TabletManager) MasterPosition(context *rpcproto.Context, args *rpc.UnusedRequest, ...) error
- func (tm *TabletManager) Ping(context *rpcproto.Context, args, reply *string) error
- func (tm *TabletManager) SlavePosition(context *rpcproto.Context, args *rpc.UnusedRequest, ...) error
- func (tm *TabletManager) StopSlave(context *rpcproto.Context, args *rpc.UnusedRequest, reply *rpc.UnusedResponse) error
- func (tm *TabletManager) WaitBlpPosition(context *rpcproto.Context, args *WaitBlpPositionArgs, ...) error
- func (tm *TabletManager) WaitSlavePosition(context *rpcproto.Context, args *SlavePositionReq, ...) error
- type WaitBlpPositionArgs
Constants ¶
const ( // FIXME(msolomon) why is ActionState a type, but Action is not? TABLET_ACTION_PING = "Ping" TABLET_ACTION_SLEEP = "Sleep" TABLET_ACTION_SET_RDONLY = "SetReadOnly" TABLET_ACTION_SET_RDWR = "SetReadWrite" TABLET_ACTION_CHANGE_TYPE = "ChangeType" TABLET_ACTION_DEMOTE_MASTER = "DemoteMaster" TABLET_ACTION_PROMOTE_SLAVE = "PromoteSlave" TABLET_ACTION_SLAVE_WAS_PROMOTED = "SlaveWasPromoted" TABLET_ACTION_RESTART_SLAVE = "RestartSlave" TABLET_ACTION_SLAVE_WAS_RESTARTED = "SlaveWasRestarted" TABLET_ACTION_STOP_SLAVE = "StopSlave" TABLET_ACTION_BREAK_SLAVES = "BreakSlaves" TABLET_ACTION_MASTER_POSITION = "MasterPosition" TABLET_ACTION_REPARENT_POSITION = "ReparentPosition" TABLET_ACTION_SLAVE_POSITION = "SlavePosition" TABLET_ACTION_WAIT_SLAVE_POSITION = "WaitSlavePosition" TABLET_ACTION_WAIT_BLP_POSITION = "WaitBlpPosition" TABLET_ACTION_SCRAP = "Scrap" TABLET_ACTION_GET_SCHEMA = "GetSchema" TABLET_ACTION_PREFLIGHT_SCHEMA = "PreflightSchema" TABLET_ACTION_APPLY_SCHEMA = "ApplySchema" TABLET_ACTION_GET_PERMISSIONS = "GetPermissions" TABLET_ACTION_EXECUTE_HOOK = "ExecuteHook" TABLET_ACTION_GET_SLAVES = "GetSlaves" TABLET_ACTION_SNAPSHOT = "Snapshot" TABLET_ACTION_SNAPSHOT_SOURCE_END = "SnapshotSourceEnd" TABLET_ACTION_RESERVE_FOR_RESTORE = "ReserveForRestore" TABLET_ACTION_RESTORE = "Restore" TABLET_ACTION_MULTI_SNAPSHOT = "MultiSnapshot" TABLET_ACTION_MULTI_RESTORE = "MultiRestore" // Shard actions - involve all tablets in a shard SHARD_ACTION_REPARENT = "ReparentShard" SHARD_ACTION_EXTERNALLY_REPARENTED = "ShardExternallyReparented" // Recompute derived shard-wise data SHARD_ACTION_REBUILD = "RebuildShard" // Generic read lock for inexpensive shard-wide actions. SHARD_ACTION_CHECK = "CheckShard" // Apply a schema change on an entire shard SHARD_ACTION_APPLY_SCHEMA = "ApplySchemaShard" // Changes the ServedTypes inside a shard SHARD_ACTION_SET_SERVED_TYPES = "SetShardServedTypes" // Multi-restore on all tablets of a shard in parallel SHARD_ACTION_MULTI_RESTORE = "ShardMultiRestore" // Migrate served types from one shard to another SHARD_ACTION_MIGRATE_SERVED_TYPES = "MigrateServedTypes" // Update the Shard object (Cells, ...) SHARD_ACTION_UPDATE_SHARD = "UpdateShard" // Keyspace actions - require very high level locking for consistency KEYSPACE_ACTION_REBUILD = "RebuildKeyspace" KEYSPACE_ACTION_APPLY_SCHEMA = "ApplySchemaKeyspace" ACTION_STATE_QUEUED = ActionState("") // All actions are queued initially ACTION_STATE_RUNNING = ActionState("Running") // Running inside vtaction process ACTION_STATE_FAILED = ActionState("Failed") // Ended with a failure ACTION_STATE_DONE = ActionState("Done") // Ended with no failure )
Variables ¶
This section is empty.
Functions ¶
func ActionNodeCanBePurged ¶
func ActionNodeIsStale ¶
func ActionNodeToJson ¶
func ActionNodeToJson(n *ActionNode) string
func BackfillAlias ¶
func BackfillAlias(zkPath string, alias *topo.TabletAlias) error
FIXME(alainjobart) remove after migration
func ChangeType ¶
func ChangeType(ts topo.Server, tabletAlias topo.TabletAlias, newType topo.TabletType, runHooks bool) error
Make this external, since these transitions need to be forced from time to time.
func SignalInterrupt ¶
func SignalInterrupt()
In certain cases (vtctl most notably) having SIGINT manifest itself as an instant timeout lets us break out cleanly.
func StoreActionResponse ¶
func StoreActionResponse(ts topo.Server, actionNode *ActionNode, actionPath string, actionErr error) error
Write the result of an action into topology server
Types ¶
type ActionAgent ¶
type ActionAgent struct { MycnfFile string // my.cnf file DbConfigsFile string // File that contains db connection configs DbCredentialsFile string // File that contains db connection configs // contains filtered or unexported fields }
func NewActionAgent ¶
func NewActionAgent(topoServer topo.Server, tabletAlias topo.TabletAlias, mycnfFile, dbConfigsFile, dbCredentialsFile string) (*ActionAgent, error)
func (*ActionAgent) AddChangeCallback ¶
func (agent *ActionAgent) AddChangeCallback(f TabletChangeCallback)
func (*ActionAgent) RegisterQueryService ¶
func (agent *ActionAgent) RegisterQueryService(mysqld *mysqlctl.Mysqld)
func (*ActionAgent) Start ¶
func (agent *ActionAgent) Start(bindAddr, secureAddr, mysqlAddr string) error
bindAddr: the address for the query service advertised by this agent
func (*ActionAgent) Stop ¶
func (agent *ActionAgent) Stop()
func (*ActionAgent) Tablet ¶
func (agent *ActionAgent) Tablet() *topo.TabletInfo
type ActionInitiator ¶
type ActionInitiator struct {
// contains filtered or unexported fields
}
func NewActionInitiator ¶
func NewActionInitiator(ts topo.Server) *ActionInitiator
func (*ActionInitiator) ApplySchema ¶
func (ai *ActionInitiator) ApplySchema(tabletAlias topo.TabletAlias, sc *mysqlctl.SchemaChange) (actionPath string, err error)
func (*ActionInitiator) ApplySchemaKeyspace ¶
func (ai *ActionInitiator) ApplySchemaKeyspace(change string, simple bool) *ActionNode
func (*ActionInitiator) ApplySchemaShard ¶
func (ai *ActionInitiator) ApplySchemaShard(masterTabletAlias topo.TabletAlias, change string, simple bool) *ActionNode
func (*ActionInitiator) BreakSlaves ¶
func (ai *ActionInitiator) BreakSlaves(tabletAlias topo.TabletAlias) (actionPath string, err error)
func (*ActionInitiator) ChangeType ¶
func (ai *ActionInitiator) ChangeType(tabletAlias topo.TabletAlias, dbType topo.TabletType) (actionPath string, err error)
func (*ActionInitiator) CheckShard ¶
func (ai *ActionInitiator) CheckShard() *ActionNode
func (*ActionInitiator) DemoteMaster ¶
func (ai *ActionInitiator) DemoteMaster(tabletAlias topo.TabletAlias) (actionPath string, err error)
func (*ActionInitiator) ExecuteHook ¶
func (ai *ActionInitiator) ExecuteHook(tabletAlias topo.TabletAlias, _hook *hook.Hook) (actionPath string, err error)
func (*ActionInitiator) GetSchema ¶
func (ai *ActionInitiator) GetSchema(tabletAlias topo.TabletAlias, tables []string, includeViews bool) (actionPath string, err error)
func (*ActionInitiator) GetSlaves ¶
func (ai *ActionInitiator) GetSlaves(tabletAlias topo.TabletAlias) (actionPath string, err error)
func (*ActionInitiator) MasterPosition ¶
func (ai *ActionInitiator) MasterPosition(tabletAlias topo.TabletAlias) (actionPath string, err error)
func (*ActionInitiator) MigrateServedTypes ¶
func (ai *ActionInitiator) MigrateServedTypes(servedType topo.TabletType) *ActionNode
func (*ActionInitiator) MultiRestore ¶
func (ai *ActionInitiator) MultiRestore(tabletAlias topo.TabletAlias, args *MultiRestoreArgs) (actionPath string, err error)
func (*ActionInitiator) MultiSnapshot ¶
func (ai *ActionInitiator) MultiSnapshot(tabletAlias topo.TabletAlias, args *MultiSnapshotArgs) (actionPath string, err error)
func (*ActionInitiator) Ping ¶
func (ai *ActionInitiator) Ping(tabletAlias topo.TabletAlias) (actionPath string, err error)
func (*ActionInitiator) PreflightSchema ¶
func (ai *ActionInitiator) PreflightSchema(tabletAlias topo.TabletAlias, change string) (actionPath string, err error)
func (*ActionInitiator) PromoteSlave ¶
func (ai *ActionInitiator) PromoteSlave(tabletAlias topo.TabletAlias) (actionPath string, err error)
func (*ActionInitiator) RebuildKeyspace ¶
func (ai *ActionInitiator) RebuildKeyspace() *ActionNode
func (*ActionInitiator) RebuildShard ¶
func (ai *ActionInitiator) RebuildShard() *ActionNode
func (*ActionInitiator) ReparentPosition ¶
func (ai *ActionInitiator) ReparentPosition(tabletAlias topo.TabletAlias, slavePos *mysqlctl.ReplicationPosition) (actionPath string, err error)
func (*ActionInitiator) ReparentShard ¶
func (ai *ActionInitiator) ReparentShard(tabletAlias topo.TabletAlias) *ActionNode
func (*ActionInitiator) ReserveForRestore ¶
func (ai *ActionInitiator) ReserveForRestore(dstTabletAlias topo.TabletAlias, args *ReserveForRestoreArgs) (actionPath string, err error)
func (*ActionInitiator) RestartSlave ¶
func (ai *ActionInitiator) RestartSlave(tabletAlias topo.TabletAlias, args *RestartSlaveData) (actionPath string, err error)
func (*ActionInitiator) Restore ¶
func (ai *ActionInitiator) Restore(dstTabletAlias topo.TabletAlias, args *RestoreArgs) (actionPath string, err error)
func (*ActionInitiator) RpcGetPermissions ¶
func (ai *ActionInitiator) RpcGetPermissions(tabletAlias topo.TabletAlias, waitTime time.Duration) (*mysqlctl.Permissions, error)
func (*ActionInitiator) RpcGetSchemaTablet ¶
func (ai *ActionInitiator) RpcGetSchemaTablet(tablet *topo.TabletInfo, tables []string, includeViews bool, waitTime time.Duration) (*mysqlctl.SchemaDefinition, error)
func (*ActionInitiator) RpcPing ¶
func (ai *ActionInitiator) RpcPing(tabletAlias topo.TabletAlias, waitTime time.Duration) error
func (*ActionInitiator) Scrap ¶
func (ai *ActionInitiator) Scrap(tabletAlias topo.TabletAlias) (actionPath string, err error)
func (*ActionInitiator) SetReadOnly ¶
func (ai *ActionInitiator) SetReadOnly(tabletAlias topo.TabletAlias) (actionPath string, err error)
func (*ActionInitiator) SetReadWrite ¶
func (ai *ActionInitiator) SetReadWrite(tabletAlias topo.TabletAlias) (actionPath string, err error)
func (*ActionInitiator) SetShardServedTypes ¶
func (ai *ActionInitiator) SetShardServedTypes(servedTypes []topo.TabletType) *ActionNode
func (*ActionInitiator) ShardExternallyReparented ¶
func (ai *ActionInitiator) ShardExternallyReparented(tabletAlias topo.TabletAlias) *ActionNode
func (*ActionInitiator) ShardMultiRestore ¶
func (ai *ActionInitiator) ShardMultiRestore(args *MultiRestoreArgs) *ActionNode
func (*ActionInitiator) SlavePosition ¶
func (ai *ActionInitiator) SlavePosition(tabletAlias topo.TabletAlias) (actionPath string, err error)
func (*ActionInitiator) SlaveWasPromoted ¶
func (ai *ActionInitiator) SlaveWasPromoted(tabletAlias topo.TabletAlias) (actionPath string, err error)
func (*ActionInitiator) SlaveWasRestarted ¶
func (ai *ActionInitiator) SlaveWasRestarted(tabletAlias topo.TabletAlias, args *SlaveWasRestartedData) (actionPath string, err error)
func (*ActionInitiator) Sleep ¶
func (ai *ActionInitiator) Sleep(tabletAlias topo.TabletAlias, duration time.Duration) (actionPath string, err error)
func (*ActionInitiator) Snapshot ¶
func (ai *ActionInitiator) Snapshot(tabletAlias topo.TabletAlias, args *SnapshotArgs) (actionPath string, err error)
func (*ActionInitiator) SnapshotSourceEnd ¶
func (ai *ActionInitiator) SnapshotSourceEnd(tabletAlias topo.TabletAlias, args *SnapshotSourceEndArgs) (actionPath string, err error)
func (*ActionInitiator) StopSlave ¶
func (ai *ActionInitiator) StopSlave(tabletAlias topo.TabletAlias) (actionPath string, err error)
func (*ActionInitiator) UpdateShard ¶
func (ai *ActionInitiator) UpdateShard() *ActionNode
func (*ActionInitiator) WaitBlpPosition ¶
func (ai *ActionInitiator) WaitBlpPosition(tabletAlias topo.TabletAlias, blpPosition mysqlctl.BlpPosition, waitTime time.Duration) error
func (*ActionInitiator) WaitForCompletion ¶
func (ai *ActionInitiator) WaitForCompletion(actionPath string, waitTime time.Duration) error
func (*ActionInitiator) WaitForCompletionReply ¶
func (ai *ActionInitiator) WaitForCompletionReply(actionPath string, waitTime time.Duration) (interface{}, error)
func (*ActionInitiator) WaitSlavePosition ¶
func (ai *ActionInitiator) WaitSlavePosition(tabletAlias topo.TabletAlias, args *SlavePositionReq) (actionPath string, err error)
type ActionNode ¶
type ActionNode struct { Action string ActionGuid string Error string State ActionState Pid int // only != 0 if State == ACTION_STATE_RUNNING // contains filtered or unexported fields }
func ActionNodeFromJson ¶
func ActionNodeFromJson(data, path string) (*ActionNode, error)
func (*ActionNode) Path ¶
func (n *ActionNode) Path() string
type ActionState ¶
type ActionState string
type ApplySchemaKeyspaceArgs ¶
parameters are stored for debug purposes
type ApplySchemaShardArgs ¶
type ApplySchemaShardArgs struct { MasterTabletAlias topo.TabletAlias Change string Simple bool }
parameters are stored for debug purposes
type GetSchemaArgs ¶
type InitiatorError ¶
type InitiatorError string
func (InitiatorError) Error ¶
func (e InitiatorError) Error() string
type MigrateServedTypesArgs ¶
type MigrateServedTypesArgs struct {
ServedType topo.TabletType
}
parameters are stored for debug purposes
type MultiRestoreArgs ¶
type MultiSnapshotArgs ¶
type MultiSnapshotReply ¶
type MultiSnapshotReply struct { ParentAlias topo.TabletAlias ManifestPaths []string }
type ReserveForRestoreArgs ¶
type ReserveForRestoreArgs struct { ZkSrcTabletPath string // XXX SrcTabletAlias topo.TabletAlias }
type RestartSlaveData ¶
type RestartSlaveData struct { ReplicationState *mysqlctl.ReplicationState WaitPosition *mysqlctl.ReplicationPosition TimePromoted int64 // used to verify replication - a row will be inserted with this timestamp Parent topo.TabletAlias Force bool }
func (*RestartSlaveData) String ¶
func (rsd *RestartSlaveData) String() string
type RestoreArgs ¶
type SetShardServedTypesArgs ¶
type SetShardServedTypesArgs struct {
ServedTypes []topo.TabletType
}
parameters are stored for debug purposes
type SlavePositionReq ¶
type SlavePositionReq struct { ReplicationPosition mysqlctl.ReplicationPosition WaitTimeout int // seconds, zero to wait indefinitely }
type SlaveWasRestartedData ¶
type SlaveWasRestartedData struct { Parent topo.TabletAlias ExpectedMasterAddr string ExpectedMasterIpAddr string ScrapStragglers bool }
type SnapshotArgs ¶
type SnapshotReply ¶
type SnapshotSourceEndArgs ¶
type TabletActor ¶
type TabletActor struct {
// contains filtered or unexported fields
}
func NewTabletActor ¶
func NewTabletActor(mysqld *mysqlctl.Mysqld, mysqlDaemon mysqlctl.MysqlDaemon, topoServer topo.Server, tabletAlias topo.TabletAlias) *TabletActor
func (*TabletActor) HandleAction ¶
func (ta *TabletActor) HandleAction(actionPath, action, actionGuid string, forceRerun bool) error
This function should be protected from unforseen panics, as dispatchAction will catch everything. The rest of the code in this function should not panic.
func (*TabletActor) SlaveWasPromoted ¶
func (ta *TabletActor) SlaveWasPromoted(actionNode *ActionNode) error
func (*TabletActor) SlaveWasRestarted ¶
func (ta *TabletActor) SlaveWasRestarted(actionNode *ActionNode, masterAddr string) error
type TabletActorError ¶
type TabletActorError string
func (TabletActorError) Error ¶
func (e TabletActorError) Error() string
type TabletChangeCallback ¶
Each TabletChangeCallback must be idempotent and "threadsafe". The agent will execute these in a new goroutine each time a change is triggered.
type TabletManager ¶
type TabletManager struct {
// contains filtered or unexported fields
}
we keep track of the agent so we can use its tabletAlias, ts, ...
var TabletManagerRpcService *TabletManager
func (*TabletManager) GetPermissions ¶
func (tm *TabletManager) GetPermissions(context *rpcproto.Context, args *rpc.UnusedRequest, reply *mysqlctl.Permissions) error
func (*TabletManager) GetSchema ¶
func (tm *TabletManager) GetSchema(context *rpcproto.Context, args *GetSchemaArgs, reply *mysqlctl.SchemaDefinition) error
func (*TabletManager) GetSlaves ¶
func (tm *TabletManager) GetSlaves(context *rpcproto.Context, args *rpc.UnusedRequest, reply *SlaveList) (err error)
func (*TabletManager) MasterPosition ¶
func (tm *TabletManager) MasterPosition(context *rpcproto.Context, args *rpc.UnusedRequest, reply *mysqlctl.ReplicationPosition) error
func (*TabletManager) Ping ¶
func (tm *TabletManager) Ping(context *rpcproto.Context, args, reply *string) error
func (*TabletManager) SlavePosition ¶
func (tm *TabletManager) SlavePosition(context *rpcproto.Context, args *rpc.UnusedRequest, reply *mysqlctl.ReplicationPosition) error
func (*TabletManager) StopSlave ¶
func (tm *TabletManager) StopSlave(context *rpcproto.Context, args *rpc.UnusedRequest, reply *rpc.UnusedResponse) error
func (*TabletManager) WaitBlpPosition ¶
func (tm *TabletManager) WaitBlpPosition(context *rpcproto.Context, args *WaitBlpPositionArgs, reply *rpc.UnusedResponse) error
func (*TabletManager) WaitSlavePosition ¶
func (tm *TabletManager) WaitSlavePosition(context *rpcproto.Context, args *SlavePositionReq, reply *mysqlctl.ReplicationPosition) error
type WaitBlpPositionArgs ¶
type WaitBlpPositionArgs struct { BlpPosition mysqlctl.BlpPosition WaitTimeout int }