1559 Commits

Author SHA1 Message Date
Bingyi Sun
b469999f65
enhance: allow hyphen in partition name (#38474)
Signed-off-by: sunby <sunbingyi1992@gmail.com>
2024-12-18 13:54:47 +08:00
Xianhui Lin
352e51a88d
enhance: [2.4]alterdatabase support delete property (#38450)
alterdatabase support delete property
issue: https://github.com/milvus-io/milvus/issues/38379

---------

Signed-off-by: Xianhui.Lin <xianhui.lin@zilliz.com>
2024-12-15 17:40:44 +08:00
SimFG
4c896c628c
fix: [2.4] replicate message exception when the ttMsgEnable config is changed dynamically (#38440)
- issue: #38177
- pr: #38178

Signed-off-by: SimFG <bang.fu@zilliz.com>
2024-12-14 23:24:51 +08:00
SimFG
df73f93126
enhance: [2.4] pick some master improvements to 2.4 branch (#38128)
- issue: #38127

master pr list:
- #37759
- #37835
- #37845
- #37874
- #37894
- #37969
- #37983
- #38005
- #38035

---------

Signed-off-by: SimFG <bang.fu@zilliz.com>
2024-12-13 10:24:45 +08:00
Xianhui Lin
24c8883369
enhance: [2.4]altercollection validation logic (#38421)
altercollection validation logic
issue: https://github.com/milvus-io/milvus/issues/37436
pr: https://github.com/milvus-io/milvus/pull/38419

---------

Signed-off-by: Xianhui.Lin <xianhui.lin@zilliz.com>
2024-12-12 21:46:44 +08:00
congqixia
cacac66c93
fix: [2.4] Check target partition load state only when dropping partition (#38375) (#38394)
Cherry pick from master
pr: #38375
Related to #38372

This PR make drop partition only check target partition load states only
in case of concurrent releasing other partition in same collection.

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-12-12 17:18:43 +08:00
Gao
d7e926f1cb
enhance: [2.4] support recall estimation (#38064)
issue: #37899 
pr: #38017

---------

Signed-off-by: chasingegg <chao.gao@zilliz.com>
2024-12-11 20:40:48 +08:00
Buqian Zheng
25249fd26e
enhance: [2.4] add metrics for counting number of nun-zeros/tokens of sparse search (#38328)
sparse vectors may have arbitrary number of non zeros and it is hard to
optimize without knowing the actual distribution of nnz. this PR adds a
metric for analyzing that.

pr: #38329 

also fixed a bug of sparse when searching by pk

Signed-off-by: Buqian Zheng <zhengbuqian@gmail.com>
2024-12-11 10:00:43 +08:00
Xianhui Lin
a51647569b
enhance: [2.4]alterindex & altercollection supports altering properties (#38111)
enhance :

alterindex delete properties
We have introduced a new parameter deleteKeys to the alterindex
functionality, which allows for the deletion of properties within an
index. This enhancement provides users with the flexibility to manage
index properties more effectively by removing specific keys as needed.
altercollection delete properties
We have introduced a new parameter deleteKeys to the altercollection
functionality, which allows for the deletion of properties within an
collection. This enhancement provides users with the flexibility to
manage collection properties more effectively by removing specific keys
as needed.
3.support altercollectionfield
We currently support modifying the fieldparams of a field in a
collection using altercollectionfield, which only allows changes to the
max-length attribute.
Key Points:

New Parameter - deleteKeys: This new parameter enables the deletion of
specified properties from an index. By passing a list of keys to
deleteKeys, users can remove the corresponding properties from the
index.

Mutual Exclusivity: The deleteKeys parameter cannot be used in
conjunction with the extraParams parameter. Users must choose one
parameter to pass based on their requirement. If deleteKeys is provided,
it indicates an intent to delete properties; if extraParams is provided,
it signifies the addition or update of properties.

issue: https://github.com/milvus-io/milvus/issues/37436
pr: https://github.com/milvus-io/milvus/pull/37437

---------

Signed-off-by: Xianhui.Lin <xianhui.lin@zilliz.com>
2024-12-06 14:50:41 +08:00
wei liu
8646bba134
fix: grant ManualCompact api doesn't work (#38096) (#38168)
issue: #38086
pr: #38096
cause ManualCompact api pass collection id in request, but RBAC requires
to check collection name, so grant ManualCompact api doesn't work.

This PR refine the ManualCompact api to accpet collection name in
request.

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-12-05 16:00:42 +08:00
sthuang
febed0abb7
enhance: [2.4] add list aliases privilege into public role and fix typo (#38208)
cherry-pick from master: https://github.com/milvus-io/milvus/pull/38176,
https://github.com/milvus-io/milvus/pull/38195
related issue: https://github.com/milvus-io/milvus/issues/37031

---------

Signed-off-by: shaoting-huang <shaoting.huang@zilliz.com>
2024-12-04 17:58:40 +08:00
smellthemoon
ab88d23ec0
enhance: support db request in Restful api(#38140)(#38078) (#38188)
pr: #38078
pr: #38140
issue: #38077

---------

Signed-off-by: lixinguo <xinguo.li@zilliz.com>
Co-authored-by: lixinguo <xinguo.li@zilliz.com>
2024-12-04 10:40:39 +08:00
sthuang
66f2dac5f5
fix: [2.4] fix grant/revoke v2 meta and unclear error messages (#38146)
cherry-pick from https://github.com/milvus-io/milvus/pull/38110,
https://github.com/milvus-io/milvus/pull/38130
related issue: https://github.com/milvus-io/milvus/issues/37031

Signed-off-by: shaoting-huang <shaoting.huang@zilliz.com>
2024-12-03 22:06:41 +08:00
cai.zhang
580caebb31
fix: [2.4]Check if the dynamic fields contain any static fields (#38027)
issue: #38024 

master pr: #38025

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2024-12-02 12:22:38 +08:00
cai.zhang
fdf3a8aa0a
fix: [2.4] Use the ID to retrieve the real name when collectionName is empty (#37859) (#37881)
issue: #36989

master pr: #37859

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2024-11-29 11:36:37 +08:00
wei liu
fc2886215c
enhance: Optimize param cost in search (#37738) (#38019)
pr: #37738

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-11-28 14:10:36 +08:00
Gao
165afbba91
enhance: support retry search when topk is reduced and result not enough (#37093)
issue: #35576 
pr: #35645

---------

Signed-off-by: chasingegg <chao.gao@zilliz.com>
2024-11-28 10:12:37 +08:00
wei liu
b24510164e
enhance: Decouple shard client manager from shard cache (#37371) (#37753)
issue: #37115
pr: #37371 #37646 #37729
the old implementation update shard cache and shard client manager at
same time, which causes lots of conor case due to concurrent issue
without lock.

This PR decouple shard client manager from shard cache, so only shard
cache will be updated if delegator changes. and make sure shard client
manager will always return the right client, and create a new client if
not exist. in case of client leak, shard client manager will purge
client in async for every 10 minutes.

---------

---------

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
Co-authored-by: congqixia <congqi.xia@zilliz.com>
2024-11-25 17:50:34 +08:00
sthuang
d8f1af68e9
enhance: [2.4] RBAC built in privilege groups and grant v2 (#37787)
cherry-pick from master: https://github.com/milvus-io/milvus/pull/37720,
https://github.com/milvus-io/milvus/pull/37785
issue: https://github.com/milvus-io/milvus/issues/37031

Signed-off-by: shaoting-huang <shaoting.huang@zilliz.com>
2024-11-25 11:24:54 +08:00
wei liu
c50cb8d3ef
fix: Make GetShardLeaders only retries on retriable error (#37687)
issue: #37532
pr: #37684

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-11-14 21:14:40 +08:00
congqixia
8801322371
enhance: [2.4] Invalidate collection cache when release collection (#37577) (#37628)
Cherry-pick from master
pr: #37577
Related to #37395

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-11-13 14:00:31 +08:00
sthuang
9e8b6ace6d
enhance: [2.4] RBAC custom privilege group (#37560)
Cherry-pick from master
pr: https://github.com/milvus-io/milvus/pull/37087,
https://github.com/milvus-io/milvus/pull/37558
issue: #37031

---------

Signed-off-by: shaoting-huang <shaoting.huang@zilliz.com>
2024-11-11 14:20:29 +08:00
wei liu
6b69170a64
fix: proxy retry to get shard leader on unloaded collection (#37326)
issue: #37115

pr#37116 let proxy retry to get shard leader if error happens, which
cause if search/query on a unloaded collection, which will keep retrying
until ctx done.

This PR add error type check to skip retry on ErrCollectionLoaded.

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-11-05 11:02:25 +08:00
yihao.dai
380662153f
fix: [2.4] Revert "enhance: Support db for bulkinsert (#37012) (#37017)" (#37421)
This reverts commit d6adc62765665d1555039c4d256a75d1144d49d0.

issue: https://github.com/milvus-io/milvus/issues/31273

pr: https://github.com/milvus-io/milvus/pull/37420

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2024-11-05 10:48:24 +08:00
wei liu
eb712f0db9
fix: dead lock if query node crash during shard client init (#37354)
issue: #37115

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-11-05 10:46:32 +08:00
wei liu
79e6ef2617
fix: Search/Query may failed during updating delegator cache (#37174)
issue: #37115
pr: #37116
casue init query node client is too heavy, so we remove
updateShardClient from leader mutex, which cause much more concurrent
cornor cases.

This PR delay query node client's init operation until `getClient` is
called, then use leader mutex to protect updating shard client progress
to avoid concurrent issues.

---------

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-10-28 20:08:25 +08:00
cai.zhang
9c0f59488a
feat: [cherry-pick]The expression supports filling elements through templates (#37058)
issue: #36672 

master pr: #37033 

milvus-proto pr: https://github.com/milvus-io/milvus-proto/pull/332

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2024-10-28 15:17:30 +08:00
yihao.dai
ca2057c57d
enhance: Tidy import options (#37077) (#37078)
1. Tidy import options.
2. Tidy common import util functions.

issue: https://github.com/milvus-io/milvus/issues/34150

pr: https://github.com/milvus-io/milvus/pull/37077

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2024-10-25 14:35:45 +08:00
yihao.dai
d6adc62765
enhance: Support db for bulkinsert (#37012) (#37017)
issue: https://github.com/milvus-io/milvus/issues/31273

pr: https://github.com/milvus-io/milvus/pull/37012

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2024-10-23 16:31:29 +08:00
SimFG
55caf41169
enhance: [2.4] set the rpc error code to avoid the invalid retry (#37025)
- pr: #37024

Signed-off-by: SimFG <bang.fu@zilliz.com>
2024-10-22 11:17:28 +08:00
XuanYang-cn
6b68ec55e1
enhance: [24]Track complex delete rates (#36958)
See also: #36953
pr: #36957

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2024-10-22 10:07:27 +08:00
SimFG
6b9e28bc8f
enhance: [2.4] update the expr version to support automatic conversion of variable types (#36847)
/kind improvement
- pr: #36832

Signed-off-by: SimFG <bang.fu@zilliz.com>
2024-10-15 10:55:23 +08:00
Xiaofan
44564f0403
fix: make sure alias is cached (#36808)
see also #36806

Signed-off-by: xiaofanluan <xiaofan.luan@zilliz.com>
2024-10-13 17:39:22 +08:00
jaime
43b48a0f9b
enhance: skip alter operation when no change are detected (#36786)
issue: #36784 
pr: #36785

Signed-off-by: jaime <yun.zhang@zilliz.com>
2024-10-11 21:43:21 +08:00
congqixia
385bfc2639
enhance: [2.4] Unify InboundLabel case using metrics.Label (#36613) (#36616)
Cherry pick from master
pr: #36613 
Previous label case broken by #36107, this PR make all inbound label
using label constants from metrics package.

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-09-30 16:19:17 +08:00
wei liu
f8dfd0de53
fix: Skip unnecessary query node health check in proxy (#36491) (#36553)
issue: #36490
pr: #36491
After the query node changes from a delegator to a worker, proxy should
skip this querynode's health check.

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-09-30 14:27:16 +08:00
aoiasd
2231aeab4d
fix:[Cherry-Pick] Split delete task msg to MaxMessageSize (#36574)
relate: https://github.com/milvus-io/milvus/issues/36089
pr: https://github.com/milvus-io/milvus/pull/36197
split delete task msg to MaxMessageSize to avoid mq message too large
error

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2024-09-27 18:15:19 +08:00
cai.zhang
e5a6c5b31d
fix: [cherry-pick]Check string array max length after type matching (#36497)
issue: #36029 

master pr: #36449

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2024-09-27 11:15:14 +08:00
Zhen Ye
e34fa0461b
fix: port listen racing in mix or standalone mode (#36459)
issue: #36441
pr: #36442

---------

Signed-off-by: chyezh <chyezh@outlook.com>
2024-09-26 21:01:15 +08:00
wei liu
ad5d24be65
enhance: Optimize workload based replica selection policy (#36181) (#36384)
issue: #35859
pr: #36181

This PR introduce two new param: toleranceFactor and checkRequestNum,
after every checkRequestNum request has been assigned, try to compute
querynode's workload score.

if the diff is less than the toleranceFactor, replica selection policy
will fallback to round_robin, which reduce the average cost to about
500ns.

if the diff is larger than the toleranceFactor, replica selection policy
will compute querynode's score to select the target node with smallest
score in every assigment.

---------

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-09-26 11:19:14 +08:00
jaime
b92daa1532
fix: iaccurate size estimation for encoded array data (#36379)
issue: #36029
pr: #36373

Signed-off-by: jaime <yun.zhang@zilliz.com>
2024-09-23 21:17:13 +08:00
congqixia
e66beb7ace
enhance: [2.4] Ignore index check for non-loaded vector field (#36170) (#36280)
Cherry-pick from master
pr: #36170
Related to #35996

For `Field Partial Load` feature, Milvus shall ignore index check for
non-loaded vector field.

Also, this PR unifies the logic of index check for load collection and
load partitions tasks.

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-09-19 10:07:12 +08:00
zhagnlu
d1730b8853
fix: fix rewrite output field because of merge error (#36338)
issue: #36340

Signed-off-by: luzhang <luzhang@zilliz.com>
Co-authored-by: luzhang <luzhang@zilliz.com>
2024-09-18 20:01:12 +08:00
cai.zhang
eb47150f66
enhance: [cherry-pick]Disallow the keywords as a field name or dynamic field name (#36108)
issue: #35873

master pr: #36101

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2024-09-15 15:19:14 +08:00
zhenshan.cao
2bc454bf40
fix: keep inner topK to avoid exceeding efSearch (#36287)
issue :https://github.com/milvus-io/milvus/issues/36243
pr : https://github.com/milvus-io/milvus/pull/36284

Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
2024-09-15 15:12:38 +08:00
zhenshan.cao
34e5f99bd6
fix: Fix improper use of offset in HybridSearch (#36253)
pr : https://github.com/milvus-io/milvus/pull/36244
issue : https://github.com/milvus-io/milvus/issues/36243

Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
2024-09-13 22:05:14 +08:00
wei liu
5cd860652d
enhance: Enable dynamic update replica selection policy (#35824)
issue: #35859
pr: #35860

---------

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-09-13 17:05:15 +08:00
wei liu
16daf9177f
fix: fix ReadWrite privilege group deny all global API (#36145)
issue: #35471
pr: #36144

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-09-13 10:31:07 +08:00
congqixia
1cd8d1bd80
enhance: [2.4] Use stats Handler to record request/response size metrics (#36107) (#36118)
Cherry-pick from master
pr: #36107 
Related to #36102

This PR use newly added `grpcSizeStatsHandler` to reduce calling
`proto.Size` since the request & response size info is recorded by grpc
framework.

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-09-10 17:13:08 +08:00
jaime
256d4e209f
fix: memory leak in proxy meta cache (#36076)
issue: #36074
pr: #36075

Signed-off-by: jaime <yun.zhang@zilliz.com>
2024-09-08 17:49:06 +08:00