jaime
326370c1be
enhance: add disk quota and max collections into db properties ( #34386 )
...
issue: https://github.com/milvus-io/milvus/issues/34385
pr: #34368
Signed-off-by: jaime <yun.zhang@zilliz.com>
2024-07-05 18:22:17 +08:00
wei liu
d3e94f9861
enhance: Use Blocked Bloom Filter instead of basic bloom fitler impl ( #34377 )
...
issue: #32995
pr: #33405
To speed up the construction and querying of Bloom filters, we chose a
blocked Bloom filter instead of a basic Bloom filter implementation.
WARN: This PR is compatible with old version bf impl, but if fall back
to old milvus version, it may causes bloom filter deserialize failed.
In single Bloom filter test cases with a capacity of 1,000,000 and a
false positive rate (FPR) of 0.001, the blocked Bloom filter is 5 times
faster than the basic Bloom filter in both querying and construction, at
the cost of a 30% increase in memory usage.
Block BF construct time {"time": "54.128131ms"}
Block BF size {"size": 3021578}
Block BF Test cost {"time": "55.407352ms"}
Basic BF construct time {"time": "210.262183ms"}
Basic BF size {"size": 2396308}
Basic BF Test cost {"time": "192.596229ms"}
In multi Bloom filter test cases with a capacity of 100,000, an FPR of
0.001, and 100 Bloom filters, we reuse the primary key locations for all
Bloom filters to avoid repeated hash computations. As a result, the
blocked Bloom filter is also 5 times faster than the basic Bloom filter
in querying.
Block BF TestLocation cost {"time": "529.97183ms"}
Basic BF TestLocation cost {"time": "3.197430181s"}
Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-07-05 17:04:10 +08:00
yihao.dai
a57c9e61fc
enhance: [cherry-pick] optimize datanode cpu usage and correct the update logic of ttchecker ( #34383 )
...
This PR cherry-picks the following commits:
- Try to improve cpu usage by refactoring the ttchecker logic and
caching string. https://github.com/milvus-io/milvus/pull/33267
- Correct the update logic of timerecorder in the flowgraph to avoid
false failure: "some node(s) haven't received input".
https://github.com/milvus-io/milvus/pull/34339
issue: https://github.com/milvus-io/milvus/issues/33266 ,
https://github.com/milvus-io/milvus/issues/34337
pr: https://github.com/milvus-io/milvus/pull/33267 ,
https://github.com/milvus-io/milvus/pull/34339
---------
Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
Co-authored-by: Xiaofan <83447078+xiaofan-luan@users.noreply.github.com>
2024-07-04 16:34:17 +08:00
XuanYang-cn
0f1915ef24
fix: DataNode might OOM by estimating based on MemorySize ( #34203 )
...
See also: #34136
pr: #34201
---------
Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2024-07-04 15:24:10 +08:00
chyezh
a1a0a56f86
enhance: async search and retrieve in cgo ( #34200 )
...
issue: #33132
pr: #33133
other pr: #33228 , #34084 , #33946
- implement future-based cgo utility
- async search and retrieve in cgo
- modify gc configuration document
---------
Signed-off-by: chyezh <chyezh@outlook.com>
2024-07-04 13:02:09 +08:00
Chun Han
e12b701c03
enhance: add metrics for segment prune latnecy( #30376 ) ( #34364 )
...
related: #30376
pr: https://github.com/milvus-io/milvus/pull/34094
Signed-off-by: MrPresent-Han <chun.han@gmail.com>
Co-authored-by: MrPresent-Han <chun.han@gmail.com>
2024-07-04 10:14:09 +08:00
aoiasd
9087b6f42e
enhance: [Cherry-Pick] support mark error as user error ( #33498 ) ( #34396 )
...
relate: https://github.com/milvus-io/milvus/issues/33492
pr: https://github.com/milvus-io/milvus/pull/33498
---------
Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2024-07-04 10:08:10 +08:00
cai.zhang
bc1746f96c
enhance: [cherry-pick] Optimize clustering compaction ( #34313 ) ( #34398 )
...
issue: #30633
master pr: #34313
Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2024-07-04 09:52:09 +08:00
wayblink
ec91e556fe
enhance: [cherry-pick] Refine clustering_compaction_task retry mechanism ( #34384 )
...
issue: #30633
pr: #34194
Signed-off-by: wayblink <anyang.wang@zilliz.com>
2024-07-03 18:20:17 +08:00
aoiasd
7000cec365
enhance: [Cherry-pick] Merge query stream result for reduce delete task ( #32855 ) ( #34281 )
...
relate: https://github.com/milvus-io/milvus/issues/32854
pr: https://github.com/milvus-io/milvus/pull/32855
---------
Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2024-07-03 18:08:09 +08:00
congqixia
945f0106f6
fix: [2.4] Use raw parameter value to perform CAS ( #34373 )
...
Cherry-pick from master
pr: #34343
See also #34342
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-07-03 17:20:10 +08:00
aoiasd
18668aaace
enhance:[Cherry-Pick] change access log write cache default config ( #34352 )
...
pr: https://github.com/milvus-io/milvus/pull/34351
Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2024-07-03 15:10:09 +08:00
Patrick Weizhi Xu
88550081c3
enhance: [skip e2e][2.4] update the version of MV ( #34380 )
...
issue: #29892
master PR: https://github.com/milvus-io/milvus/pull/34378
Signed-off-by: Patrick Weizhi Xu <weizhi.xu@zilliz.com>
(cherry picked from commit 92f3f4521a67fcc72074a4eb5a0bb644960293d9)
2024-07-03 14:28:16 +08:00
wayblink
c62bf8a0b0
fix: [Cherry-pick]Pick major compaction fixs and optimizations ( #34360 )
...
This PR cherry-picks the following commits:
- fix: sync partitiion stats blocking balance task #33742
- fix: Fix meta prefix overlap bug #33830
- fix: Small fixs of major compaction #33929
- fix: Fix memory buffer error & some renaming #33850
- fix: sync part stats task cannot be finished #34027
- Add an option to enable/disable vector field clustering key #34097
- fix: fix error ignore in compactor #34169
- fix:load major compaction partial result #34052
- Use new stream segment reader in clustering compaction #34232
issue: #30633
pr: #33742 #33830 #33929 #33850 #34027 #34097 #34169 #34052 #34232
---------
Signed-off-by: MrPresent-Han <chun.han@zilliz.com>
Signed-off-by: wayblink <anyang.wang@zilliz.com>
Signed-off-by: MrPresent-Han <chun.han@gmail.com>
Co-authored-by: Chun Han <116052805+MrPresent-Han@users.noreply.github.com>
Co-authored-by: MrPresent-Han <chun.han@gmail.com>
2024-07-03 09:53:37 +08:00
wei liu
ad545b6fa6
enhance: refine misleading param name for bloom filter parallel factor ( #34335 )
...
pr: #34334
Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-07-02 19:24:09 +08:00
congqixia
6b348e4e91
enhance: [2.4] Add go-deadlock as unittest only dependency ( #33063 ) ( #34322 )
...
Cherry-pick from master
pr: #33063
See also #33062
This PR:
- Add lock.RWMutex & lock.Mutex alias to switch implementation based on
build flags
- When build flags has test in it, use go-deadlock to detect possible
deadlocks
- Replace all sync.RWMutex & sync.Mutex in datacoord pkg
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-07-02 18:48:10 +08:00
wayblink
99586066f5
feat: [cherry-pick] Major compaction ( #34326 )
...
This PR cherry-picks the following commits:
fix: speed up segment lookup via channel name in datacoord (#33530 )
needed by the next commit
feat: Major compaction (#33620 )
issue: #30633
pr: #33620
---------
Signed-off-by: yiwangdr <yiwangdr@gmail.com>
Signed-off-by: wayblink <anyang.wang@zilliz.com>
Co-authored-by: yiwangdr <80064917+yiwangdr@users.noreply.github.com>
Co-authored-by: MrPresent-Han <chun.han@zilliz.com>
2024-07-02 18:29:01 +08:00
aoiasd
bc8ca593bd
enhance: [Cherry-Pick] Update access log ( #34295 )
...
Support restful api,print with consistency level and add new write
cache.
relate: https://github.com/milvus-io/milvus/issues/31823
pr: https://github.com/milvus-io/milvus/pull/33155
https://github.com/milvus-io/milvus/pull/33503
https://github.com/milvus-io/milvus/pull/32213
---------
Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2024-07-02 15:30:15 +08:00
cai.zhang
c924b0b502
enhance: [cherry-pick] Refine index code and support analyze data ( #34311 )
...
This PR primary picks up the support analyzing functionality, including
the following commits:
- main functionality: https://github.com/milvus-io/milvus/pull/33651
- refine indexnode code: https://github.com/milvus-io/milvus/pull/33458
- related fixes:
- https://github.com/milvus-io/milvus/pull/33832
- https://github.com/milvus-io/milvus/pull/33161
issue: #30633
master prs: #33651 , #33458 , #33832 , #33161
---------
Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
Signed-off-by: Patrick Weizhi Xu <weizhi.xu@zilliz.com>
Co-authored-by: chasingegg <chao.gao@zilliz.com>
Co-authored-by: Patrick Weizhi Xu <weizhi.xu@zilliz.com>
2024-07-02 09:50:39 +08:00
zhenshan.cao
14a11e379c
enhance: Refactor Compaction to enable persistence( #33265 ) ( #34268 )
...
pr : #33265
issue #33586
Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
2024-07-01 19:32:07 +08:00
XuanYang-cn
4ebdccd160
fix: LegacyVersionWithoutRPCWatch default value to 2.4.1 ( #34185 )
...
See also: #31933
pr: #34184
---------
Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2024-07-01 18:22:08 +08:00
smellthemoon
064afc9dcb
enhance: use the only MaxEtcdTxnNum( #33070 ) ( #34215 )
...
pr: #33070
Signed-off-by: lixinguo <xinguo.li@zilliz.com>
Co-authored-by: lixinguo <xinguo.li@zilliz.com>
2024-07-01 18:00:07 +08:00
yihao.dai
3af0d91f80
fix: Fix panic due to failed to seek ( #34229 ) ( #34230 )
...
Converting the same msgposition's vchannel to a pchannel multiple times
would result in an invalid pchannel, leading to seek failure and panic.
This PR:
1. Make a copy of msgposition in msgdispatcher.
2. Check if channel is already a pchannel, no further channel conversion
is performed.
issue: https://github.com/milvus-io/milvus/issues/34221
pr: https://github.com/milvus-io/milvus/pull/34229
---------
Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2024-07-01 16:08:12 +08:00
jaime
0992f10694
enhance: improve check health ( #34265 )
...
issue: https://github.com/milvus-io/milvus/issues/34264
pr: #33800
Signed-off-by: jaime <yun.zhang@zilliz.com>
2024-07-01 10:18:07 +08:00
cai.zhang
85aa929749
enhance: Set the timeout for SyncSegments based on the number of segments ( #34228 )
...
issue: #32809
master pr: #34226
Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2024-06-28 14:18:06 +08:00
cai.zhang
1c6e850f73
enhance: [cherry-pick] Periodically synchronize segments to datanode watcher ( #33420 ) ( #34186 )
...
This PR primary picks up the SyncSegments functionality, including the
following commits:
- main functionality: https://github.com/milvus-io/milvus/pull/33420
- related fixes:
- https://github.com/milvus-io/milvus/pull/33664
- https://github.com/milvus-io/milvus/pull/33829
- https://github.com/milvus-io/milvus/pull/34056
- https://github.com/milvus-io/milvus/pull/34156
issue: #32809
master pr: #33420 , #33664 , #33829 , #34056 , #34156
Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2024-06-27 11:24:05 +08:00
cqy123456
0bd93de627
enhance: [cherry-pick]remove CheckVecIndexWithDataTypeExist function in pkg ( #34104 )
...
issue: https://github.com/milvus-io/milvus/issues/22837
related pr: https://github.com/milvus-io/milvus/pull/34102
Signed-off-by: cqy123456 <qianya.cheng@zilliz.com>
2024-06-26 21:14:26 +08:00
congqixia
07a05db51b
fix: [2.4] Wrap init segcore tracing with golang timeout ( #33494 ) ( #34191 )
...
Cherry-pick from master
pr: #33494
See also #33483
Wrap `C.InitTrace` & `C.SetTrace` with timeout preventing otlp
initializtion hangs forever when endpoint is not set correctly
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-06-26 19:44:05 +08:00
jaime
6423b6c718
enhance: move rocksmq from internal to pkg ( #34165 )
...
pr: https://github.com/milvus-io/milvus/pull/33881
issue: https://github.com/milvus-io/milvus/issues/33956
Signed-off-by: jaime <yun.zhang@zilliz.com>
2024-06-26 13:36:05 +08:00
cqy123456
3e51256fb4
enhance: [cherry-pick]update new mmap config parmeters version ( #34145 )
...
issue: https://github.com/milvus-io/milvus/issues/32984
related pr: https://github.com/milvus-io/milvus/pull/34143
Signed-off-by: cqy123456 <qianya.cheng@zilliz.com>
2024-06-25 21:24:05 +08:00
yihao.dai
b1e74dc7cb
enhance: [cherry-pick] Decouple compaction from shard ( #34157 )
...
This PR cherry-picks the following commits:
- Implement task limit control logic in datanode.
https://github.com/milvus-io/milvus/pull/32881
- Load bf from storage instead of memory during L0 compaction.
https://github.com/milvus-io/milvus/pull/32913
- Remove dependencies on shards (e.g. SyncSegments, injection).
https://github.com/milvus-io/milvus/pull/33138
- Rename Compaction interface to CompactionV2.
https://github.com/milvus-io/milvus/pull/33858
- Remove the unused residual compaction logic.
https://github.com/milvus-io/milvus/pull/33932
issue: https://github.com/milvus-io/milvus/issues/32809
pr: https://github.com/milvus-io/milvus/pull/32881 ,
https://github.com/milvus-io/milvus/pull/32913 ,
https://github.com/milvus-io/milvus/pull/33138 ,
https://github.com/milvus-io/milvus/pull/33858 ,
https://github.com/milvus-io/milvus/pull/33932
---------
Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2024-06-25 20:22:03 +08:00
cqy123456
f5344abdaf
enhance: [cherry-pick]growing segment support mmap ( #34110 )
...
issue: issue: https://github.com/milvus-io/milvus/issues/32984
related pr: https://github.com/milvus-io/milvus/pull/32633 ,
https://github.com/milvus-io/milvus/pull/33951 ,
https://github.com/milvus-io/milvus/pull/33993
Signed-off-by: cqy123456 <qianya.cheng@zilliz.com>
2024-06-25 14:52:07 +08:00
Patrick Weizhi Xu
1168e8c107
enhance: [2.4] support integral type for MV and skip MV if there is only one category ( #34005 )
...
pr: #33161
issue: #29892
---------
Signed-off-by: Patrick Weizhi Xu <weizhi.xu@zilliz.com>
2024-06-24 19:12:02 +08:00
Jiquan Long
22e6807e9a
feat: support inverted index for array ( #33452 ) ( #34053 )
...
pr: https://github.com/milvus-io/milvus/pull/33184
pr: https://github.com/milvus-io/milvus/pull/33452
pr: https://github.com/milvus-io/milvus/pull/33633
issue: https://github.com/milvus-io/milvus/issues/27704
Co-authored-by: xiaocai2333 <cai.zhang@zilliz.com>
---------
Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
Signed-off-by: longjiquan <jiquan.long@zilliz.com>
Co-authored-by: cai.zhang <cai.zhang@zilliz.com>
2024-06-24 10:50:03 +08:00
wei liu
061a00c58f
enhance: Enable database level replica num and resource groups for loading collection ( #33052 ) ( #33981 )
...
pr: #33052
issue: #30040
This PR introduce two database level props:
1. database.replica.number
2. database.resource_groups
User can set those two database props by AlterDatabase API, then can
load collection without specified replica_num and resource groups. then
it will use database level load param when try to load collections.
Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-06-21 16:56:02 +08:00
congqixia
e02a95e3c2
fix: [2.4] Return record with largest timestamp for entires with same PK ( #33936 ) ( #34024 )
...
Cherry-pick from master
pr: #33936
See also #33883
---------
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-06-21 14:14:01 +08:00
shaoting-huang
b3d425f50a
enhance: Upgrade go version from 1.20 to 1.21 ( #33940 )
...
issue #32982
related pr in master:
pr: #33047 #33150 #33176 #33351 #33202 #33192
Signed-off-by: shaoting-huang <shaoting.huang@zilliz.com>
2024-06-20 14:52:00 +08:00
congqixia
60695bdb44
enhance: [2.4] Set maxPartitionNum default value to 1024 ( #33950 )
...
Cherry-pick from master
pr: #33949
See also #30059
---------
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-06-18 18:42:00 +08:00
Gao
5fc1370f6f
enhance: [2.4] autoindex for multi data type ( #33867 )
...
issue: #22837
pr: https://github.com/milvus-io/milvus/pull/33868
- opensource autoindex support
- metric type check for different data types
- autoindex data type for search param
Signed-off-by: chasingegg <chao.gao@zilliz.com>
2024-06-14 23:26:00 +08:00
congqixia
59144d8246
enhance: Bump milvus & proto version to v2.4.5 ( #33852 )
...
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-06-14 22:27:59 +08:00
cqy123456
562369627d
enhance: [cherry-pick]check index with data type in knowhere api ( #33878 )
...
issue: https://github.com/milvus-io/milvus/issues/22837
related: https://github.com/milvus-io/milvus/pull/33880
Signed-off-by: cqy123456 <qianya.cheng@zilliz.com>
2024-06-14 19:45:58 +08:00
jaime
fd1c7b1a1c
enhance: enable flush rate limiter of collection level ( #33864 )
...
pr: #33837
Signed-off-by: jaime <yun.zhang@zilliz.com>
2024-06-14 16:27:57 +08:00
congqixia
62bd51ec6d
fix: [2.4] Compare config value then swap when caching param value ( #33785 ) ( #33797 )
...
Cherry-pick from master
pr: #33785
See also #33784
This PR change the behavior of `SetCacheValue` of config manager:
- Use mutex and map instead of concurrent map for `configCache`
- Compare config raw value before set cache value
With this implementation, concurrent caching & eviction shall always
have current output:
|time|caching |eviction|config |cached |
|----|--------|------- |---------|---------|
|t0 |get | |old value|null |
|t1 |CAS OK | |old value|old value|
|t2 | |update |new value|old value|
|t3 | |eviction|new value|null |
|time|caching |eviction|config |cached |
|----|--------|------- |---------|---------|
|t0 |get | |old value|null |
|t1 | |update |new value|null |
|t2 |CAS fail| |old value|null |
|t3 | |eviction|new value|null |
|time|caching |eviction|config |cached |
|----|--------|------- |---------|---------|
|t0 | |update |new value|null |
|t1 |get | |new value|null |
|t2 |CAS OK | |new value|new value|
|t3 | |eviction|new value|null |
|time|caching |eviction|config |cached |
|----|--------|------- |---------|---------|
|t0 | |update |new value|null |
|t1 |get | |new value|null |
|t2 | |eviction|new value|null |
|t3 |CAS OK | |new value|new value|
|time|caching |eviction|config |cached |
|----|--------|------- |---------|---------|
|t0 | |update |new value|null |
|t1 | |eviction|new value|null |
|t2 |get | |new value|null |
|t3 |CAS OK | |new value|new value|
---------
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-06-13 17:51:57 +08:00
wei liu
c9fa167a38
enhance: Add rbac support on describe/alter database api ( #33804 )
...
issue: #32707
pr: #33803
Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-06-13 14:15:56 +08:00
wei liu
25d8b74f71
enhance: Execute bloom filter apply in parallel to speed up segment predict ( #33793 )
...
issue: #33610
pr: #33792
Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-06-13 14:14:04 +08:00
wei liu
54feef30e7
enhance: Use BatchPkExist to reduce bloom filter func call cost ( #33752 )
...
issue: #33610
pr: #33611
Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-06-12 17:45:58 +08:00
Aldrin
ff9bb17cc5
fix: Masked kafka credentials getting printed in logs ( #33747 )
...
Cherry-pick from master
pr: #33730
issue: https://github.com/milvus-io/milvus/issues/33727
Signed-off-by: Aldrin <imagesai32@gmail.com>
2024-06-11 15:59:54 +08:00
SimFG
f664b51ebe
enhance: [2.4] try to speed up the loading of small collections ( #33746 )
...
- issue: #33569
- pr: #33570
Signed-off-by: SimFG <bang.fu@zilliz.com>
2024-06-11 15:07:55 +08:00
SimFG
c331aa4ad3
enhance: [2.4] add the includeCurrentMsg param for the Seek method ( #33743 )
...
/kind improvement
- issue: #33325
- pr: #33326
Signed-off-by: SimFG <bang.fu@zilliz.com>
2024-06-11 15:01:55 +08:00
Buqian Zheng
39e341e83a
fix: [2.4] update check for sparse hnsw index ( #33714 )
...
issue: #29419
pr: #33713
Signed-off-by: Buqian Zheng <zhengbuqian@gmail.com>
2024-06-07 18:36:07 +08:00