23470 Commits

Author SHA1 Message Date
XuanYang-cn
eef2d5b1a8
fix: [cp26]Move Init and Remove EZ logic out of metatable (#45828)
This will avoid endless retry CreateDatabase/DropDatabase when
cipherPlugin fails in the new DDL framework.

See also: #45826
pr: #45827

---------

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2025-11-25 20:11:07 +08:00
XuanYang-cn
4cc6e015d4
enhance: [cp26]Enable to merge sort one segment (#45652) (#45686)
Remove the log stack when setting isCompacting

pr: #45652

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2025-11-25 19:55:07 +08:00
Buqian Zheng
1f2645dea0
fix: [2.6] Remove debug logging from JsonFlatIndex (#45818)
issue: https://github.com/milvus-io/milvus/issues/44452
pr: #44807

Signed-off-by: Buqian Zheng <zhengbuqian@gmail.com>
2025-11-25 19:47:07 +08:00
groot
1e5c49a463
fix: [2.6] Fix a bug that bulkimport cannot handle empty struct list (#45692)
issue: https://github.com/milvus-io/milvus/issues/42148
pr: https://github.com/milvus-io/milvus/pull/45693

Signed-off-by: yhmo <yihua.mo@zilliz.com>
2025-11-25 18:21:07 +08:00
yanliang567
428526aa22
test: [cp2.6] Update hybrid search tests to milvus client style (#45810)
related issue: https://github.com/milvus-io/milvus/issues/45326
releted pr: #45772 

1. also cp more async tests to 2.6

---------

Signed-off-by: yanliang567 <yanliang.qiao@zilliz.com>
2025-11-25 14:25:07 +08:00
aoiasd
b92f17b138
fix: [2.6] segcore collection schema update not concurrent safe. (#45618)
relate: https://github.com/milvus-io/milvus/issues/45345
pr: https://github.com/milvus-io/milvus/pull/45337

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-11-25 10:33:06 +08:00
Buqian Zheng
3394ac86f6
enhance: [2.6] add ScalarFieldProto& overload to avoid unnecessary copies (#45742)
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-24 22:19:06 +08:00
Zhen Ye
f49951e900
fix: keep memory state consistent when recovering broadcast task from proto (#45788)
issue: #45782
pr: #45787

- because the zero value of the repeated field and bytes field in proto
is ignored or treated as empty value but not nil pointer, so we need to
fix the recovery info of the broadcast task from proto to keep the
consistency of memory state.

Signed-off-by: chyezh <chyezh@outlook.com>
2025-11-24 20:21:06 +08:00
XuanYang-cn
0a89b23240
fix: [cp26]Use base64 to encode not utf-8 bytes (#45656)
See also: #45654
pr: #45655

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2025-11-24 20:11:07 +08:00
aoiasd
37b163613b
enhance: [2.6] remove resource type from file resource config (#45103) (#45727)
File resource type was useless till now, remove it before new release. 
relate: https://github.com/milvus-io/milvus/issues/43687
pr: https://github.com/milvus-io/milvus/pull/45103

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-11-24 11:37:06 +08:00
XuanYang-cn
276a8628d2
test: Increase PyMilvus version to 2.6.4rc12 for 2.6 branch (#45776)
Automated daily bump from pymilvus 2.6 branch. Updates
tests/python_client/requirements.txt.

Signed-off-by: XuanYang-cn <xuan.yang@zilliz.com>
2025-11-24 10:25:06 +08:00
Zhen Ye
22a7ac0ec6
fix: use remote wal when local wal shutdown (#45754)
issue: #45750
pr: #45753

Signed-off-by: chyezh <chyezh@outlook.com>
2025-11-22 21:57:05 +08:00
sre-ci-robot
1a37f6d56b
[automated] Bump milvus version to v2.6.6 (#45765)
Bump milvus version to v2.6.6
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-21 16:45:05 +08:00
qixuan
171f218328
test:[cp2.6] add field case about dynamic and compaction (#45749)
master pr: #45694 
releated issue: #42126

Signed-off-by: qixuan <673771573@qq.com>
2025-11-21 14:21:05 +08:00
zhenshan.cao
476c7a181c
fix: Partial update panic with TIMESTAMPTZ (#45741)
issue: https://github.com/milvus-io/milvus/issues/45729
pr: https://github.com/milvus-io/milvus/pull/45740

Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
v2.6.6
2025-11-20 21:19:58 +08:00
Zhen Ye
9a34fb61fa
fix: use 2.6.6 for milvus DDL upgrading (#45739)
issue: #43897
pr: #45738

Signed-off-by: chyezh <chyezh@outlook.com>
2025-11-20 19:26:54 +08:00
Zhen Ye
92f4b48a3c
fix: use latest timetick to expire cache (#45699)
issue: #45697
pr: #45717

- also remove the  too frequent metric collection of tokenizer.

---------

Signed-off-by: chyezh <chyezh@outlook.com>
pkg/v2.6.6
2025-11-20 18:32:52 +08:00
congqixia
151ade0215
enhance: Bump milvus & proto version to v2.6.6 (#45657)
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-11-20 18:27:05 +08:00
Zhen Ye
a48f7ae170
fix: streamingnode should exit when initializing failure (#45732)
issue: #45721
pr: #45731

Signed-off-by: chyezh <chyezh@outlook.com>
2025-11-20 18:24:19 +08:00
liliu-z
bc3b1bf61c
enhance: Fix CVE-2025-63811 (#45658)
Fix CVE-2025-63811
pr: #45659

Signed-off-by: Li Liu <li.liu@zilliz.com>
2025-11-20 17:20:02 +08:00
wei liu
efd9367c1f
enhance: [2.6] Remove large segment ID arrays from QueryNode logs (#45720)
issue: #45718
pr: #45719
Logging complete segment ID arrays caused excessive log volume (3-6 TB
for 200k segments). Remove arrays from logger fields and keep only
segment counts for observability.

Changes:
- Remove requestSegments/preparedSegments arrays from Load logger
- Remove segmentIDs from BM25 stats logs
- Remove entries structure from sync distribution log

This reduces log volume by 99.99% for large-scale operations.

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2025-11-20 17:18:30 +08:00
Bingyi Sun
1ebb31e868
enhance: skip test_milvus_client_search_json_path_index_default (#45605)
To prevent this issue from blocking other PRs, we are temporarily
disabling this test. A proper fix will be implemented before the 2.6.6
release.

pr: https://github.com/milvus-io/milvus/pull/45604
issue: https://github.com/milvus-io/milvus/issues/45511

---------

Signed-off-by: sunby <sunbingyi1992@gmail.com>
2025-11-20 16:53:09 +08:00
congqixia
29c9132e55
fix: [2.6] protect tbb concurrent_map emplace to avoid race condition deadlock (#45682)
Cherry-pick from master
pr: #45681
Related to #44974

The emplace() operation on tbb::concurrent_hash_map was not protected,
allowing other threads to erase entries between the emplace attempt and
the subsequent lookup.

Solution:
1. Add shared_lock protection around the emplace() operation to prevent
concurrent erasure during insertion
2. Instead of returning nullptr when the key is not found on retry,
recursively call Get(key) to retry the entire operation
3. Fix typo: "earsed" -> "erased"

This ensures that concurrent Get() operations are properly synchronized
and will eventually succeed even under high contention.

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-11-20 14:23:12 +08:00
Buqian Zheng
3741fcdd78
enhance: updated multiple places where the expr copies the input values in every loop (#45712)
pr: https://github.com/milvus-io/milvus/pull/45680
issue: https://github.com/milvus-io/milvus/issues/45679

Signed-off-by: Buqian Zheng <zhengbuqian@gmail.com>
2025-11-20 14:17:07 +08:00
Zhen Ye
78c479ce9b
fix: panic when streaming coord shutdown but query coord still work (#45696)
issue: #44984
pr: #45695

Signed-off-by: chyezh <chyezh@outlook.com>
2025-11-20 12:05:09 +08:00
Bingyi Sun
e4a85ab92e
enhance: optimize term expr performance (#45671)
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 19:43:06 +08:00
Gao
08ae6b5fcc
enhance: [2.6]prefetch vector chunks for sealed non-indexed segments (#45666)
pr: https://github.com/milvus-io/milvus/pull/45665

Signed-off-by: chasingegg <chao.gao@zilliz.com>
2025-11-19 18:41:07 +08:00
cai.zhang
6878de25ff
fix: [2.6] Set task init when worker doesn't have task (#45676)
issue: #45674 
master pr: #45675

---------

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-11-19 18:19:07 +08:00
wei liu
ccc993bbb3
fix: Prevent deadlock in runComponent when Prepare fails (#45609) (#45647)
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-19 16:43:09 +08:00
Zhen Ye
f288f698e3
fix: panic when double close channel of ack broadcast (#45662)
issue: #45635
pr: #45661

Signed-off-by: chyezh <chyezh@outlook.com>
2025-11-19 14:35:08 +08:00
foxspy
3203119153
enhance: [2.6] update knowhere version (#45565)
issue: #42937

Signed-off-by: xianliang.li <xianliang.li@zilliz.com>
2025-11-19 10:56:44 +08:00
zhenshan.cao
442bd23583
fix: correct default value backfill during AddField (#45644)
issue: https://github.com/milvus-io/milvus/issues/44585
pr: https://github.com/milvus-io/milvus/pull/45634

Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
2025-11-19 10:03:04 +08:00
Zhen Ye
bafa5bd4c9
fix: compact the assignment history of channel to decrease the size of assignment recovery info (#45607)
issue: #45210
pr: #45606

If the underlying WAL is failed to open, the recovery info size of
streaming coord streamingcoord-meta/pchannel will increase fast until
reaching the etcd limitation.
So make a compaction by serverID at assignment history to decrease the
streamingcoord-meta/pchannel size.

Signed-off-by: chyezh <chyezh@outlook.com>
2025-11-18 13:13:39 +08:00
congqixia
15a6a995f6
fix: [2.6] update EnableDynamicField and SchemaVersion during collection modification (#45616)
Cherry-pick from master
pr: #45615
Related to #45614

This commit fixes a bug where certain collection attributes were not
properly updated during collection modification, causing metadata errors
after cluster restart and collection reload failures.

When altering a collection, the `EnableDynamicField` and `SchemaVersion`
attributes were not being persisted to the catalog. This caused
inconsistencies between the in-memory collection metadata and the
persisted state, leading to:
- Dynamic field validation failures after restart
- Collection loading errors
- Metadata state mismatches

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-11-18 10:49:39 +08:00
congqixia
7be311320c
fix: [2.6] Handle default values correctly during compaction for added fields (#45619)
Cherry-pick from master
pr: #45572
Related to #45543

When a field with a default value is added to a collection, the default
value becomes null after compaction instead of retaining the expected
default value.

**Root Cause**
The `appendValueAt` function in `internal/storage/arrow_util.go`
incorrectly checked if the entire arrow.Array was nil before handling
default values. This meant that default values were only applied when
the array itself was nil, not when individual field values were null
(which is the correct condition).

**Changes**
1. **Early nil check**: Added a guard at the function entry to detect
nil arrow.Array and return an error immediately, as this is an
unexpected condition that should not occur during normal operation.

2. **Refactored default value handling**: Removed the per-type nil array
checks and moved default value logic to handle individual null values
within the array (when `IsNull(idx)` returns true).

3. **Applied to all types**: Updated the logic consistently across all
builder types:
   - BooleanBuilder
   - Int8Builder, Int16Builder, Int32Builder, Int64Builder
   - Float32Builder
   - StringBuilder
   - BinaryBuilder (added default value support for internal $meta json)
   - ListBuilder (removed unnecessary nil check)

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-11-18 10:13:39 +08:00
sparknack
aa5cd951a1
enhance: expr: [2.6] only prefetch chunks once (#45555)
issue: https://github.com/milvus-io/milvus/issues/43611
pr: #45554

Signed-off-by: Shawn Wang <shawn.wang@zilliz.com>
2025-11-17 14:56:27 +08:00
wei liu
c33d6a0f49
enhance: Add nullable support for Geometry and Timestamptz types (#44846) (#45522)
issue: #44800
pr: #44846
This commit enhances the upsert and validation logic to properly handle
nullable Geometry (WKT/WKB) and Timestamptz data types:

- Add ToCompressedFormatNullable support for TimestamptzData,
GeometryWktData, and GeometryData to filter out null values during data
compression
- Implement GenNullableFieldData for Timestamptz and Geometry types to
generate nullable field data structures
- Update FillWithNullValue to handle both GeometryData and
GeometryWktData with null value filling logic
- Add UpdateFieldData support for Timestamptz, GeometryData, and
GeometryWktData field updates
- Comprehensive unit tests covering all new data type handling scenarios

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2025-11-14 18:53:38 +08:00
wei liu
15cf0c5147
enhance: increase session TTL from 10s to 30s (#45228) (#45517)
issue: #45227
pr: #45228
Increase the default session TTL to 30 seconds to tolerate etcd failover
time. This prevents session expiration during etcd cluster failover,
improving system stability.

When etcd undergoes failover (leader election or node restart), the
previous 10s TTL was too short to survive the failover window, causing
unnecessary session expiration and component restarts. The new 30s TTL
provides sufficient buffer for etcd to complete failover while
maintaining session liveness.

Changes:
- Update DefaultSessionTTL constant from 10 to 30
- Update SessionTTL ParamItem DefaultValue from "10" to "30"

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2025-11-14 18:07:39 +08:00
Zhen Ye
601687d8d2
enhance: add more metrics for DDL framework (#45559)
issue: #43897
pr: #45558

---------

Signed-off-by: chyezh <chyezh@outlook.com>
2025-11-14 16:03:38 +08:00
Spade A
679d248c59
fix: remove validateFieldName in dropIndex [2.6] (#45462)
issue: https://github.com/milvus-io/milvus/issues/45459
pr: https://github.com/milvus-io/milvus/pull/45460

---------

Signed-off-by: SpadeA <tangchenjie1210@gmail.com>
2025-11-14 15:33:38 +08:00
cai.zhang
9b76d75e0a
fix: [2.6] Ignore compaction task when from segment is not healthy (#45535)
issue: #45533 

master pr: #45534

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-11-14 15:31:38 +08:00
XuanYang-cn
898e129326
fix: [cp26]Set schema properties before broadcast alter collection (#45529)
This causes collection schema properties is empty in datacoord caches,
thus making compaction, indexing, unable to get properties from schema.

See also: #45053, #45159
pr: #45502

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2025-11-14 14:23:37 +08:00
XuanYang-cn
d25c4053b8
fix: [cp26]store database event if the key is invalid (#45348) (#45530)
See also: #45136, #45124
pr: #45348

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2025-11-14 12:05:38 +08:00
Feilong Hou
df05e7c12c
test: fix partial update chaos checker (#45550)
Issue: #45489 
pr: #45492

---------

Signed-off-by: Eric Hou <eric.hou@zilliz.com>
Co-authored-by: Eric Hou <eric.hou@zilliz.com>
2025-11-13 18:51:39 +08:00
Gao
88ce11a361
enhance: update maxConnections config version (#45547)
issue: #45344 
pr: #45546

Signed-off-by: chasingegg <chao.gao@zilliz.com>
2025-11-13 18:39:38 +08:00
groot
9191c8dcfd
fix: [2.6] Fix bulkimport bug for Struct field (#45536)
issue: https://github.com/milvus-io/milvus/issues/45006
pr: https://github.com/milvus-io/milvus/pull/45474

Signed-off-by: yhmo <yihua.mo@zilliz.com>
2025-11-13 18:13:38 +08:00
Chun Han
a12444e3ca
fix: failed to get raw data for hybrid index(#45318) (#45408)
related: #45318
pr: https://github.com/milvus-io/milvus/pull/45411

Signed-off-by: MrPresent-Han <chun.han@gmail.com>
Co-authored-by: MrPresent-Han <chun.han@gmail.com>
2025-11-13 17:09:37 +08:00
aoiasd
e4adb9fc56
enhance: [2.6] skip check source id (#45519)
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-13 17:03:38 +08:00
Gao
df5da9c2b5
enhance: [2.6] support max_connection config for remote storage (#45364)
issue: #45344 
pr: #45225

Signed-off-by: chasingegg <chao.gao@zilliz.com>
2025-11-13 15:41:37 +08:00
cai.zhang
eee6ed91ca
fix: [2.6] Retain collection early to prevent it from being released before query completion. (#45415)
issue: #45314 

master pr: #45413

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-11-13 12:37:38 +08:00