Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
milvus
milvus
提交
4ec99379
M
milvus
项目概览
milvus
/
milvus
大约 1 年 前同步成功
通知
261
Star
22476
Fork
2472
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
milvus
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
4ec99379
编写于
10月 03, 2021
作者:
C
cai.zhang
提交者:
GitHub
10月 03, 2021
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[skip ci]Fix golint in indexnode/task_scheduler.go (#9117)
Signed-off-by:
N
cai.zhang
<
cai.zhang@zilliz.com
>
上级
1f231853
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
12 addition
and
0 deletion
+12
-0
internal/indexnode/task_scheduler.go
internal/indexnode/task_scheduler.go
+12
-0
未找到文件。
internal/indexnode/task_scheduler.go
浏览文件 @
4ec99379
...
...
@@ -26,6 +26,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
...
...
@@ -39,6 +40,7 @@ type TaskQueue interface {
//tryToRemoveUselessIndexBuildTask(indexID UniqueID) []UniqueID
}
// BaseTaskQueue is a basic instance of TaskQueue.
type
BaseTaskQueue
struct
{
unissuedTasks
*
list
.
List
activeTasks
map
[
UniqueID
]
task
...
...
@@ -89,6 +91,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
()
...
...
@@ -103,6 +106,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
()
...
...
@@ -116,6 +120,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
()
...
...
@@ -150,6 +155,7 @@ func (queue *BaseTaskQueue) PopActiveTask(tID UniqueID) task {
// return indexBuildIDs
//}
// Enqueue adds a task to TaskQueue.
func
(
queue
*
BaseTaskQueue
)
Enqueue
(
t
task
)
error
{
err
:=
t
.
OnEnqueue
()
if
err
!=
nil
{
...
...
@@ -158,10 +164,12 @@ func (queue *BaseTaskQueue) Enqueue(t task) error {
return
queue
.
addUnissuedTask
(
t
)
}
// IndexBuildTaskQueue is a task queue used to store building index tasks.
type
IndexBuildTaskQueue
struct
{
BaseTaskQueue
}
// NewIndexBuildTaskQueue creates a new IndexBuildTaskQueue.
func
NewIndexBuildTaskQueue
(
sched
*
TaskScheduler
)
*
IndexBuildTaskQueue
{
return
&
IndexBuildTaskQueue
{
BaseTaskQueue
:
BaseTaskQueue
{
...
...
@@ -174,6 +182,7 @@ func NewIndexBuildTaskQueue(sched *TaskScheduler) *IndexBuildTaskQueue {
}
}
// TaskScheduler is a scheduler of indexing tasks.
type
TaskScheduler
struct
{
IndexBuildQueue
TaskQueue
...
...
@@ -184,6 +193,7 @@ type TaskScheduler struct {
cancel
context
.
CancelFunc
}
// NewTaskScheduler creates a new task scheduler of indexing tasks.
func
NewTaskScheduler
(
ctx
context
.
Context
,
kv
kv
.
BaseKV
)
(
*
TaskScheduler
,
error
)
{
ctx1
,
cancel
:=
context
.
WithCancel
(
ctx
)
...
...
@@ -280,6 +290,7 @@ func (sched *TaskScheduler) indexBuildLoop() {
}
}
// Start stats the task scheduler of indexing tasks.
func
(
sched
*
TaskScheduler
)
Start
()
error
{
sched
.
wg
.
Add
(
1
)
...
...
@@ -287,6 +298,7 @@ func (sched *TaskScheduler) Start() error {
return
nil
}
// Close 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.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录