22353 Commits

Author SHA1 Message Date
sre-ci-robot
b932e03448
[automated] Bump milvus version to v2.5.12 (#41926)
Bump milvus version to v2.5.12
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-05-19 17:28:23 +08:00
sre-ci-robot
28a0d1adc0
[automated] Bump milvus version to v2.5.12 (#41923)
Bump milvus version to v2.5.12
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-05-19 16:58:27 +08:00
tinswzy
3d8629de3e
fix memory reuse in woodpecker to prevent streamingNode OOM (#41918)
#41846 
Reduce woodpecker memory allocation frequency through recycled memory
pools, allowing GC to keep up with collection.
related [woodpecker issue 24
](https://github.com/zilliztech/woodpecker/issues/24)

Signed-off-by: tinswzy <zhenyuan.wei@zilliz.com>
2025-05-19 15:22:22 +08:00
cai.zhang
38ded7364f
fix: Don't create index for unsorted importing segment when enable stats (#41864)
issue: #41863

---------

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-05-19 10:52:23 +08:00
Ted Xu
7660be0993
feat: bulk insert support storage v2 (#41843)
See #39173

---------

Signed-off-by: Ted Xu <ted.xu@zilliz.com>
2025-05-19 10:34:24 +08:00
Zhen Ye
59dff668dc
enhance: schema change without manual flush (#41882)
issue: #39718

- remove the manual flush message from schema change operation
- add flush segment id handle into schema change processes

Signed-off-by: chyezh <chyezh@outlook.com>
Co-authored-by: congqixia <congqi.xia@zilliz.com>
2025-05-19 10:14:22 +08:00
Ted Xu
ae32203d3a
fix: support group by with nullable grouping keys (#41797)
See #36264

In this PR:
- Enhanced error handling in parse of grouping field.
- Fixed null handling in reduce tasks in proxy nodes. 
- Updated tests to reflect changes in error handling and data processing
logic.

---------

Signed-off-by: Ted Xu <ted.xu@zilliz.com>
2025-05-17 20:54:22 +08:00
congqixia
b8d7045539
enhance: [Add Field] Use consistent schema for single buffer (#41891)
Related to #41873

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-05-17 19:46:22 +08:00
Zhen Ye
a3d5ad135e
fix: recover a dropped collection from wal if create collection message can be seen (#41902)
issue: #41654

Signed-off-by: chyezh <chyezh@outlook.com>
2025-05-17 07:38:21 +08:00
congqixia
3bbc0fa560
enhance: [StorageV2] update storage to pass endpoint as-is (#41889)
Related to milvus-io/milvus-storage#190

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-05-16 18:06:21 +08:00
Bingyi Sun
b006d738b2
fix: Fix skip much more rows when moving cursor (#41862)
issue: https://github.com/milvus-io/milvus/issues/41790

---------

Signed-off-by: sunby <sunbingyi1992@gmail.com>
2025-05-16 16:46:22 +08:00
Buqian Zheng
b0260d8676
feat: manual evict cache after built interim index (#41836)
issue: https://github.com/milvus-io/milvus/issues/41435

this PR also makes HasRawData of ChunkedSegmentSealedImpl to return
based on metadata, without needing to load the cache just to answer this
simple question.

---------

Signed-off-by: Buqian Zheng <zhengbuqian@gmail.com>
2025-05-16 16:34:23 +08:00
tinswzy
4edb1bc6f1
fix: resolve wp WALImpls concurrent read/write bug (#41763)
#41563 #41579 #41842 #41846 #41758
Upgraded the wp dependency to incorporate recent fixes addressing
multiple concurrency bugs in WALImpls.

Signed-off-by: tinswzy <zhenyuan.wei@zilliz.com>
2025-05-16 12:02:27 +08:00
Zhen Ye
d3fff1769e
fix: streaming node panic with when binary size is set as zero (#41879)
issue: #41853

- persist the estimated binary size for insert message into wal.
- add metric to record the total growing rows of channel.

Signed-off-by: chyezh <chyezh@outlook.com>
2025-05-16 11:12:22 +08:00
yanliang567
83cdd6b121
test: set specific mq for standalone e2e (#41859)
related issue: https://github.com/milvus-io/milvus/issues/41819
1. remove useless distributed config
2. set specific mq for standalone e2e

---------

Signed-off-by: yanliang567 <yanliang.qiao@zilliz.com>
2025-05-16 10:30:23 +08:00
yihao.dai
6c1a37fca1
fix: Fix import reader goroutine leak (#41869)
Close the chunk manager's reader after the import completes to prevent
goroutine leaks.

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-05-16 10:18:35 +08:00
Zhen Ye
ae43230703
enhance: set jemalloc prof disable by default (#41850)
issue: #40730

- add assertion for insert message
- add more buffer for seal notifier

Signed-off-by: chyezh <chyezh@outlook.com>
2025-05-15 20:10:23 +08:00
congqixia
ba8f62a3b2
enhance: Bump x/net fixing CVE-2025-22872 (#41861)
Related to #41291
Related to CVE-2025-22872

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-05-15 19:04:23 +08:00
SimFG
9fa50e0b1a
enhance: implement authorization checks for DescribeCollection and DescribeDatabase tasks (#41798)
- issue: #41694

---------

Signed-off-by: SimFG <bang.fu@zilliz.com>
2025-05-15 17:52:23 +08:00
foxspy
1c794be119
enhance: Output index version information in the DescribeIndex interface (#41847)
issue: https://github.com/milvus-io/milvus/issues/41431

Signed-off-by: xianliang.li <xianliang.li@zilliz.com>
2025-05-15 14:36:22 +08:00
yanliang567
b59a2d669f
test: Add resource limit for e2e and nightly tests (#41820)
related issue: #41819
1. set resource limit for ci and nightly e2e tests
2. combine nightly standalone and standalone+auth
3. enable mmap for distributed-pulsar

---------

Signed-off-by: yanliang567 <yanliang.qiao@zilliz.com>
2025-05-15 14:22:22 +08:00
cai.zhang
9eebb9b464
fix: Collect entites num group by collection instead of partition (#41788)
issue: #41787

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-05-15 12:04:22 +08:00
congqixia
a6d09ff4cd
enhance: [StorageV2] fix issues integrating basic RW operations (#41834)
Related to #39173

This PR:
- Upgrade milvus-storage commit to fix filesystem finalized issue
- Add bucket-name as prefix for all fs style access io
- Initial arrow fs on querynodes startup
- Fix timestamp access when loading sealed segment

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-05-15 09:52:23 +08:00
Buqian Zheng
cae0091071
feat: make SkipIndex lazyload (#41826)
issue: https://github.com/milvus-io/milvus/issues/41435

this PR also:

1. fixed the skip index for VARCHAR. before this PR, skip index of
VARCHAR uses the minmax of the entire column as the minmax of chunk 0,
and provides no minmax for other chunks.
2. refactored some skip index loading related code
3. partly fixed a bug in test_expr.cpp

---------

Signed-off-by: Buqian Zheng <zhengbuqian@gmail.com>
2025-05-15 01:30:23 +08:00
Zhen Ye
0a465bb5b7
enhance: use recovery+shardmanager, remove segment assignment interceptor (#41824)
issue: #41544

- add lock interceptor into wal.
- use recovery and shardmanager to replace the original implementation
of segment assignment.
- remove redundant implementation and unittest.
- remove redundant proto definition.
- use 2 streamingnode in e2e.

---------

Signed-off-by: chyezh <chyezh@outlook.com>
2025-05-14 23:00:23 +08:00
wei liu
2d0ae3a709
fix: unexpected password for root user (#41817)
issue: #41816 
pr #37983 introduced an issue, if doesn't specified
`defaultRootPassword` in milvus.yaml, then `"Milvus"` will be used as
default password for root user, instead of `Milvus`.

This PR fix the unexpected password for root, and add comment for case
which use large numeric password requires double quotes.

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2025-05-14 19:42:22 +08:00
congqixia
c45c1fadb2
enhance: [AddField] Keep all binlog when loading (#41809)
Related to #41726 #41736

The load field list blocks the new field from being loaded.

`load_fields` shall work as hint after tiered storage support API to
specifiy this behavior.

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-05-14 17:30:21 +08:00
groot
b0f4b904cd
enhance: add multiAnalyzerParams for Go SDK (#41814)
relate: https://github.com/milvus-io/milvus/issues/41213

Signed-off-by: yhmo <yihua.mo@zilliz.com>
2025-05-14 16:34:22 +08:00
yihao.dai
36e9e41627
fix: Fix no candidate segments error for small import (#41771)
When autoID is enabled, the preimport task estimates row distribution by
evenly dividing the total row count (numRows) across all vchannels:
`estimatedCount = numRows / vchannelNum`.
However, the actual import task hashes real auto-generated IDs to
determine
the target vchannel. This mismatch can lead to inaccurate row
distribution estimation
in such corner cases:
- Importing 1 row into 2 vchannels:
				• Preimport: 1 / 2 = 0 → both v0 and v1 are estimated to have 0 rows
				• Import: real autoID (e.g., 457975852966809057) hashes to v1
				  → actual result: v0 = 0, v1 = 1

To resolve such corner case, we now allocate at least one segment for
each vchannel
when autoID is enabled, ensuring all vchannels are prepared to receive
data even
if no rows are estimated for them.

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-05-14 15:30:21 +08:00
cai.zhang
4ead8caaba
fix: prevent crash when contains_all/any is used with empty array (#41739)
issue: #41348 

related and optimized by #41347

---------

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
Co-authored-by: Sangho Park <hoyaspark@gmail.com>
2025-05-14 14:32:22 +08:00
yihao.dai
1f5f8a4843
fix: Disable block and mutex profiling on arm to prevent SIGSEGV (#41822)
issue: https://github.com/milvus-io/milvus/issues/41821

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-05-14 10:56:29 +08:00
foxspy
358bc150df
enhance: add force rebuild index configuration (#41473)
issue: #41431

Signed-off-by: xianliang.li <xianliang.li@zilliz.com>
2025-05-14 10:52:21 +08:00
congqixia
fb612c765c
enhance: [Restful] Add consistency level for query/get API (#41825)
Related to #41805

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-05-14 10:48:21 +08:00
Zhen Ye
21d6d1669e
fix: wal should be reopen if wal append receive the fence error (#41807)
issue: #41544

Signed-off-by: chyezh <chyezh@outlook.com>
2025-05-14 01:02:56 +08:00
Zhen Ye
7beafe99a7
enhance: implement wal garbage collector with truncate api (#41770)
issue: #41544

- add a truncator implementation into wal recovery storage.
- add metrics for recovery storage.

---------

Signed-off-by: chyezh <chyezh@outlook.com>
2025-05-13 22:08:56 +08:00
congqixia
8bc9ae9a9e
doc: Update go client golang version requirement (#41815)
Related to #41749

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-05-13 19:00:56 +08:00
congqixia
186a01eef4
fix: [AddField] Broadcast update schema even there is no segment (#41780)
Related to #41744

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-05-13 16:02:55 +08:00
zhuwenxing
eb1eab8914
test: [skip e2e]fix nightly e2e scripts (#41782)
/kind improvement

Signed-off-by: zhuwenxing <wenxing.zhu@zilliz.com>
2025-05-13 15:20:56 +08:00
zhagnlu
f094d026f8
fix: add params to ignore config type exception (#41776)
#41707

Signed-off-by: luzhang <luzhang@zilliz.com>
Co-authored-by: luzhang <luzhang@zilliz.com>
2025-05-13 13:48:56 +08:00
Zhen Ye
61b6ca5b73
enhance: add in mem shard manager (#41749)
issue: #41544

- Implement in-memory shard manager to maintain the shard state at write
ahead.
- Remove all rpc and meta operation at write ahead, make the segment
assignment logic only use wal and memory.
- Refactor global stats management, add node-level flush policy.
- Fix the recovery storage inconsistency bug when graceful close.

Signed-off-by: chyezh <chyezh@outlook.com>
2025-05-13 12:04:56 +08:00
shaoyue
5e8966ec32
enhance: update golang-jwt to v4.5.2 to fix cve (#41734)
/cc @congqixia

Signed-off-by: haorenfsa <haorenfsa@gmail.com>
2025-05-13 10:58:56 +08:00
aoiasd
9166c77a72
fix: bulk insert should use function runner's input field list instead schema's (#41560)
relate: https://github.com/milvus-io/milvus/issues/41213

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-05-12 19:14:56 +08:00
congqixia
476984c53e
fix: [AddField] Use latest schema instead of cached one (#41757)
Related to #41713 #41710

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-05-12 16:24:56 +08:00
congqixia
1d76afad7c
enhance: Add mutex preventing concurrent plugin.Open (#41761)
Concurrent calling plugin.Open might cause empty pluginpath issue

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-05-12 15:44:55 +08:00
groot
1574673a8c
enhance: Alter collection description (#41558)
issue: https://github.com/milvus-io/milvus/issues/41557

Signed-off-by: yhmo <yihua.mo@zilliz.com>
2025-05-12 14:16:55 +08:00
Zhen Ye
52950ce392
enhance: add pulsar truncate api to protect pulsar unconsumed message (#41724)
issue: #41465

- implement truncate api for pulsar based on durable subscription.
- truncate api can only be called if wal is read-write.

Signed-off-by: chyezh <chyezh@outlook.com>
2025-05-11 20:50:55 +08:00
Zhen Ye
e675da76e4
enhance: simplify the proto message, make segment assignment code more clean (#41671)
issue: #41544

- simplify the proto message for flush and create segment.
- simplify the msg handler for flowgraph.

---------

Signed-off-by: chyezh <chyezh@outlook.com>
2025-05-11 20:49:00 +08:00
Zhen Ye
452d6fb709
fix: write buffer leak if the wal flusher is cancelled when recovery (#41719)
issue: #41715

Signed-off-by: chyezh <chyezh@outlook.com>
2025-05-10 09:32:56 +08:00
Buqian Zheng
ff5c2770e5
feat: cachinglayer: various improvements (#41546)
issue: https://github.com/milvus-io/milvus/issues/41435

this PR is based on https://github.com/milvus-io/milvus/pull/41436. 

Improvements include:

- Lazy Load support for Storage v1
- Use Low/High watermark to control eviction
- Caching Layer related config changes
- Removed ChunkCache related configs and code in golang
- Add `PinAllCells` helper method to CacheSlot class
- Modified ValueAt, RawAt, PrimitiveRawAt to Bulk version, to reduce
caching layer overhead
- Removed some unclear templated bulk_subscript methods
- CachedSearchIterator to store PinWrapper when searching on
ChunkedColumn, and removed unused contrustor.

---------

Signed-off-by: Buqian Zheng <zhengbuqian@gmail.com>
2025-05-10 09:19:16 +08:00
yanliang567
ee659d50db
test: [E2e Refactor] update search basic tests and add a pk_name instead of hard code (#41669)
related issue: https://github.com/milvus-io/milvus/issues/40698

---------

Signed-off-by: yanliang567 <yanliang.qiao@zilliz.com>
2025-05-09 21:58:54 +08:00