1333 Commits

Author SHA1 Message Date
cai.zhang
762a644d76
enhance: Limit the speed of the generating stats task (#39644)
Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-02-28 10:27:59 +08:00
cai.zhang
a74580c1ca
fix: Set task version for stats task (#40035)
issue: #40034

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-02-27 17:49:59 +08:00
wei liu
69b8b89369
enhance: Remove QueryCoord's scheduling of L0 segments (#39552)
issue: #39551
This PR remove querycoord's scheduling of l0 segments:
  - only load l0 segment when watch channel
- only release l0 segment when release channel or sync data distribution

---------

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2025-02-26 21:38:00 +08:00
yihao.dai
8f077089ba
enhance: Accelerate listing objects during binlog import (#40047)
issue: https://github.com/milvus-io/milvus/issues/40030

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-02-26 15:55:57 +08:00
XuanYang-cn
315cfb7f32
fix: Negative -1 executing compaction tasks (#39954)
See also: #39675

---------

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2025-02-25 18:07:55 +08:00
cai.zhang
9f5b488f9a
enhance: Export request timeout interval in config (#40119)
Signed-off-by: cai.zhang <cai.zhang@zilliz.com>
Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-02-23 15:15:54 +08:00
congqixia
cb7f2fa6fd
enhance: Use v2 package name for pkg module (#39990)
Related to #39095

https://go.dev/doc/modules/version-numbers

Update pkg version according to golang dep version convention

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-02-22 23:15:58 +08:00
Ted Xu
8562a102ec
enhance: API integration with storage v2 in mix-compactions (#40008)
See #39173

---------

Signed-off-by: Ted Xu <ted.xu@zilliz.com>
2025-02-22 14:23:54 +08:00
XuanYang-cn
fb969cf636
fix: A segment may never transfer from sealed to flushing (#39993)
See also: #39717

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2025-02-21 16:51:54 +08:00
SimFG
b562f8e644
fix: add filter to exclude L0 import jobs in compaction trigger (#40045)
- issue: #39849

Signed-off-by: SimFG <bang.fu@zilliz.com>
2025-02-21 10:45:53 +08:00
congqixia
5d83deb3f8
fix: Use start pos ts instead for sealSegmentByLifetime policy (#39982)
Related to #39981

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-02-19 15:41:06 +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
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
congqixia
9bbaaac291
fix: Add and use lifetime context for compaction trigger (#39857)
Related to #39856

This PR add lifetime bound context for compaction trigger and use it
instead of context.Background in case of rootcoord down and some grpc
call retry forever

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-02-14 10:32:14 +08:00
cai.zhang
2428d49528
fix: ReEnqueue L0 compaction task when preCheck failed (#39870)
issue: #39868

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-02-13 22:28:15 +08:00
SimFG
407c4b4151
fix: remove the mmap.enable param in the type param when creating index (#39803)
Because when GetIndexParams is used, index params and type params are
concatenated, so when loading index, the mmap.enable parameter in type
params is also referenced.

- issue: #39801

Signed-off-by: SimFG <bang.fu@zilliz.com>
2025-02-13 10:12:47 +08:00
Ted Xu
53a4207f46
enhance: improve sort performance by writing with batch record (#39685)
See #37234

---------

Signed-off-by: Ted Xu <ted.xu@zilliz.com>
2025-02-12 15:08:47 +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
cai.zhang
1d54ff157f
fix: Restore the compacting state for stats task during recovery (#39459)
issue: #39333

---------

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
Signed-off-by: cai.zhang <cai.zhang@zilliz.com>
2025-02-05 17:11:12 +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
congqixia
6d8441ad7e
enhance: Use mockery pkg config for datacoord&datanode (#39567)
Related to #38339

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-01-24 14:25:06 +08:00
yihao.dai
5fb597b37b
fix: Remove frequently updating metric to avoid mutex contention (#38775)
issue: https://github.com/milvus-io/milvus/issues/37630

Reduce the frequency updating metrics to avoid holding the mutex for
long periods.

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-01-24 10:31:07 +08:00
congqixia
05b6ea1351
enhance: Refine error msg for schema & index checking (#39533)
The error message was malformated or missing some meta info, say field
name. This PR recitfies some message format and add field name in error
message when type param check fails.

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-01-24 09:57:06 +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
congqixia
1a1ed07cfa
enhance: Skip update index metrics if index dropped (#39458)
Related to #39457

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-01-22 11:19:04 +08:00
yihao.dai
89eaf92984
enhance: Limit number of segments restored and promptly terminate the job (#39344)
1. Limit the maximum number of restored segments to 1024.
2. Fail the import job if saving binlog fails.
3. Fail the import job if saving the import task fails to prevent
repeatedly generating dirty importing segments.

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

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-01-21 15:13:13 +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
zhenshan.cao
38b96090a8
fix: deleted the sealed segment data accidentally (#39421)
issue: https://github.com/milvus-io/milvus/issues/39333

Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
2025-01-20 15:29:02 +08:00
XuanYang-cn
74b4369c5b
fix: Record active collections for l0Policy (#39217)
By recording the active collection lists, The l0 compaction trigger
of view change and idle won't influence each other.

Also this pr replaces the L0View cache with real L0 segments' change.
Save some memory and make L0 compaction triggers more accurate.

See also: #39187

Signed-off-by: yangxuan <xuan.yang@zilliz.com>

---------

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2025-01-16 20:19:02 +08:00
congqixia
1f6fd54146
fix: [skip e2e] Make test case assigner result deterministic (#39317)
Related to #39296

The case initialized with {100:8 ,101: 16}. After first assignment, the
slots become {100:8, 101:8} and the following result is not stable.

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-01-16 14:25: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
congqixia
82bdf9a6a8
fix: Add index param duplication check (#39289)
Related to #39288

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-01-15 19:23:01 +08:00
wei liu
d2834a1812
enhance: Add logs for check health failed (#39208)
Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2025-01-15 17:31:00 +08:00
Ted Xu
e501025bba
enhance: simplify compaction tasks to reduce their memory overhead (#39121)
See #39080

---------

Signed-off-by: Ted Xu <ted.xu@zilliz.com>
2025-01-15 14:51:00 +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
cai.zhang
3a6408b237
fix: Record a map to avoid repeatedly traversing the CompactionFrom (#38925)
issue: #38811

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-01-15 10:02:58 +08:00
yihao.dai
272d95ad79
enhance: Reduce mutex contention in datacoord meta (#38219)
1. Using secondary index to avoid retrieving all segments at
`GetSegmentsChanPart`.
2. Perform batch SetAllocations to reduce the number of times the meta
lock is acquired.

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-01-15 01:15:02 +08:00
Zhen Ye
3e788f0fbd
enhance: record memory size (uncompressed) item for index (#38770)
issue: #38715

- Current milvus use a serialized index size(compressed) for estimate
resource for loading.
- Add a new field `MemSize` (before compressing) for index to estimate
resource.

---------

Signed-off-by: chyezh <chyezh@outlook.com>
2025-01-14 10:33:06 +08:00
Ted Xu
4355b485e5
enhance: remove compaction parallelism control (#39081)
See #39080

---------

Signed-off-by: Ted Xu <ted.xu@zilliz.com>
2025-01-10 13:23:00 +08:00
Zhen Ye
bb8d1ab3bf
enhance: make new go package to manage proto (#39114)
issue: #39095

---------

Signed-off-by: chyezh <chyezh@outlook.com>
2025-01-10 10:49:01 +08:00
jaime
f03a85725a
enhance: add db name in replica (#38672)
issue: #36621

Signed-off-by: jaime <yun.zhang@zilliz.com>
2025-01-09 19:40:59 +08:00
Zhen Ye
c5a7000a92
enhance: move streaming coord from datacoord to rootcoord (#39007)
issue: #38399

We want to support broadcast operation for both streaming and msgstream.
But msgstream can be only sent message from rootcoord and proxy.
So this pr move the streamingcoord to rootcoord to make easier
implementation.

---------

Signed-off-by: chyezh <chyezh@outlook.com>
2025-01-07 17:42:57 +08:00
cai.zhang
9672eee78a
enhance: Increase the buffer capacity of notifyIndexChan to support concurrency (#38957)
Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2025-01-05 18:53:01 +08:00
cai.zhang
af0315f190
fix: Release compaction task lock when return function (#38856)
issue: #38851

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2024-12-30 22:44:49 +08:00
jaime
5afd0c0a2b
fix: Revert "Expose metrics of stanby coordinators (#27698)" (#38620)
issue: #38608

Signed-off-by: jaime <yun.zhang@zilliz.com>
2024-12-23 11:46:57 +08:00
XuanYang-cn
ca7ec23198
enhance: Use partitionID when delete by partitionKey (#38231)
When delete by partition_key, Milvus will generates L0 segments
globally. During L0 Compaction, those L0 segments will touch all
partitions collection wise. Due to the false-positive rate of segment
bloomfilters, L0 compactions will append false deltalogs to completed
irrelevant partitions, which causes *partition deletion amplification.

This PR uses partition_key to set targeted partitionID when producing
deleteMsgs into MsgStreams. This'll narrow down L0 segments scope to
partition level, and remove the false-positive influence
collection-wise.

However, due to DeleteMsg structure, we can only label one partition to
one deleteMsg, so this enhancement fails if user wants to delete over 2
partition_keys in one deletion.

See also: #34665

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2024-12-20 11:18:46 +08:00
XuanYang-cn
c0b855dc75
fix: ChannelManager concurret Release and Watch bug (#38590)
See also: #38589

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2024-12-19 22:50:47 +08:00