Documentation
¶
Index ¶
- Variables
- func IsSameScope(left, right *common.ID) bool
- func NewPoolHandler(num int) *poolHandler
- func NewSingleWorkerHandler(name string) *singleWorkerHandler
- func NextTaskId() uint64
- func RegisterType(t TaskType, name string)
- func TaskName(t TaskType) string
- type BaseDispatcher
- type BaseScheduler
- type BaseScopedDispatcher
- type BaseTask
- type BaseTaskHandler
- type Context
- type Dispatcher
- type FnTask
- type FuncT
- type MScopedTask
- type MultiScopedFnTask
- type Scheduler
- type ScopedFnTask
- type ScopedTask
- type ScopedTaskSharder
- type Task
- type TaskHandler
- type TaskScheduler
- type TaskType
- type TxnTaskFactory
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrDispatcherNotFound = errors.New("tae sched: dispatcher not found") ErrSchedule = errors.New("tae sched: cannot schedule") )
View Source
var ( ErrBadTaskRequestPara = errors.New("tae scheduler: bad task request parameters") ErrScheduleScopeConflict = errors.New("tae scheduler: scope conflict") )
View Source
var DefaultScopeSharder = func(scope *common.ID) int { if scope == nil { return 0 } return int(scope.TableID + scope.SegmentID) }
View Source
var (
ErrDispatchWrongTask = errors.New("tae: wrong task type")
)
View Source
var (
ErrTaskHandleEnqueue = errors.New("tae: task handle enqueue")
)
View Source
var WaitableCtx = &Context{Waitable: true}
Functions ¶
func IsSameScope ¶
func NewPoolHandler ¶
func NewPoolHandler(num int) *poolHandler
func NewSingleWorkerHandler ¶
func NewSingleWorkerHandler(name string) *singleWorkerHandler
func NextTaskId ¶
func NextTaskId() uint64
func RegisterType ¶
Types ¶
type BaseDispatcher ¶
type BaseDispatcher struct {
// contains filtered or unexported fields
}
func NewBaseDispatcher ¶
func NewBaseDispatcher() *BaseDispatcher
func (*BaseDispatcher) Close ¶
func (d *BaseDispatcher) Close() error
func (*BaseDispatcher) Dispatch ¶
func (d *BaseDispatcher) Dispatch(task Task)
func (*BaseDispatcher) RegisterHandler ¶
func (d *BaseDispatcher) RegisterHandler(t TaskType, h TaskHandler)
type BaseScheduler ¶
type BaseScheduler struct { ops.OpWorker Dispatchers map[TaskType]Dispatcher // contains filtered or unexported fields }
func NewBaseScheduler ¶
func NewBaseScheduler(name string) *BaseScheduler
func (*BaseScheduler) RegisterDispatcher ¶
func (s *BaseScheduler) RegisterDispatcher(t TaskType, dispatcher Dispatcher)
func (*BaseScheduler) Schedule ¶
func (s *BaseScheduler) Schedule(task Task) error
func (*BaseScheduler) Stop ¶
func (s *BaseScheduler) Stop()
type BaseScopedDispatcher ¶
type BaseScopedDispatcher struct {
// contains filtered or unexported fields
}
func NewBaseScopedDispatcher ¶
func NewBaseScopedDispatcher(sharder ScopedTaskSharder) *BaseScopedDispatcher
func (*BaseScopedDispatcher) AddHandle ¶
func (d *BaseScopedDispatcher) AddHandle(h TaskHandler)
func (*BaseScopedDispatcher) Close ¶
func (d *BaseScopedDispatcher) Close() error
func (*BaseScopedDispatcher) Dispatch ¶
func (d *BaseScopedDispatcher) Dispatch(task Task)
type BaseTaskHandler ¶
func NewBaseEventHandler ¶
func NewBaseEventHandler(name string) *BaseTaskHandler
func (*BaseTaskHandler) Close ¶
func (h *BaseTaskHandler) Close() error
func (*BaseTaskHandler) Enqueue ¶
func (h *BaseTaskHandler) Enqueue(task Task)
func (*BaseTaskHandler) Execute ¶
func (h *BaseTaskHandler) Execute(task Task)
type Dispatcher ¶
type MScopedTask ¶
type MultiScopedFnTask ¶
type MultiScopedFnTask struct { *FnTask // contains filtered or unexported fields }
func NewMultiScopedFnTask ¶
func (*MultiScopedFnTask) Scopes ¶
func (task *MultiScopedFnTask) Scopes() []common.ID
type ScopedFnTask ¶
type ScopedFnTask struct { *FnTask // contains filtered or unexported fields }
func NewScopedFnTask ¶
func (*ScopedFnTask) Scope ¶
func (task *ScopedFnTask) Scope() *common.ID
type ScopedTask ¶
type ScopedTaskSharder ¶
type TaskScheduler ¶
type TaskScheduler interface { Scheduler ScheduleTxnTask(ctx *Context, taskType TaskType, factory TxnTaskFactory) (Task, error) ScheduleMultiScopedTxnTask(ctx *Context, taskType TaskType, scopes []common.ID, factory TxnTaskFactory) (Task, error) ScheduleMultiScopedFn(ctx *Context, taskType TaskType, scopes []common.ID, fn FuncT) (Task, error) ScheduleFn(ctx *Context, taskType TaskType, fn func() error) (Task, error) ScheduleScopedFn(ctx *Context, taskType TaskType, scope *common.ID, fn func() error) (Task, error) Checkpoint(indexes []*wal.Index) error GetCheckpointedLSN() uint64 GetPenddingLSNCnt() uint64 GetSafeTS() uint64 }
Source Files
¶
Click to show internal directories.
Click to hide internal directories.