Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
milvus
milvus
提交
2935e9f7
M
milvus
项目概览
milvus
/
milvus
10 个月 前同步成功
通知
260
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,体验更适合开发者的 AI 搜索 >>
未验证
提交
2935e9f7
编写于
5月 17, 2023
作者:
W
wei liu
提交者:
GitHub
5月 17, 2023
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix alter collection merge multi props policy (#24147)
Signed-off-by:
N
Wei Liu
<
wei.liu@zilliz.com
>
上级
eb9ef23c
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
73 addition
and
1 deletion
+73
-1
internal/rootcoord/alter_collection_task.go
internal/rootcoord/alter_collection_task.go
+25
-1
internal/rootcoord/alter_collection_task_test.go
internal/rootcoord/alter_collection_task_test.go
+48
-0
未找到文件。
internal/rootcoord/alter_collection_task.go
浏览文件 @
2935e9f7
...
...
@@ -22,9 +22,11 @@ import (
"github.com/cockroachdb/errors"
"github.com/milvus-io/milvus/internal/metastore/model"
"github.com/milvus-io/milvus/pkg/log"
"go.uber.org/zap"
"github.com/milvus-io/milvus-proto/go-api/commonpb"
"github.com/milvus-io/milvus-proto/go-api/milvuspb"
)
...
...
@@ -55,7 +57,7 @@ func (a *alterCollectionTask) Execute(ctx context.Context) error {
}
newColl
:=
oldColl
.
Clone
()
newColl
.
Properties
=
a
.
Req
.
GetProperties
(
)
updateCollectionProperties
(
newColl
,
a
.
Req
.
GetProperties
()
)
ts
:=
a
.
GetTs
()
redoTask
:=
newBaseRedoTask
(
a
.
core
.
stepExecutor
)
...
...
@@ -82,3 +84,25 @@ func (a *alterCollectionTask) Execute(ctx context.Context) error {
return
redoTask
.
Execute
(
ctx
)
}
func
updateCollectionProperties
(
coll
*
model
.
Collection
,
updatedProps
[]
*
commonpb
.
KeyValuePair
)
{
props
:=
make
(
map
[
string
]
string
)
for
_
,
prop
:=
range
coll
.
Properties
{
props
[
prop
.
Key
]
=
prop
.
Value
}
for
_
,
prop
:=
range
updatedProps
{
props
[
prop
.
Key
]
=
prop
.
Value
}
propKV
:=
make
([]
*
commonpb
.
KeyValuePair
,
0
)
for
key
,
value
:=
range
props
{
propKV
=
append
(
propKV
,
&
commonpb
.
KeyValuePair
{
Key
:
key
,
Value
:
value
,
})
}
coll
.
Properties
=
propKV
}
internal/rootcoord/alter_collection_task_test.go
浏览文件 @
2935e9f7
...
...
@@ -157,4 +157,52 @@ func Test_alterCollectionTask_Execute(t *testing.T) {
err
:=
task
.
Execute
(
context
.
Background
())
assert
.
NoError
(
t
,
err
)
})
t
.
Run
(
"test update collection props"
,
func
(
t
*
testing
.
T
)
{
coll
:=
&
model
.
Collection
{
Properties
:
[]
*
commonpb
.
KeyValuePair
{
{
Key
:
common
.
CollectionTTLConfigKey
,
Value
:
"1"
,
},
},
}
updateProps1
:=
[]
*
commonpb
.
KeyValuePair
{
{
Key
:
common
.
CollectionAutoCompactionKey
,
Value
:
"true"
,
},
}
updateCollectionProperties
(
coll
,
updateProps1
)
assert
.
Contains
(
t
,
coll
.
Properties
,
&
commonpb
.
KeyValuePair
{
Key
:
common
.
CollectionTTLConfigKey
,
Value
:
"1"
,
})
assert
.
Contains
(
t
,
coll
.
Properties
,
&
commonpb
.
KeyValuePair
{
Key
:
common
.
CollectionAutoCompactionKey
,
Value
:
"true"
,
})
updateProps2
:=
[]
*
commonpb
.
KeyValuePair
{
{
Key
:
common
.
CollectionTTLConfigKey
,
Value
:
"2"
,
},
}
updateCollectionProperties
(
coll
,
updateProps2
)
assert
.
Contains
(
t
,
coll
.
Properties
,
&
commonpb
.
KeyValuePair
{
Key
:
common
.
CollectionTTLConfigKey
,
Value
:
"2"
,
})
assert
.
Contains
(
t
,
coll
.
Properties
,
&
commonpb
.
KeyValuePair
{
Key
:
common
.
CollectionAutoCompactionKey
,
Value
:
"true"
,
})
})
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录