未验证 提交 83d63391 编写于 作者: C cai.zhang 提交者: GitHub

[skip ci] Fix golint in indexcoord/task_scheduler.go (#8872)

Signed-off-by: Ncai.zhang <cai.zhang@zilliz.com>
上级 435dcfe2
......@@ -27,6 +27,7 @@ import (
oplog "github.com/opentracing/opentracing-go/log"
)
// TaskQueue is a queue used to store tasks.
type TaskQueue interface {
utChan() <-chan int
utEmpty() bool
......@@ -40,6 +41,7 @@ type TaskQueue interface {
tryToRemoveUselessIndexAddTask(indexID UniqueID) []UniqueID
}
// BaseTaskQueue is a basic instance of TaskQueue.
type BaseTaskQueue struct {
unissuedTasks *list.List
activeTasks map[UniqueID]task
......@@ -90,6 +92,7 @@ func (queue *BaseTaskQueue) addUnissuedTask(t task) error {
// return queue.unissuedTasks.Front().Value.(task)
//}
// PopUnissuedTask pops a task from tasks queue.
func (queue *BaseTaskQueue) PopUnissuedTask() task {
queue.utLock.Lock()
defer queue.utLock.Unlock()
......@@ -104,6 +107,7 @@ func (queue *BaseTaskQueue) PopUnissuedTask() task {
return ft.Value.(task)
}
// AddActiveTask adds a task to activeTasks.
func (queue *BaseTaskQueue) AddActiveTask(t task) {
queue.atLock.Lock()
defer queue.atLock.Unlock()
......@@ -117,6 +121,7 @@ func (queue *BaseTaskQueue) AddActiveTask(t task) {
queue.activeTasks[tID] = t
}
// PopActiveTask tasks out a task from activateTask and the task will be executed.
func (queue *BaseTaskQueue) PopActiveTask(tID UniqueID) task {
queue.atLock.Lock()
defer queue.atLock.Unlock()
......@@ -130,6 +135,7 @@ func (queue *BaseTaskQueue) PopActiveTask(tID UniqueID) task {
return nil
}
// Enqueue adds a task to TaskQueue.
func (queue *BaseTaskQueue) Enqueue(t task) error {
tID, _ := queue.sched.idAllocator.AllocOne()
log.Debug("indexcoord", zap.Int64("[Builder] allocate reqID", tID))
......@@ -141,11 +147,13 @@ func (queue *BaseTaskQueue) Enqueue(t task) error {
return queue.addUnissuedTask(t)
}
// IndexAddTaskQueue is a task queue used to store building index tasks.
type IndexAddTaskQueue struct {
BaseTaskQueue
lock sync.Mutex
}
// Enqueue adds a building index task to IndexAddTaskQueue.
func (queue *IndexAddTaskQueue) Enqueue(t task) error {
queue.lock.Lock()
defer queue.lock.Unlock()
......@@ -175,6 +183,7 @@ func (queue *IndexAddTaskQueue) tryToRemoveUselessIndexAddTask(indexID UniqueID)
return indexBuildIDs
}
// NewIndexAddTaskQueue creates a new IndexAddTaskQueue.
func NewIndexAddTaskQueue(sched *TaskScheduler) *IndexAddTaskQueue {
return &IndexAddTaskQueue{
BaseTaskQueue: BaseTaskQueue{
......@@ -187,6 +196,7 @@ func NewIndexAddTaskQueue(sched *TaskScheduler) *IndexAddTaskQueue {
}
}
// TaskScheduler is a scheduler of indexing tasks.
type TaskScheduler struct {
IndexAddQueue TaskQueue
......@@ -199,6 +209,7 @@ type TaskScheduler struct {
cancel context.CancelFunc
}
// NewTaskScheduler creates a new task scheduler of indexing tasks.
func NewTaskScheduler(ctx context.Context,
idAllocator *allocator.GlobalIDAllocator,
kv kv.BaseKV,
......@@ -272,6 +283,7 @@ func (sched *TaskScheduler) indexAddLoop() {
}
}
// Start stats the task scheduler of indexing tasks.
func (sched *TaskScheduler) Start() error {
sched.wg.Add(1)
......@@ -280,6 +292,7 @@ func (sched *TaskScheduler) Start() error {
return nil
}
// Start closes the task scheduler of indexing tasks.
func (sched *TaskScheduler) Close() {
sched.cancel()
sched.wg.Wait()
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册