Commit Graph

602 Commits (2.4-hotfix)

Author SHA1 Message Date
congqixia ffb6edd433
enhance: Bump milvus-proto to v2.4.0 (#32315)
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-04-16 16:23:19 +08:00
smellthemoon 3cacfeba0b
fix: panic when get empty ids(#32220) (#32258)
issue: #32223 
pr: #32220

Signed-off-by: lixinguo <xinguo.li@zilliz.com>
Co-authored-by: lixinguo <xinguo.li@zilliz.com>
2024-04-15 16:53:23 +08:00
Buqian Zheng c2ab387b1e
fix: [cherry-pick] more comprehensive check on sparse index and value. (#32251)
issue: #29419
pr: #32250

Signed-off-by: Buqian Zheng <zhengbuqian@gmail.com>
2024-04-15 16:51:24 +08:00
wei liu e50599ba10
fix: Skip to load l0 segment on old version query node (#32131)
issue: #32107
pr: #32124

during rolling upgrade progress, skip to load l0 segment on old version
query node

---------

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-04-15 11:23:23 +08:00
Buqian Zheng 64d9da117c
fix: [Cherry-pick] in milvus check sparse index to be less than uint32 max (#32204)
issue: #29419
pr: #32199

Signed-off-by: Buqian Zheng <zhengbuqian@gmail.com>
2024-04-12 14:53:19 +08:00
jaime 5b45debb28
enhance: refine sync memory watermark configuration (#32138)
pr: #32140

Signed-off-by: jaime <yun.zhang@zilliz.com>
2024-04-11 20:07:24 +08:00
Xiaofan ada0e8c931
fix: reduce didn't handle offset without limit and reduceStopForBest … (#32088)
fix https://github.com/milvus-io/milvus/issues/32059
pr: https://github.com/milvus-io/milvus/pull/32089

this pr fix two issues:

offset is not handled correctly without specify a limit
reduceStopForBest doesn't guarantee to return limit result even if there
are more result when there is small segment

Signed-off-by: xiaofanluan <xiaofan.luan@zilliz.com>
2024-04-10 21:21:07 -07:00
SimFG 35f39593aa
enhance: [2.4] add the db id for the describe collection response (#32123)
/kind improvement
issue: #32110
pr: #32114

Signed-off-by: SimFG <bang.fu@zilliz.com>
2024-04-11 10:25:19 +08:00
congqixia 5256f3d350
enhance: [Cherry-pick] Bump grpc & jose2go dependency (#32126)
Cherry-pick from master
pr: #31985 #32040
See also #31986

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-04-11 10:03:20 +08:00
Buqian Zheng c8aacc6d59
feat: [2.4] [Sparse Float Vector] added some integration tests (#32093)
add some integration tests for sparse float vector support

#29419

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

Signed-off-by: Buqian Zheng <zhengbuqian@gmail.com>
2024-04-10 21:47:29 +08:00
jaime bb2ffd47f6
enhance: Add db label for some usual metrics (#32024)
issue: https://github.com/milvus-io/milvus/issues/31782
pr: #30956
cherry pick: #30956 #32003 #31715

---------

Signed-off-by: jaime <yun.zhang@zilliz.com>
Signed-off-by: chyezh <chyezh@outlook.com>
Co-authored-by: chyezh <chyezh@outlook.com>
2024-04-10 20:59:20 +08:00
jaime e04fa2b10d
fix: upgrade nats server to fix security vulnerabilities (#32023)
issue: https://github.com/milvus-io/milvus/issues/32022
pr: #32021

Signed-off-by: jaime <yun.zhang@zilliz.com>
2024-04-10 15:13:36 +08:00
cqy123456 8f99144565
enhance: [cherry-pick]check fp16/bf16 nan or inf value (#31842)
issue:https://github.com/milvus-io/milvus/issues/22837
related pr: https://github.com/milvus-io/milvus/pull/31840

Signed-off-by: cqy123456 <qianya.cheng@zilliz.com>
2024-04-10 10:43:27 +08:00
SimFG 4a4935f7b2
enhance: [2.4] use the rate log in the privilege interceptor (#32038)
/kind improvement
pr: #32037

Signed-off-by: SimFG <bang.fu@zilliz.com>
2024-04-09 16:37:17 +08:00
yihao.dai 39d988cf8d
enhance: Use an individual buffer size parameter for imports (#31833) (#31937)
Use an individual buffer size parameter for imports and set buffer size
to 64MB.

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

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

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2024-04-08 21:05:17 +08:00
yihao.dai 3df7f57e4d
enhance: Remove deprecated DataCoordNumStoredRowsCounter metric (#31778) (#31935)
pr: https://github.com/milvus-io/milvus/pull/31778

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2024-04-08 14:31:16 +08:00
Cai Yudong 4b430097dd
enhance: Unify data type check APIs for go (#31945)
cherry-pick from master
pr: #31887 
Issue: #22837

Signed-off-by: Cai Yudong <yudong.cai@zilliz.com>
2024-04-08 14:11:17 +08:00
cqy123456 7580fa8e75
fix: [cherry-pick]fix some fp16/bf16 code missing in segcore (#31841)
issue:https://github.com/milvus-io/milvus/issues/22837
related pr: https://github.com/milvus-io/milvus/pull/31771

Signed-off-by: cqy123456 <qianya.cheng@zilliz.com>
2024-04-07 14:27:22 +08:00
Jiquan Long b2a79a0570
enhance: add more metrics (#31271) (#31861)
/kind improvement
fix: #31272 
pr: #31271 

This pr add more metrics, which are:
- Slow query count, which the duration considered as slow can be
configurable;
- Number of deleted entities;
- Number of entities imported;
- Number of entities per collection;
- Number of loaded entities per collection;
- Number of indexed entities;
- Number of indexed entities, per collection, per index and whether it's
a vetor index;
- Quota states (LongTimeTickDelay, MemoryExhuasted, DiskQuotaExhuasted)
per database;

---------

Signed-off-by: longjiquan <jiquan.long@zilliz.com>
2024-04-05 10:09:22 +08:00
Cai Yudong 3f6a7fdae8
enhance: Disable HNSW Binary (#31825) (#31883)
Issue: #31494 #31825

Signed-off-by: Cai Yudong <yudong.cai@zilliz.com>
2024-04-03 17:27:14 +08:00
cai.zhang 3904719287
enhance: Throw error instead of crash when index cannot be built (#31845)
issue: #27589 
pr: #31844

---------

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2024-04-03 16:27:16 +08:00
congqixia 0b3f087896
enhance: [2.4] Add EmbedEtcd testutil and remove etcd dep of task pkg (#31802) (#31826)
Cherry-pick from master
pr: #31802 
See also #20478

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-04-03 10:21:14 +08:00
XuanYang-cn 3002f94e04
fix: [cherry-pick]Using zero serverID for metrics (#31519)
Fixes: #31516
pr: #31518

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2024-04-02 10:35:13 +08:00
cqy123456 d4d0c6be8b
fix: [cherry-pick]fix fp16/bf16 some code missing and add more fp16/bf16 test (#31677)
issue: https://github.com/milvus-io/milvus/issues/31534
pr: https://github.com/milvus-io/milvus/pull/31612

Signed-off-by: cqy123456 <qianya.cheng@zilliz.com>
2024-04-01 20:53:13 +08:00
yihao.dai 808a944f93
enhance: Ensure ImportV2 waits for the index to be built and refine some logic (#31629) (#31733)
Feature Introduced:
1. Ensure ImportV2 waits for the index to be built

Enhancements Introduced:
1. Utilization of local time for timeout ts instead of allocating ts
from rootcoord.
2. Enhanced input file length check for binlog import.
3. Removal of duplicated manager in datanode.
4. Renaming of executor to scheduler in datanode.
5. Utilization of a thread pool in the scheduler in datanode.

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

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2024-04-01 20:45:13 +08:00
Xiaofan be834638d3
fix: etcd not connectable when auth enabled (#31668)
Fix etcd config source didn't respect auth enabled
Also removed pulsar recoverable error when pulsar return ConsumerBusy.
It could happen that pulsar didn't find the original consumer is dead
and recover takes some time.
fix: #31631
pr: #31633

Signed-off-by: xiaofanluan <xiaofan.luan@zilliz.com>
2024-04-01 15:23:18 +08:00
Chun Han f3216bfe18
enhance: ban groupby on binary vector(#31134) (#31735)
Cherry-pick from master
pr: https://github.com/milvus-io/milvus/pull/31659
See also: https://github.com/milvus-io/milvus/issues/31134

Currently, don't support brute force search iterator for binary_vector
so group_by in such cases will fail and to avoid inconsistent behavior,
we ban groupby on binary vector for the time being.

Signed-off-by: MrPresent-Han <chun.han@zilliz.com>
2024-04-01 14:13:12 +08:00
wei liu 3e3a92fc89
enhance: Add restful api for devops to execute rolling upgrade (#29998) (#31645)
issue: #29261
pr: #29998
This PR Add restful api for devops to execute rolling upgrade, including
suspend/resume balance and manual transfer segments/channels.

---------

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-03-29 16:15:11 +08:00
Bingyi Sun af7da00488
enhance: use mmap prefix to define all mmap related configs (#31436) (#31572)
related pr: #31436

Signed-off-by: sunby <sunbingyi1992@gmail.com>
2024-03-27 16:35:19 +08:00
cai.zhang b8f849e98e
enhance: Support auto index for scalar index (#31593)
issue: #29309 
master pr: #31255

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2024-03-27 14:57:10 +08:00
groot b0cbddae8d
fix: minio ssl compatible issue (#31618)
issue: https://github.com/milvus-io/milvus/issues/30709
pr: https://github.com/milvus-io/milvus/pull/31607

Signed-off-by: yhmo <yihua.mo@zilliz.com>
2024-03-27 14:41:20 +08:00
cqy123456 17eb0c276c
fix: add some check fieldata dim to avoid error data input (#31478)
issue:https://github.com/milvus-io/milvus/issues/30138
pr: https://github.com/milvus-io/milvus/pull/31564

Signed-off-by: cqy123456 <qianya.cheng@zilliz.com>
2024-03-25 19:29:08 +08:00
yihao.dai f1a108c97b
enhance: Add max file num limit and max file size limit for import (#31497) (#31542)
The max number of import files per request should not exceed 1024 by
default (configurable).
The import file size allowed for importing should not exceed 16GB by
default (configurable).

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

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

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2024-03-25 14:33:07 +08:00
yihao.dai 1e0bf5acd2
enhance: Remove import v1 (#31403) (#31535)
Remove all code and logic related to import v1.

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

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

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2024-03-24 21:51:07 +08:00
congqixia 99774548f2
enhance: [Cherry-pick] Add AllPartitionsID const to replace InvalidPartitionID (#31438) (#31515)
Cherry-pick from master
pr: #31438

"-1" as `InvalidPartitionID` previously used as All partition place
holder in delete cases. It's confusing and hard to maintain when a const
var has more than one meaning.

This PR add `AllPartitionsID` to replace these usages in delete
scenarios.

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-03-22 16:37:08 +08:00
groot a0535edb67
enhance: Support MinIO TLS connection (#31396)
issue: https://github.com/milvus-io/milvus/issues/30709
pr: https://github.com/milvus-io/milvus/pull/31292

Signed-off-by: yhmo <yihua.mo@zilliz.com>
Co-authored-by: Chen Rao <chenrao317328@163.com>
2024-03-21 11:15:20 +08:00
congqixia c6019c4f9d
enhance: [Cherry-pick] Add metrics for querycoord current target cp lag (#31391) (#31420)
Cherry-pick from master
pr: #31391 #31399
See also #31390

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-03-20 20:47:10 +08:00
congqixia 5649b9a463
enhance: [2.4] Cache formatted key for param item (#31388) (#31401)
Cherry-pick from master
pr: #31388 
See also #30806

`formatKey` may cost lots of CPU on string processing under high QPS
scenario, this PR adds a formattedKeys cache preventing string operation
in each param get value.

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-03-19 19:25:10 +08:00
Xiaofan b2b107a774
fix: [cherry-pick] get compaction failure when datanode is actually live (#31356)
if get compaction result failed, then skip processing compaction 
pr: #31353
see also #31352

Signed-off-by: xiaofanluan <xiaofan.luan@zilliz.com>
2024-03-18 22:53:05 +08:00
Bingyi Sun e7b053817d
feat: Add global mmap enable configuration (#31267) (#31373)
https://github.com/milvus-io/milvus/issues/31279
related pr: #31267

Signed-off-by: sunby <sunbingyi1992@gmail.com>
2024-03-18 21:57:05 +08:00
congqixia 89cff29b6a
enhance: [Cherry-pick] Use different interval for gc scan (#31364)
Cherry-pick from master
pr: #31363
See also #31362

This PR make datacoord garbage collection scan operation using differet
interval than other opeartion.

This interval is a newly added param item, which default value is 7*24
hours.

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-03-18 21:43:05 +08:00
yihao.dai 1885d176cf
fix: Return specific error code when encountering incomplete requery results (#31343) (#31359)
During requery, segments may change (e.g., due to compaction), so we
need to return specific error codes when encountering incomplete requery
results. Clients can then retry to avoid this issue.

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

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

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2024-03-18 19:43:06 +08:00
congqixia 25d1c0e04b
enhance: Bump milvus & milvus-proto to 2.4.0-rc.1 (#31371)
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-03-18 19:07:05 +08:00
chyezh 465fd474de
enhance: add syncutil type ContextCond and VersionedNotifier (#30648)
issue: #30647

- ContextCond is a broadcast-only condition variable which can be
canceled by context.

- VersionedNotifier is a version-based notifier-listener implementation,
which promise no change can be ignored.

Signed-off-by: chyezh <chyezh@outlook.com>
2024-03-15 15:41:04 +08:00
Gao 6f1e9cd0f4
fix: fix cal_distance default implementation (#31245)
#31243

Signed-off-by: chasingegg <chao.gao@zilliz.com>
2024-03-15 15:37:11 +08:00
aoiasd b724753137
enhance: Add runtime config to paramtable (#31006)
relate: https://github.com/milvus-io/milvus/issues/30806
Avoid use string convert or format function when get some runtime
parameter

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2024-03-15 11:07:06 +08:00
wei liu 147a3b8bdc
fix: Grpcclient return unrecoverable error (#31256)
issue: #31222

grpcclient's `call` func return a unrecoverable error, then the caller's
retry policy also breaks due to this unrecoverable error.

This PR introduce `retry.Handle`, the new func use `func() (bool,
error)` as input parameters, which return `shouldRetry` directly, to
avoid grpcclient return a unrecoverable error

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-03-15 10:03:05 +08:00
Buqian Zheng 3c80083f51
feat: [Sparse Float Vector] add sparse vector support to milvus components (#30630)
add sparse float vector support to different milvus components,
including proxy, data node to receive and write sparse float vectors to
binlog, query node to handle search requests, index node to build index
for sparse float column, etc.

https://github.com/milvus-io/milvus/issues/29419

---------

Signed-off-by: Buqian Zheng <zhengbuqian@gmail.com>
2024-03-13 14:32:54 -07:00
wei liu 06b191b164
fix: Balance channel stuck forever due to logic dead lock (#31202)
issue: #30816

cause balance channel will stuck until leader view catch up the current
target, then start to unsub the old delegator. which make sure that the
new delegator can provide search before release old delegator. but
another logic in segment_checker skip loading segment during balance
channel. so during balance channel, if query node crash, new delegator
can't catch up target forever, then stuck forever.

This PR remove the rule that skip loading segment during balance channel
to avoid the logic dead lock here.

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-03-13 15:05:04 +08:00
Chun Han 3298e64bd3
enhance: cache config values for saving cpu cycles to parse config item (#30947)
related: #30958

Signed-off-by: MrPresent-Han <chun.han@zilliz.com>
2024-03-12 11:09:04 +08:00