1816 Commits

Author SHA1 Message Date
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
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
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
cai.zhang
f27dfa4490
enhance: [2.5]Support import geometry data by json/csv (#44828)
issue: #44787 
master pr: #44826 
2.6 pr: #44827

---------

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-10-17 17:14:23 +08:00
Bingyi Sun
9434a3bdaa
fix: Fix bulk import with autoid (#44601)
pr: #44604 
issue: #44424

---------

Signed-off-by: sunby <sunbingyi1992@gmail.com>
2025-10-09 14:51:58 +08:00
congqixia
c86d68bea5
enhance: [2.5] Bump arrow/go to v17 (#44663)
Related to #40777

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-10-09 11:47:57 +08:00
Bingyi Sun
2e0c0c08bb
feat: allow users to write pk field when autoid is enabled (#44520)
issue: https://github.com/milvus-io/milvus/issues/44011
pr: https://github.com/milvus-io/milvus/pull/44424

---------

Signed-off-by: sunby <sunbingyi1992@gmail.com>
2025-09-24 20:26:06 +08:00
cai.zhang
877e68f851
enhance: Support R-Tree index for geometry datatype (#44069)
issue: #43427
pr: #37417

Support R-Tree index for geometry datatype.

---------

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
Co-authored-by: ZhuXi <150327960+Yinwei-Yu@users.noreply.github.com>
2025-09-11 14:19:58 +08:00
aoiasd
adbfa3f0fa
fix: [2.5] add utf8 check for bm25 functoin run (#44221)
relate: https://github.com/milvus-io/milvus/issues/44219
pr: https://github.com/milvus-io/milvus/pull/44220

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-09-09 19:27:58 +08:00
cqy123456
c17ce3cf90
enhance:[2.5]minhash support and add autoindex config (#44015)
master pr: https://github.com/milvus-io/milvus/pull/44186

Signed-off-by: cqy123456 <qianya.cheng@zilliz.com>
2025-09-03 17:39:54 +08:00
ZhuXi
cd931a0388
feat:Geospatial Data Type and GIS Function support for milvus (#43661)
issue: #43427
pr: #37417

This pr's main goal is merge #37417 to milvus 2.5 without conflicts.

# Main Goals

1. Create and describe collections with geospatial type
2. Insert geospatial data into the insert binlog
3. Load segments containing geospatial data into memory
4. Enable query and search can display  geospatial data
5. Support using GIS funtions like ST_EQUALS in query

# Solution

1. **Add Type**: Modify the Milvus core by adding a Geospatial type in
both the C++ and Go code layers, defining the Geospatial data structure
and the corresponding interfaces.
2. **Dependency Libraries**: Introduce necessary geospatial data
processing libraries. In the C++ source code, use Conan package
management to include the GDAL library. In the Go source code, add the
go-geom library to the go.mod file.
3. **Protocol Interface**: Revise the Milvus protocol to provide
mechanisms for Geospatial message serialization and deserialization.
4. **Data Pipeline**: Facilitate interaction between the client and
proxy using the WKT format for geospatial data. The proxy will convert
all data into WKB format for downstream processing, providing column
data interfaces, segment encapsulation, segment loading, payload
writing, and cache block management.
5. **Query Operators**: Implement simple display and support for filter
queries. Initially, focus on filtering based on spatial relationships
for a single column of geospatial literal values, providing parsing and
execution for query expressions.Now only support brutal search
6. **Client Modification**: Enable the client to handle user input for
geospatial data and facilitate end-to-end testing.Check the modification
in pymilvus.

---------

Signed-off-by: Yinwei Li <yinwei.li@zilliz.com>
Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
Co-authored-by: cai.zhang <cai.zhang@zilliz.com>
2025-08-26 19:11:55 +08:00
cqy123456
a1ff6c89be
enhance:[2.5] Make build ratio of interim index configurable (#43938)
issue: https://github.com/milvus-io/milvus/issues/43993
master pr: https://github.com/milvus-io/milvus/pull/43939

Signed-off-by: cqy123456 <qianya.cheng@zilliz.com>
2025-08-25 16:01:52 +08:00
sparknack
b57d104742
enhance: [2.5] add write rate limit for disk file writer (#43856)
issue: https://github.com/milvus-io/milvus/issues/43040
pr: #43912

---------

Signed-off-by: Shawn Wang <shawn.wang@zilliz.com>
2025-08-18 23:33:46 +08:00
yihao.dai
fa51bbe23c
enhance: [2.5] Fix parquet import OOM (#43757)
Each ColumnReader consumes ReaderProperties.BufferSize memory
independently. Therefore, the bufferSize should be divided by the number
of columns to ensure total memory usage stays within the intended limit.

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

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

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-08-09 10:11:42 +08:00
sparknack
4d944aecf7
enhance: add disk file writer with Direct IO support (#43692)
issue: #43040
pr: #42665 

This patch introduces a disk file writer that supports Direct IO.

Currently, it is exclusively utilized during the QueryNode load process.

Below is its parameters:

1. `common.diskWriteMode` This parameter controls the write mode of the
local disk, which is used to write temporary data downloaded from remote
storage. Currently, only QueryNode uses 'common.diskWrite*' parameters.
Support for other components will be added in the future.
The options include 'direct' and 'buffered'. The default value is
'buffered'.

2. `common.diskWriteBufferSizeKb` Disk write buffer size in KB, only
used when disk write mode is 'direct', default is 64KB.
Current valid range is [4, 65536]. If the value is not aligned to 4KB,
it will be rounded up to the nearest multiple of 4KB.

3. `common.diskWriteNumThreads` This parameter controls the number of
writer threads used for disk write operations. The valid range is [0,
hardware_concurrency]. It is designed to limit the maximum concurrency
of disk write operations to reduce the impact on disk read performance.
For example, if you want to limit the maximum concurrency of disk write
operations to 1, you can set this parameter to 1.
The default value is 0, which means the caller will perform write
operations directly without using an additional writer thread pool. In
this case, the maximum concurrency of disk write operations is
determined by the caller's thread pool size.

Both parameters can be updated during runtime.

---------

Signed-off-by: Shawn Wang <shawn.wang@zilliz.com>
2025-08-08 12:13:41 +08:00
yihao.dai
4204c0473e
fix: [2.5] Ignore 2.6 Proxy to avoid timetick lag (#43519)
During the rolling upgrade from 2.5 to 2.6, the 2.5 coordinator detects
newly started 2.6 proxies. However, 2.6 proxies do not sync timetick,
which leads to timetick delay. This PR ignores 2.6 proxies to prevent
ttDelay during the upgrade process.

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

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-07-23 22:40:54 +08:00
Chun Han
bfa9688da3
enhance: supporting separate chunk cache pool(#42803) (#42901)
related: #42803

1. add a new thread pools using folly::CPUThreadPoolExecutor, named by
FThreadPools
2. reading vectors from chunkcache will use the separated
CHUNKCACHE_POOL to avoid being influenced by load collection
3. Note. For safety on cloud side on 2.5.x, only read-chunk-cache
operations is using this newly created thread pools other caller points
for threadpool will be mutated in the near future
4. master-branch doesn't need this pr as caching layer unified the chunk
cache behaviour

Signed-off-by: MrPresent-Han <chun.han@gmail.com>
Co-authored-by: MrPresent-Han <chun.han@gmail.com>
2025-06-26 15:52:43 +08:00
cai.zhang
0a62d6d509
enhance: Add Size interface to FileReader to eliminate the StatObject call during Read (#42911)
issue: #42907 

master pr: #42908

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-06-25 15:26:42 +08:00
congqixia
3efb0366f8
fix: [2.5] OR binary expr is prunable only when both children are prunable (#42912) (#42915)
Cherry-pick from master
pr: #42912 
Related to #42903

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-06-24 17:30:42 +08:00
aoiasd
98fe28d0ef
fix: [2.5] flow graph should free function resource after all node close (#42731) (#42775)
pr: https://github.com/milvus-io/milvus/pull/42731

relate: https://github.com/milvus-io/milvus/issues/42730

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-06-17 14:40:39 +08:00
aoiasd
40ecaa6061
fix:[2.5] add concurrency and close protect for bm25 function (#42599)
relate: https://github.com/milvus-io/milvus/issues/42576
pr: https://github.com/milvus-io/milvus/pull/42597

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-06-10 14:18:35 +08:00
groot
f2774e3c5b
enhance: [2.5] bulkinsert handles nullable/default (#42072)
issue: https://github.com/milvus-io/milvus/issues/42096,
https://github.com/milvus-io/milvus/issues/42130
pr: https://github.com/milvus-io/milvus/pull/42127

Signed-off-by: yhmo <yihua.mo@zilliz.com>
2025-06-10 11:50:35 +08:00
Zhen Ye
edca441eae
fix: filter the streaming query node from resource group when upgrading (#42594)
issue: #42492
pr: #38677

- filter the streaming query node out from 2.6.0, avoid to load sealed
segment on streaming query node.

Signed-off-by: chyezh <chyezh@outlook.com>
2025-06-09 22:10:35 +08:00
Buqian Zheng
3915ecacee
fix: pipeline/delegator leak (#42583)
the manager's logging lambda should not capture the pipeline object

this creates a circular reference between the manager and the pipeline
object, making it impossible for both to be GC-ed.

issue: https://github.com/milvus-io/milvus/issues/42581
pr: https://github.com/milvus-io/milvus/pull/42582

Signed-off-by: Buqian Zheng <buqianzheng@Buqians-MacBook-Air.local>
Co-authored-by: Buqian Zheng <buqianzheng@Buqians-MacBook-Air.local>
2025-06-07 02:06:33 +08:00
Bingyi Sun
f61e13fb2d
fix: Check cast type is array for json contains expr (#42185)
issue: https://github.com/milvus-io/milvus/issues/42181
pr: #42184

Signed-off-by: sunby <sunbingyi1992@gmail.com>
2025-06-06 11:00:33 +08:00
Bingyi Sun
532f10f343
enhance: Support cast function for json index (#42504)
issue: #41948
pr: #41949

---------

Signed-off-by: sunby <sunbingyi1992@gmail.com>
2025-06-05 20:26:33 +08:00
Xianhui Lin
a1927e22a5
fix: add ShowLoadCollections and ShowLoadPartitions for compatibale mixcoord (#42514)
fix: add ShowLoadCollections and ShowLoadPartitions for compatibale
mixcoord
issue:https://github.com/milvus-io/milvus/issues/42492

Signed-off-by: Xianhui.Lin <xianhui.lin@zilliz.com>
2025-06-05 15:46:33 +08:00
liliu-z
1cab5dc2b2
enhance: Make cagra gpu image default (#42193)
pr: #41906
issue: #41907

Signed-off-by: yusheng.ma <yusheng.ma@zilliz.com>
Signed-off-by: Li Liu <li.liu@zilliz.com>
Co-authored-by: presburger <yusheng.ma@zilliz.com>
2025-05-30 03:12:30 +08:00
aoiasd
198ff1f150
enhance: [2.5] support run analyzer by loaded collection field (#42119)
relate: https://github.com/milvus-io/milvus/issues/42094
pr: https://github.com/milvus-io/milvus/pull/42113

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-05-29 10:26:30 +08:00
Xianhui Lin
0490344442
fix: support TTL expiration with queries returning no results (#42103)
support TTL expiration with queries returning no results
issue:https://github.com/milvus-io/milvus/issues/41959
pr:https://github.com/milvus-io/milvus/pull/42086

---------

Signed-off-by: Xianhui.Lin <xianhui.lin@zilliz.com>
2025-05-27 15:18:28 +08:00
Xianhui Lin
0574fc7b7b
enhance: support TTL expiration with queries returning no results (#41960)
support TTL expiration with queries returning no results
issue:https://github.com/milvus-io/milvus/issues/41959
pr:https://github.com/milvus-io/milvus/pull/41720

---------

Signed-off-by: Xianhui.Lin <xianhui.lin@zilliz.com>
2025-05-26 15:52:28 +08:00
yihao.dai
7c8370ccd2
fix: [2.5] Fix ants.Pool goroutine leak (#41893)
1. Release the pool after it is no longer in use.
2. Upgrade ants.Pool to fix the goroutine leak issue (see
https://github.com/panjf2000/ants/pull/287).

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

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-05-16 19:12:22 +08:00
yihao.dai
9f28a006cd
fix: [2.5] Fix ineffective log level setting in ThreadWatcher (#41887)
issue: https://github.com/milvus-io/milvus/issues/41781

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

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-05-16 12:02:27 +08:00
yihao.dai
9b17108b50
fix: [2.5] Fix import reader goroutine leak (#41870)
Close the chunk manager's reader after the import completes to prevent
goroutine leaks.

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

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-05-15 22:20:23 +08:00
aoiasd
bb562c6a7e
fix:[2.5] analyzer memory leak because function runner not close (#41840)
relate: https://github.com/milvus-io/milvus/issues/41213
pr:https://github.com/milvus-io/milvus/pull/41839

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-05-15 15:48:23 +08:00
congqixia
8b026f93a9
enhance: [2.5] Add mutex preventing concurrent plugin.Open (#41761) (#41764)
Cherry pick from master
pr: #41761 
Concurrent calling plugin.Open might cause empty pluginpath issue

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-05-12 23:20:57 +08:00
yihao.dai
c891f17391
enhance: [2.5] Skip disk quota check for l0 import (#41572)
issue: https://github.com/milvus-io/milvus/issues/41569

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

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-04-29 10:46:54 +08:00
yihao.dai
23634e197f
enhance: [2.5] Accelerate delete filtering during binlog import (#41552)
Use map for deleteData instead of slice to accelerate delete filtering
during binlog import.

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

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-04-27 18:16:39 +08:00
SimFG
18eb627533
fix: [2.5] Update logging context and upgrade dependencies (#41319)
- issue: #41291
- pr: #41318

---------

Signed-off-by: SimFG <bang.fu@zilliz.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-04-24 23:50:40 +08:00
aoiasd
8b3353cdab
feat: [2.5] Support run analyzer and more tokenizer. (#41444)
relate: https://github.com/milvus-io/milvus/issues/39659
https://github.com/milvus-io/milvus/issues/39705
pr: https://github.com/milvus-io/milvus/pull/40416
https://github.com/milvus-io/milvus/pull/40458
https://github.com/milvus-io/milvus/pull/39723
https://github.com/milvus-io/milvus/pull/40813
https://github.com/milvus-io/milvus/pull/39854
https://github.com/milvus-io/milvus/pull/39660

---------

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-04-24 10:48:39 +08:00
aoiasd
544493e3e2
feat:[2.5] support multi analyzer for bm25 function (#41456)
relate: https://github.com/milvus-io/milvus/issues/41213
pr: https://github.com/milvus-io/milvus/pull/41351

---------

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-04-23 20:52:39 +08:00
Chun Han
a89b611b2a
fix: solve incompitable problem for none-encoding index (#41346)
related: https://github.com/milvus-io/milvus/issues/40838
pr: https://github.com/milvus-io/milvus/pull/40839

Signed-off-by: MrPresent-Han <chun.han@gmail.com>
Co-authored-by: MrPresent-Han <chun.han@gmail.com>
2025-04-16 21:04:52 +08:00
liliu-z
cb0f984155
enhance: Revert "separate for index completed (#40873)" (#41152)
This reverts commit 23e579e3240a30397f05f5b308be687f6f16b013. #40873

issue: #39519

Signed-off-by: Li Liu <li.liu@zilliz.com>
2025-04-08 17:36:30 +08:00
cai.zhang
0db5e0c4f6
enhance: [2.5]Deprecate disk params about indexing (#41078)
issue: #40863 

master pr: #41045

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-04-07 11:36:34 +08:00
Chun Han
23e579e324
separate for index completed (#40873)
related: https://github.com/milvus-io/milvus/issues/40781

Signed-off-by: MrPresent-Han <chun.han@gmail.com>
Co-authored-by: MrPresent-Han <chun.han@gmail.com>
2025-04-05 10:20:24 +08:00
yihao.dai
cba8feade3
enhance: [2.5] Add UTF-8 string validation for import (#40746)
issue: https://github.com/milvus-io/milvus/issues/40684

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-03-31 21:08:21 +08:00
groot
712d1644d8
enhance: bulkinsert supports parsing sparse vector form parquet struct (#40874)
issue: https://github.com/milvus-io/milvus/issues/40777
pr: https://github.com/milvus-io/milvus/pull/40927

Signed-off-by: yhmo <yihua.mo@zilliz.com>
2025-03-31 14:20:31 +08:00
yihao.dai
b534c9d804
enhance: [2.5] Introduce batch subscription in msgdispatcher (#40596)
Introduce a batch subscription mechanism in msgdispatcher: the
msgdispatcher now includes a vchannel watch task queue, where all
vchannels in the queue will subscribe to the MQ only once and pull
messages from the oldest vchannel checkpoint to the latest.

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

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-03-24 10:18:17 +08:00
SimFG
1263505808
feat: [2.5] support to deny dll according to database property (#40784)
- issue: #40762
- pr: #40764

Signed-off-by: SimFG <bang.fu@zilliz.com>
2025-03-23 11:18:28 +08:00
congqixia
0f0cb4c189
enhance: [2.5] Close component in topological order when unsub channel (#40796) (#40819)
Cherry-pick from master
pr: #40796

Related to #40795

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-03-21 19:12:15 +08:00