Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
BaiXuePrincess
milvus
提交
f30822e3
milvus
项目概览
BaiXuePrincess
/
milvus
与 Fork 源项目一致
从无法访问的项目Fork
通知
7
Star
4
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
milvus
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
f30822e3
编写于
10月 12, 2019
作者:
Y
Yu Kun
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'upstream/branch-0.5.0' into branch-0.5.0-yk
Former-commit-id: e1c7a2e0cb6925a2a7004af1c5a45bbf7057879e
上级
6eb3cffc
54bc7b58
变更
3
显示空白变更内容
内联
并排
Showing
3 changed file
with
9 addition
and
4 deletion
+9
-4
cpp/CHANGELOG.md
cpp/CHANGELOG.md
+1
-0
cpp/src/scheduler/TaskTable.cpp
cpp/src/scheduler/TaskTable.cpp
+6
-3
cpp/src/scheduler/TaskTable.h
cpp/src/scheduler/TaskTable.h
+2
-1
未找到文件。
cpp/CHANGELOG.md
浏览文件 @
f30822e3
...
...
@@ -15,6 +15,7 @@ Please mark all change in change log and use the ticket from JIRA.
-
MS-620 - Get table row counts display wrong error code
-
MS-637 - out of memory when load too many tasks
-
MS-640 - Cache object size calculate incorrect
-
MS-641 - Segment fault(signal 11) in PickToLoad
## Improvement
-
MS-552 - Add and change the easylogging library
...
...
cpp/src/scheduler/TaskTable.cpp
浏览文件 @
f30822e3
...
...
@@ -158,8 +158,9 @@ TaskTableItem::Dump() {
std
::
vector
<
uint64_t
>
TaskTable
::
PickToLoad
(
uint64_t
limit
)
{
std
::
lock_guard
<
std
::
mutex
>
lock
(
mutex_
);
size_t
count
=
0
;
for
(
in
t
j
=
last_finish_
+
1
;
j
<
table_
.
size
();
++
j
)
{
for
(
uint64_
t
j
=
last_finish_
+
1
;
j
<
table_
.
size
();
++
j
)
{
if
(
not
table_
[
j
])
{
SERVER_LOG_WARNING
<<
"table["
<<
j
<<
"] is nullptr"
;
}
...
...
@@ -186,6 +187,7 @@ TaskTable::PickToLoad(uint64_t limit) {
std
::
vector
<
uint64_t
>
TaskTable
::
PickToExecute
(
uint64_t
limit
)
{
std
::
lock_guard
<
std
::
mutex
>
lock
(
mutex_
);
std
::
vector
<
uint64_t
>
indexes
;
bool
cross
=
false
;
for
(
uint64_t
i
=
last_finish_
+
1
,
count
=
0
;
i
<
table_
.
size
()
&&
count
<
limit
;
++
i
)
{
...
...
@@ -202,7 +204,7 @@ TaskTable::PickToExecute(uint64_t limit) {
void
TaskTable
::
Put
(
TaskPtr
task
)
{
std
::
lock_guard
<
std
::
mutex
>
lock
(
id_
mutex_
);
std
::
lock_guard
<
std
::
mutex
>
lock
(
mutex_
);
auto
item
=
std
::
make_shared
<
TaskTableItem
>
();
item
->
id
=
id_
++
;
item
->
task
=
std
::
move
(
task
);
...
...
@@ -216,7 +218,7 @@ TaskTable::Put(TaskPtr task) {
void
TaskTable
::
Put
(
std
::
vector
<
TaskPtr
>&
tasks
)
{
std
::
lock_guard
<
std
::
mutex
>
lock
(
id_
mutex_
);
std
::
lock_guard
<
std
::
mutex
>
lock
(
mutex_
);
for
(
auto
&
task
:
tasks
)
{
auto
item
=
std
::
make_shared
<
TaskTableItem
>
();
item
->
id
=
id_
++
;
...
...
@@ -232,6 +234,7 @@ TaskTable::Put(std::vector<TaskPtr>& tasks) {
TaskTableItemPtr
TaskTable
::
Get
(
uint64_t
index
)
{
std
::
lock_guard
<
std
::
mutex
>
lock
(
mutex_
);
return
table_
[
index
];
}
...
...
cpp/src/scheduler/TaskTable.h
浏览文件 @
f30822e3
...
...
@@ -150,6 +150,7 @@ class TaskTable {
public:
TaskTableItemPtr
&
operator
[](
uint64_t
index
)
{
std
::
lock_guard
<
std
::
mutex
>
lock
(
mutex_
);
return
table_
[
index
];
}
...
...
@@ -244,7 +245,7 @@ class TaskTable {
private:
std
::
uint64_t
id_
=
0
;
mutable
std
::
mutex
id_
mutex_
;
mutable
std
::
mutex
mutex_
;
std
::
deque
<
TaskTableItemPtr
>
table_
;
std
::
function
<
void
(
void
)
>
subscriber_
=
nullptr
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录