Commit Graph

1123 Commits (f0d3d98c3fca81b269cc2d5c94748842078d1f0e)

Author SHA1 Message Date
Zhen Ye fd701eca71
fix: local wal perform different with remote wal (#39967)
issue: #38399

Signed-off-by: chyezh <chyezh@outlook.com>
2025-02-19 19:12:51 +08:00
sthuang f47320e0e7
enhance: clean up legacy storage v2 (#39987)
related: https://github.com/milvus-io/milvus/issues/39173

Signed-off-by: shaoting-huang <shaoting.huang@zilliz.com>
2025-02-19 15:42:52 +08:00
Patrick Weizhi Xu 04fff74a56
feat: introduce Text data type (#39874)
issue: https://github.com/milvus-io/milvus/issues/39818

This PR mimics Varchar data type, allows insert, search, query, delete,
full-text search and others.
Functionalities related to filter expressions are disabled temporarily. 

Storage changes for Text data type will be in the following PRs.

Signed-off-by: Patrick Weizhi Xu <weizhi.xu@zilliz.com>
2025-02-19 11:04:51 +08:00
yihao.dai c917fe4782
fix: Fix failed to seek to earliest position (#39965)
If it is the earliest message ID, skip the seek to prevent failure.

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

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-02-19 00:30:51 +08:00
Spade A 0dc21f0aeb
feat: support random sample (#39532)
issue: #39541

This PR implements random sample, the syntax is:
```
filter="random_sample(factor)"
or 
filter="boolean_expression && random_sample(factor)"

where 
factor is a float between (0, 1) and 
boolean_expression is like
 "1 <= number < 10", "color in ["read, "blue"]" or others
```

---------

Signed-off-by: SpadeA-Tang <tangchenjie1210@gmail.com>
Signed-off-by: SpadeA <tangchenjie1210@gmail.com>
2025-02-18 12:40:50 +08:00
Zhen Ye ae700e7519
enhance: make compatitle with old msgstream for new streaming service (#39943)
issue: #38399

Signed-off-by: chyezh <chyezh@outlook.com>
2025-02-18 11:21:08 +08:00
Zhen Ye 21724ab52c
enhance: generate guaranteets at delegator if local wal (#39799)
issue: #38399, #39892

- use mvcc timestamp of wal as guaranteets if wal and delegator is
located at same node.
- fix: ignore growing option is lost at hibridsearch

---------

Signed-off-by: chyezh <chyezh@outlook.com>
2025-02-17 15:22:15 +08:00
SimFG 047254665d
feat: support to replicate import msg (#39171)
- issue: #39849

---------

Signed-off-by: SimFG <bang.fu@zilliz.com>
Signed-off-by: chyezh <chyezh@outlook.com>
Co-authored-by: chyezh <chyezh@outlook.com>
2025-02-16 00:08:13 +08:00
Bingyi Sun b59555057d
feat: support json index (#36750)
https://github.com/milvus-io/milvus/issues/35528

This PR adds json index support for json and dynamic fields. Now you can
only do unary query like 'a["b"] > 1' using this index. We will support
more filter type later.

basic usage:
```
collection.create_index("json_field", {"index_type": "INVERTED",
    "params": {"json_cast_type": DataType.STRING, "json_path":
'json_field["a"]["b"]'}})
```

There are some limits to use this index:
1. If a record does not have the json path you specify, it will be
ignored and there will not be an error.
2. If a value of the json path fails to be cast to the type you specify,
it will be ignored and there will not be an error.
3. A specific json path can have only one json index.
4. If you try to create more than one json indexes for one json field,
sdk(pymilvus<=2.4.7) may return immediately because of internal
implementation. This will be fixed in a later version.

---------

Signed-off-by: sunby <sunbingyi1992@gmail.com>
2025-02-15 14:06:15 +08:00
wei liu bfc802297e
enhance: Add management api to check querycoord balance status (#37784)
issue: #37783

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2025-02-14 18:00:14 +08:00
wei liu b9e3ec7175
enhance: Add trigger interval config for auto balance (#39154)
issue: #39156

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2025-02-14 16:12:15 +08:00
congqixia 93212a9a63
enhance: Sync multipleChunkEnabled default value & milvus yaml (#39372)
The default value and yaml have different values which may cause
confusion when upgrading from older version.

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-02-14 14:48:14 +08:00
aoiasd 24d2bbc441
enhance: unmashall ts msg in dispatcher instead in msgstream (#38656)
relate: https://github.com/milvus-io/milvus/issues/38655

---------

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-02-14 12:04:13 +08:00
Xiaofan 13d908f302
enhance: improve bloomfilter performance (#39730)
1. remove unnecessary allocations
2. recude the concurrency to avoid extra context switch

Signed-off-by: xiaofanluan <xiaofan.luan@zilliz.com>
2025-02-13 22:12:14 +08:00
SimFG b5b15ff840
fix: root check the role list if `rootShouldBindRole` is true (#39713)
- issue: #39712

Signed-off-by: SimFG <bang.fu@zilliz.com>
2025-02-13 21:18:13 +08:00
aoiasd 5e6f6af65d
enhance: support run analyzer (#39723)
relate: https://github.com/milvus-io/milvus/issues/39705

---------

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-02-13 18:54:14 +08:00
wei liu 41dc1a705b
enhance: dump pprof info if component stop progress timeout (#39726)
issue: #39735

---------

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2025-02-13 15:32:49 +08:00
Zhen Ye 0988807160
enhance: enable write ahead buffer for streaming service (#39771)
issue: #38399

- Make a timetick-commit-based write ahead buffer at write side.
- Add a switchable scanner at read side to transfer the state between
catchup and tailing read

Signed-off-by: chyezh <chyezh@outlook.com>
2025-02-12 20:38:46 +08:00
Zhen Ye d3e32bb599
enhance: make pchannel level flusher (#39275)
issue: #38399

- Add a pchannel level checkpoint for flush processing
- Refactor the recovery of flushers of wal
- make a shared wal scanner first, then make multi datasyncservice on it

Signed-off-by: chyezh <chyezh@outlook.com>
2025-02-10 16:32:45 +08:00
XuanYang-cn 1f14053c70
enhance: Enable to observe write amplification (#39661)
Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2025-02-08 18:38:43 +08:00
yihao.dai 8288c06e3d
fix: Fix flowgraph leak (#39656)
Consider lag targets when determining whether to remove the dispatcher
manager.

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

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-02-07 16:16:44 +08:00
Xianhui Lin 82f9689711
enhance: Add schema update time verification for insert and upsert to use cache (#39096)
enhance: Add schema update time verification for insert and upsert to
use cache
issue: https://github.com/milvus-io/milvus/issues/39093

---------

Signed-off-by: Xianhui.Lin <xianhui.lin@zilliz.com>
2025-02-07 14:10:45 +08:00
jaime 8a4ac8cccd
enhance: expose more metrics data (#39456)
issue: #36621 #39417
1. Adjust the server-side cache size.
2. Add source information for configurations.
3. Add node ID for compaction and indexing tasks.
4. Resolve localhost access issues to fix health check failures for
etcd.

Signed-off-by: jaime <yun.zhang@zilliz.com>
2025-02-07 11:50:50 +08:00
Zhen Ye a9e0e0a852
enhance: broadcast with event-based notification (#39522)
issue: #38399

- broadcast message can carry multi resource key now.
- implement event-based notification for broadcast messages
- broadcast message use broadcast id as a unique identifier in message
- broadcasted message on vchannels keep the broadcasted vchannel now.
- broadcasted message and broadcast message have a common broadcast
header now.

---------

Signed-off-by: chyezh <chyezh@outlook.com>
2025-02-07 11:14:43 +08:00
Zhen Ye 5669016af0
enhance: erase the rpc level when wal is located at same node (#38858)
issue: #38399

- Make the wal scanner interface same with streaming scanner.
- Use wal if the wal is located at current node.
- Otherwise fallback the old logic.

Signed-off-by: chyezh <chyezh@outlook.com>
2025-02-05 22:25:10 +08:00
yihao.dai f0b7446e6b
enhance: Remove unnecessary collection and partition label from the metrics (#39536)
/kind improvement

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-02-05 11:01:10 +08:00
Zhen Ye a816a03351
fix: unsafe concurrent consuming api of rocksmq (#39544)
issue: #38966

Signed-off-by: chyezh <chyezh@outlook.com>
2025-02-05 09:51:10 +08:00
congqixia b3791a6f90
fix: Use param item formatter to avoid SetConfig to overlay (#39597)
Related to #39596

When updating the build param configuration, the `Formatter` could be
used to do so and completed avoid touching the `overlay` config items

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-01-27 10:51:07 +08:00
sthuang c4ae9f4ece
feat: introduce third-party milvus-storage (#39418)
related: https://github.com/milvus-io/milvus/issues/39173

Signed-off-by: shaoting-huang <shaoting.huang@zilliz.com>
2025-01-24 17:21:13 +08:00
Zhen Ye c84a0748c4
enhance: add rw/ro streaming query node replica management (#38677)
issue: #38399

- Embed the query node into streaming node to make delegator available
at streaming node.
- The embedded query node has a special server label
`QUERYNODE_STREAMING-EMBEDDED`.
- Change the balance strategy to make the channel assigned to streaming
node as much as possible.

Signed-off-by: chyezh <chyezh@outlook.com>
2025-01-24 16:55:07 +08:00
junjiejiangjjj 16cbdfb3b1
feat: Add Text Embedding Function (#36366)
https://github.com/milvus-io/milvus/issues/35856

Signed-off-by: junjie.jiang <junjie.jiang@zilliz.com>
2025-01-24 14:23:06 +08:00
Ted Xu 56659bacbb
enhance: make serialization be part of sync task to support file format change (#38946)
See #38945

---------

Signed-off-by: Ted Xu <ted.xu@zilliz.com>
2025-01-23 15:49:05 +08:00
yihao.dai 38f813bed3
enhance: Read metadata concurrently to accelerate recovery (#38403)
Read metadata such as segments, binlogs, and partitions concurrently at
the collection level.

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-01-23 14:27:27 +08:00
SimFG f070af67f7
fix: deny to set the mmap param for the alter index api when enable auto index (#39518)
- issue: #39517

Signed-off-by: SimFG <bang.fu@zilliz.com>
2025-01-23 10:01:04 +08:00
XuanYang-cn bb8cc6eb85
enhance: Add configs for compaction schedule (#39010)
Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2025-01-22 16:31:10 +08:00
aoiasd 9cb4c4e8ac
fix: bm25 import segment without bm25 stats meta (#38855)
relate: https://github.com/milvus-io/milvus/issues/38854

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-01-21 11:09:04 +08:00
Cai Yudong 341d6c1eb7
feat: Update segcore for VECTOR_INT8 (#39415)
Issue: #38666

Signed-off-by: Cai Yudong <yudong.cai@zilliz.com>
2025-01-21 11:03:03 +08:00
Gao 905c3b81dd
enhance: set materializedView.enabled default to true (#39449)
Signed-off-by: chasingegg <chao.gao@zilliz.com>
2025-01-20 20:39:04 +08:00
aoiasd a41de38f21
enhance: remain token after authorize (#39453)
Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-01-20 20:27:23 +08:00
SimFG c22e457c59
feat: root privileges can be customized (#39191)
- issue: #39184

Signed-off-by: SimFG <bang.fu@zilliz.com>
2025-01-17 16:25:04 +08:00
Duc Le Tu 2a962ad1ec
fix: apply custom producer config for kafkaHealthCheck (#39283)
issue: https://github.com/milvus-io/milvus/issues/39287
KafkaHealthCheck init without ProducerExtraConfig. This PR fix that.

---------

Signed-off-by: DLT1412 <tuduc93@gmail.com>
Co-authored-by: DucLT <duc.le1@be.com.vn>
2025-01-16 19:31:02 +08:00
foxspy 172051b050
fix: remove num_build_thread param (#39340)
issue: #39090 
The num_build_thread parameter will limit the number of build omps. This
parameter will override the effect of buildIndexThreadPoolRatio.
Removing this parameter will have no actual effect. This parameter is
actually only used in the growing index, where it will be explicitly
set.

Signed-off-by: xianliang.li <xianliang.li@zilliz.com>
2025-01-16 19:21:01 +08:00
congqixia 57e5652f1a
enhance: Log error instead of panicking if load lock wait timeout (#39308)
Related to #39205
Previous PR #39206

This PR change wait timeout behavior to log error and return to avoid
making other collection read failure in only some collections have
deadlock

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-01-16 02:31:02 +08:00
yihao.dai a5a83a0904
fix: Fix consume blocked due to too many consumers (#38455)
This PR limits the maximum number of consumers per pchannel to 10 for
each QueryNode and DataNode.

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-01-15 21:37:01 +08:00
yihao.dai 657550cf06
fix: Fix slow dist handle and slow observe (#38566)
1. Provide partition&channel level indexing in the collection target.
2. Make `SegmentAction` not wait for distribution.
3. Remove scheduler and target manager mutex.
4. Optimize logging to reduce CPU overhead.

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-01-15 20:17:00 +08:00
presburger 38881bf591
enhance: prevent multiple query nodes from causing excessive occupancy of a single node, leading to GPU memory overflow (#39276) (#38617)
issue: #39276

Signed-off-by: yusheng.ma <yusheng.ma@zilliz.com>
2025-01-15 20:15:01 +08:00
Zhen Ye 7addeea70c
fix: wrong streaming mockery package name (#39260)
issue: #39095

Signed-off-by: chyezh <chyezh@outlook.com>
2025-01-15 15:51:00 +08:00
yihao.dai ce41778fe6
enhance: Optimize GetLocalDiskSize and segment loader mutex (#38599)
1. Make the segment loader lock protect only the resource.
2. Optimize GetDiskUsage to avoid excessive overhead.

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-01-15 15:45:01 +08:00
cai.zhang 6d45dd5666
fix: Add scalar index engine version for compatibility (#39204)
issue: #39203

---------

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-01-15 12:25:00 +08:00
yihao.dai ec2e77b5d7
enhance: Reduce memory usage of BF in DataNode and QueryNode (#38129)
1. DataNode: Skip generating BF during the insert phase (BF will be
regenerated during the sync phase).
2. QueryNode: Skip generating or maintaining BF for growing segments;
deletion checks will be handled in the segcore.

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-01-15 01:59:01 +08:00