Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ManagerSessionTTL = 60
ManagerSessionTTL is the etcd session's TTL in seconds. It's exported for testing.
Functions ¶
func GetOwnerInfo ¶
func GetOwnerInfo(ctx, logCtx context.Context, elec *concurrency.Election, id string) (string, error)
GetOwnerInfo gets the owner information.
Types ¶
type DDLOwnerChecker ¶
type DDLOwnerChecker interface { // IsOwner returns whether the ownerManager is the owner. IsOwner() bool }
DDLOwnerChecker is used to check whether tidb is owner.
type Manager ¶
type Manager interface { // ID returns the ID of the manager. ID() string // IsOwner returns whether the ownerManager is the owner. IsOwner() bool // RetireOwner make the manager to be a not owner. It's exported for testing. RetireOwner() // GetOwnerID gets the owner ID. GetOwnerID(ctx context.Context) (string, error) // CampaignOwner campaigns the owner. CampaignOwner() error // ResignOwner lets the owner start a new election. ResignOwner(ctx context.Context) error // Cancel cancels this etcd ownerManager. Cancel() // RequireOwner requires the ownerManager is owner. RequireOwner(ctx context.Context) error // CampaignCancel cancels one etcd campaign CampaignCancel() // SetBeOwnerHook sets a hook. The hook is called before becoming an owner. SetBeOwnerHook(hook func()) }
Manager is used to campaign the owner and manage the owner information.
func NewMockManager ¶
NewMockManager creates a new mock Manager.
Click to show internal directories.
Click to hide internal directories.