22342 Commits

Author SHA1 Message Date
github-actions[bot]
75997c2b7e Update Builder image changes 2025-12-05 09:07:04 +00:00
congqixia
571295e945
enhance: [2.5] Bump go version to 1.24.11 fixing CVE #46077 (#46114)
Cherry-pick from master
pr: #46034 #46049
Fixing CVE-2025-61729

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-12-05 15:31:11 +08:00
congqixia
f60211583e
enhance: [2.5] Bump golang.org/x/crypto fixing CVE(#45975) (#46112)
Cherry-pick from master
pr: #45975
Related to #45976

Bump golang.org/x/crypto to v0.45.0 fixing CVE-2025-47914

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-12-05 14:33:27 +08:00
Buqian Zheng
dcc3975f17
fix: [2.5] move cursor after skip index skipped a chunk (#46078)
issue: https://github.com/milvus-io/milvus/issues/46053
pr: https://github.com/milvus-io/milvus/pull/46054

Signed-off-by: Buqian Zheng <zhengbuqian@gmail.com>
2025-12-05 13:59:11 +08:00
zhagnlu
f1f11b336b
fix:fix undefined bahavior when dump snapshot (#45613)
pr: #45611

Signed-off-by: luzhang <luzhang@zilliz.com>
Co-authored-by: luzhang <luzhang@zilliz.com>
2025-12-05 10:49:12 +08:00
XuanYang-cn
da3ace1325
test: Increase PyMilvus version to 2.5.18 for 2.5 branch (#46031)
Automated daily bump from pymilvus 2.5 branch. Updates
tests/python_client/requirements.txt.

Signed-off-by: XuanYang-cn <xuan.yang@zilliz.com>
2025-12-04 17:33:20 +08:00
cai.zhang
6ce2df9944
fix: [2.5]Fix setting default value for geometry by restful (#46058) (#46065)
issue: https://github.com/milvus-io/milvus/issues/46056
master pr: https://github.com/milvus-io/milvus/pull/46058

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-12-04 16:35:11 +08:00
congqixia
e70e70699c
enhance: [2.5] skip adding stopping node to resource group in handleNodeUp (#45969) (#45982)
Cherry-pick from master
pr: #45969
Related to #45960
Follow-up to #45961

After #45961 ensured that handleNodeUp is always called for nodes
discovered during rewatchNodes (including stopping nodes), this change
adds a safeguard in ResourceManager.handleNodeUp to skip adding stopping
nodes to resource groups.

1. **resource_manager.go**: Add check for IsStoppingState() in
handleNodeUp to prevent stopping nodes from being added to incomingNode
set and assigned to resource groups.

2. **server.go**:
- Delete processed nodes from sessionMap to avoid duplicate processing
in the subsequent loop
   - Add warning logs for stopping state transitions during rewatch

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-12-02 10:23:13 +08:00
congqixia
61c80235dd
fix: [2.5] update QueryNode NumEntities metrics when collection has no segments (#45147) (#45981)
Cherry-pick from master
pr: #45147
Related to #44509

Fix a bug where QueryNodeNumEntities metrics were not updated for
collections with zero segments, causing stale metrics when all segments
are flushed or compacted.

The previous implementation used separate loops: one to update size
metrics for all collections, and another to update num entities metrics
only for collections present in the grouped segments map. Collections
with no segments were skipped in the second loop, leaving their
NumEntities metrics stale.

Changes:
- Consolidate size and num entities metric updates into single loop
- Iterate over all collections instead of grouped segments
- Get collection metadata from manager instead of segment instances
- Correctly set NumEntities to 0 for collections with no segments
- Apply the same fix to both growing and sealed segment processing
- Add nil check for collection metadata before processing

This ensures all collection metrics are updated consistently, even when
segment count drops to zero.

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-12-02 10:19:10 +08:00
1mmortal
0ece57325e
fix: [2.5] Correcting the incorrect AllSearchCount value in the result of hybrid_search. (#45843)
Correcting the incorrect AllSearchCount value in the result of
hybrid_search.
#45842

Signed-off-by: 1mmortal <lmzzzzz1@163.com>
2025-12-01 15:11:11 +08:00
congqixia
a24a0f11aa
fix: [2.5] always call handleNodeUp in rewatchNodes for proper stopping balance (#45964)
Cherry-pick from master
pr: #45961
Related to #45960

When QueryCoord restarts or reconnects to etcd, the rewatchNodes
function previously skipped handleNodeUp for QueryNodes in stopping
state. This caused stopping balance to fail because necessary components
were not initialized:
- Task scheduler executor was not added
- Dist handler was not started
- Node was not registered in resource manager

This fix ensures handleNodeUp is always called for new nodes regardless
of their stopping state, followed by handleNodeStopping if the node is
stopping. This allows the graceful shutdown process to correctly migrate
segments and channels away from stopping nodes.

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-12-01 11:11:10 +08:00
Bingyi Sun
ba6198a3b8
fix: Replace json.doc() calls with json.dom_doc() in JsonContainsExpr (#45785)
issue: https://github.com/milvus-io/milvus/issues/45783
pr: https://github.com/milvus-io/milvus/pull/45573

Signed-off-by: sunby <sunbingyi1992@gmail.com>
2025-11-25 20:19:07 +08:00
aoiasd
7af4e4076d
enhance: [2.5] optimize bm25 stats load. (#45780)
relate: https://github.com/milvus-io/milvus/issues/41424
pr: https://github.com/milvus-io/milvus/pull/44279
https://github.com/milvus-io/milvus/pull/44628

---------

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-11-25 10:39:08 +08:00
cai.zhang
74a0363df7
fix: [2.5] Remove the incorrect reset task step (#45771)
issue: #45184

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-11-21 19:47:06 +08:00
Buqian Zheng
1fda4bcae4
enhance: [2.5] add ScalarFieldProto& overload to avoid unnecessary copies (#45744)
1. Array.h: Add output_data(ScalarFieldProto&) overload for both Array
and ArrayView classes
2. Use std::string_view instead of std::string for VARCHAR and GEOMETRY
types to avoid extra string copies
3. Call Reserve(length_) before writing to proto objects to reduce
memory reallocations

a simple test shows those optimizations improve the Array of Varchar
bulk_subscript performance by 20%

issue: https://github.com/milvus-io/milvus/issues/45679
pr: https://github.com/milvus-io/milvus/pull/45743

Signed-off-by: Buqian Zheng <zhengbuqian@gmail.com>
2025-11-21 12:39:05 +08:00
sre-ci-robot
49ba71317c
[automated] Bump milvus version to v2.5.23 (#45704)
Bump milvus version to v2.5.23
Signed-off-by: sre-ci-robot sre-ci-robot@users.noreply.github.com

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-11-20 10:33:07 +08:00
congqixia
0ddc9c947a
enhance: Bump milvus & proto version to v2.5.23 (#45677)
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
pkg/v2.5.23 v2.5.23
2025-11-19 15:23:14 +08:00
wei liu
2232dfc3de
fix: Prevent Close from hanging on etcd reconnection (#45622)
issue: #45623
When etcd reconnects, the DataCoord rewatches DataNodes and calls
ChannelManager.Startup again without closing the previous instance. This
causes multiple contexts and goroutines to accumulate, leading to Close
hanging indefinitely waiting for untracked goroutines.

Root cause:
- Etcd reconnection triggers rewatch flow and calls Startup again
- Startup was not idempotent, allowing repeated calls
- Multiple context cancellations and goroutines accumulated
- Close would wait indefinitely for untracked goroutines

Changes:
- Add started field to ChannelManagerImpl
- Refactor Startup to check and handle restart scenario
- Add state check in Close to prevent hanging

---------

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2025-11-19 12:49:06 +08:00
Bingyi Sun
f1844c9841
enhance: optimize term expr performance (#45490)
issue: https://github.com/milvus-io/milvus/issues/45641
pr: https://github.com/milvus-io/milvus/pull/45491

---------

Signed-off-by: sunby <sunbingyi1992@gmail.com>
2025-11-19 11:51:06 +08:00
wei liu
e695d8a1d0
fix: Prevent deadlock in runComponent when Prepare fails (#45626)
issue: #45608
pr: #45609
When component.Prepare() fails (e.g., net listener creation error), the
sign channel was never closed, causing runComponent to block
indefinitely at <-sign. This resulted in the entire process hanging
after logging the error message.

Changes:
- Move close(sign) to defer statement in runComponent goroutine
- Ensures sign channel is always closed regardless of success/failure
- Allows proper error propagation through future.Await() mechanism

---------

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2025-11-18 17:29:42 +08:00
sre-ci-robot
8dcfe25da5
[automated] Bump milvus version to v2.5.22 (#45631)
Bump milvus version to v2.5.22
Signed-off-by: sre-ci-robot sre-ci-robot@users.noreply.github.com

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-11-18 11:01:41 +08:00
7y-9
a42e847678
fix: [2.5] Fix infinite loop in ResourceManager recovery process (#45563)
relate: https://github.com/milvus-io/milvus/issues/45557

Signed-off-by: lianyu.sun <lianyu.sun@ly.com>
2025-11-17 15:19:39 +08:00
XuanYang-cn
b8f14d3992
test: Increase PyMilvus version to 2.5.17 for 2.5 branch (#45440)
Automated daily bump from pymilvus 2.5 branch. Updates
tests/python_client/requirements.txt.

Signed-off-by: XuanYang-cn <xuan.yang@zilliz.com>
2025-11-13 11:33:41 +08:00
congqixia
53e86f53b4
enhance: Bump milvus & proto to v2.5.22 (#45498)
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
v2.5.22 pkg/v2.5.22
2025-11-13 09:59:38 +08:00
cai.zhang
6eb77ddc4d
fix: [2.5]Fix target segment marked dropped for save stats result twice (#45480)
issue: #45477 

master pr: #45478

---------

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-11-13 09:41:37 +08:00
cai.zhang
1d6786545b
fix: [2.5] Fix filter geometry for growing with mmap (#45466)
issue: #45450 
master pr: #45464

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-11-11 15:41:40 +08:00
sre-ci-robot
9845667244
[automated] Bump milvus version to v2.5.21 (#45424)
Bump milvus version to v2.5.21
Signed-off-by: sre-ci-robot sre-ci-robot@users.noreply.github.com

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-11-07 23:43:35 +08:00
congqixia
ee16683b81
enhance: [2.5] Update builder image tag upgrading go1.24.9 (#45394) (#45401)
Cherry-pick from master
pr: #45394
Related to #45359
Fixing CVE-2025-58187

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
v2.5.21
2025-11-07 16:27:34 +08:00
XuanYang-cn
abeabd4e87
test: Increase PyMilvus version to 2.5.17rc4 for 2.5 branch (#45385)
Automated daily bump from pymilvus 2.5 branch. Updates
tests/python_client/requirements.txt.

Signed-off-by: XuanYang-cn <xuan.yang@zilliz.com>
2025-11-07 15:23:38 +08:00
aoiasd
7ad68910d9
enhance: [2.5] skip check source id (#45383)
pr: https://github.com/milvus-io/milvus/pull/45377
relate:https://github.com/milvus-io/milvus/issues/45381

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-11-07 15:21:42 +08:00
congqixia
6dd7b7c197
enhance: [2.5] Bump go version to 1.24.9 (#45370)
Cherry-pick from master
pr: #45359 
Fixing CVE-2025-58187

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-11-07 10:19:35 +08:00
XuanYang-cn
2d6c736448
fix: [2.5]Accidentally ignored sealed segments in L0 Compaction #45341 (#45342)
When there're no growing segments in the collection, L0 Compaction will
try to choose all L0 segments that hits all L1/L2 segments.

However, if there's Sealed Segment still under flushing in DataNode at
the same time L0 Compaction selects satisfied L1/L2 segments, L0
Compaction will ignore this Segment because it's not in "FlushState",
which is wrong, causing missing deletes on the Sealed Segment.

This quick solution here is to fail this L0 compaction task once
selected a Sealed segment.

See also: #45339
pr: #45340
pr: #45341

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2025-11-06 19:21:35 +08:00
XuanYang-cn
93e8c5465a
test: Increase PyMilvus version to 2.5.17rc3 for 2.5 branch (#45213)
Automated daily bump from pymilvus 2.5 branch. Updates
tests/python_client/requirements.txt.

---------

Signed-off-by: XuanYang-cn <xuan.yang@zilliz.com>
Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2025-11-06 17:01:35 +08:00
sparknack
91645d9242
enhance: [2.5] unify the aligned buffer for both buffered and direct I/O (#45324)
issue: #43040
pr: #45323

Signed-off-by: Shawn Wang <shawn.wang@zilliz.com>
2025-11-06 10:55:35 +08:00
yihao.dai
96a35baa46
fix: [2.5] support upgrading from 2.5.x -> 2.6.5 (#45313)
issue: https://github.com/milvus-io/milvus/issues/43897

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

---------

Signed-off-by: chyezh <chyezh@outlook.com>
Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
Co-authored-by: chyezh <chyezh@outlook.com>
2025-11-05 21:31:34 +08:00
congqixia
ec5189f9c4
enhance: Bump milvus & proto version to v2.5.21 (#45297)
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
pkg/v2.5.21
2025-11-05 10:55:33 +08:00
sparknack
561b167f1e
fix:[2.5] avoid potential race conditions when updating the executor (#45231)
issue: #43030
pr: #45230

Signed-off-by: Shawn Wang <shawn.wang@zilliz.com>
2025-11-05 10:15:33 +08:00
cai.zhang
2e4502a4fc
fix: [2.5]Skip create tmp dir for growing R-Tree index (#45258)
issue: https://github.com/milvus-io/milvus/issues/45181

master pr: https://github.com/milvus-io/milvus/pull/45256

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-11-04 17:35:34 +08:00
zhuwenxing
36a30dd34e
test: add geometry datatype testcases (#44383)
master pr: https://github.com/milvus-io/milvus/pull/44646

/kind improvement

---------

Signed-off-by: zhuwenxing <wenxing.zhu@zilliz.com>
2025-11-04 11:03:34 +08:00
cai.zhang
cc9735ff4f
enhance: [2.5]Make GeometryCache an optional configuration (#45197)
issue: #45187 
master pr: #45192

---------

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-11-03 20:31:34 +08:00
cai.zhang
dfcef7d14d
fix: [2.5]Fix sort stats task failed when segment is compacting (#45185)
issue: #45184

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-11-03 11:25:33 +08:00
cai.zhang
0ca74f234f
fix: [2.5] Fix import null geometry data (#45163)
issue: #44787 

master pr: #45161

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-10-31 12:34:10 +08:00
sre-ci-robot
8f2ca3bf0f
[automated] Bump milvus version to v2.5.20 (#45179)
Bump milvus version to v2.5.20
Signed-off-by: sre-ci-robot sre-ci-robot@users.noreply.github.com

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-10-31 10:12:09 +08:00
congqixia
93fb9a4b18
enhance: Bump milvus & proto version to v2.5.20 (#45140)
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
v2.5.20 pkg/v2.5.20
2025-10-30 10:46:09 +08:00
foxspy
0f0ea4d206
enhance: [2.5] update knowhere version (#45148)
issue: #42937 
/kind branch-feature

Signed-off-by: xianliang.li <xianliang.li@zilliz.com>
2025-10-30 10:08:08 +08:00
cai.zhang
e58cd7fcc4
fix: [2.5]Fix bug for importing Geometry data (#45091)
issue: https://github.com/milvus-io/milvus/issues/44787 ,
https://github.com/milvus-io/milvus/issues/45012
master pr: https://github.com/milvus-io/milvus/pull/45089

---------

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-10-29 18:48:13 +08:00
cai.zhang
3ebd1f2f26
fix: [2.5]Fix retrieve geometry null data when enable mmap (#45142)
issue: #44648

---------

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-10-29 16:48:12 +08:00
aoiasd
529a31a1bf
enhance: [2.5]support use nullable field as bm25 function input field (#44586) (#45118)
relate: https://github.com/milvus-io/milvus/pull/44586

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-10-28 19:20:11 +08:00
zhagnlu
78d70db6fd
fix: support skip load json stats when disable jsonstats (#45098)
pr: #45101

Signed-off-by: luzhang <luzhang@zilliz.com>
Co-authored-by: luzhang <luzhang@zilliz.com>
2025-10-28 10:50:11 +08:00
congqixia
9ed77d4484
fix: [2.5] prevent data race in querycoord collection notifier update (#45037) (#45052)
Cherry-pick from master
pr: #45037
Fixes #45035

This commit addresses a data race issue where refreshCollection was
updating the collection notifier without proper lock protection.

Changes:
- Add UpdateCollection method to CollectionManager with proper locking
- Introduce CollectionOperator pattern for thread-safe collection
updates
- Make setRefreshNotifier private and use it through the operator
pattern
- Update refreshCollection to use the new UpdateCollection method
- Handle collection not found error gracefully in refreshCollection

The CollectionOperator pattern ensures all collection modifications go
through the CollectionManager's lock, preventing concurrent access
issues.

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-10-23 19:34:12 +08:00