Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
milvus
milvus
提交
d920e5c9
M
milvus
项目概览
milvus
/
milvus
12 个月 前同步成功
通知
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,发现更多精彩内容 >>
未验证
提交
d920e5c9
编写于
5月 31, 2022
作者:
X
XuanYang-cn
提交者:
GitHub
5月 31, 2022
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Fix DataNode panic while allocating IDs (#17294)
See also: #17270 Signed-off-by:
N
yangxuan
<
xuan.yang@zilliz.com
>
上级
bcf3b742
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
15 addition
and
12 deletion
+15
-12
internal/datanode/allocator.go
internal/datanode/allocator.go
+9
-9
internal/datanode/allocator_test.go
internal/datanode/allocator_test.go
+5
-1
internal/datanode/mock_test.go
internal/datanode/mock_test.go
+1
-2
未找到文件。
internal/datanode/allocator.go
浏览文件 @
d920e5c9
...
...
@@ -58,15 +58,14 @@ func (alloc *allocator) allocID() (UniqueID, error) {
},
Count
:
1
,
})
if
resp
.
Status
.
ErrorCode
!=
commonpb
.
ErrorCode_Success
{
return
0
,
errors
.
New
(
resp
.
Status
.
GetReason
())
}
if
err
!=
nil
{
return
0
,
err
}
if
resp
.
GetStatus
()
.
GetErrorCode
()
!=
commonpb
.
ErrorCode_Success
{
return
0
,
errors
.
New
(
resp
.
GetStatus
()
.
GetReason
())
}
return
resp
.
ID
,
nil
}
...
...
@@ -81,13 +80,14 @@ func (alloc *allocator) allocIDBatch(count uint32) (UniqueID, uint32, error) {
Count
:
count
,
})
if
resp
.
Status
.
ErrorCode
!=
commonpb
.
ErrorCode_Success
{
return
0
,
0
,
errors
.
New
(
resp
.
Status
.
GetReason
())
}
if
err
!=
nil
{
return
0
,
0
,
err
}
if
resp
.
GetStatus
()
.
GetErrorCode
()
!=
commonpb
.
ErrorCode_Success
{
return
0
,
0
,
errors
.
New
(
resp
.
GetStatus
()
.
GetReason
())
}
return
resp
.
GetID
(),
resp
.
GetCount
(),
nil
}
...
...
internal/datanode/allocator_test.go
浏览文件 @
d920e5c9
...
...
@@ -30,11 +30,15 @@ func TestAllocator_Basic(t *testing.T) {
ms
.
setID
(
666
)
_
,
err
:=
allocator
.
allocID
()
assert
.
NoError
(
t
,
err
)
ms
.
setID
(
-
1
)
_
,
err
=
allocator
.
allocID
()
assert
.
Error
(
t
,
err
)
})
t
.
Run
(
"Test alloc ID batch"
,
func
(
t
*
testing
.
T
)
{
// If id == 0, AllocID will return not successful status
// If id == -1, AllocID will return err
// If id == -1, AllocID will return err
with nil status
ms
.
setID
(
666
)
_
,
count
,
err
:=
allocator
.
allocIDBatch
(
10
)
assert
.
NoError
(
t
,
err
)
...
...
internal/datanode/mock_test.go
浏览文件 @
d920e5c9
...
...
@@ -864,8 +864,7 @@ func (m *RootCoordFactory) AllocID(ctx context.Context, in *rootcoordpb.AllocIDR
}
if
m
.
ID
==
-
1
{
resp
.
Status
.
ErrorCode
=
commonpb
.
ErrorCode_Success
return
resp
,
errors
.
New
(
resp
.
Status
.
GetReason
())
return
nil
,
errors
.
New
(
resp
.
Status
.
GetReason
())
}
resp
.
ID
=
m
.
ID
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录