Commit Graph

19497 Commits (1cd15d9322f8b3f0437b01467a42253321171cf4)

Author SHA1 Message Date
jaime db79be3ae0
fix: ctx cancel should be the last step while stopping server (#31220)
issue: #31219

Signed-off-by: jaime <yun.zhang@zilliz.com>
2024-03-15 10:33:05 +08:00
wei liu ca8eee2c47
fix: Set node unreachable when get shard client failed (#31277)
issue: #30531

cause get client from `shardClientMgr`, doesn't means query node is
unavailable. because of the ref counter policy in `shardClientMgr`,
which will clean the client, if no collection use qn as shard leader.

This PR fix that set node unreachable when get shard client failed.

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-03-15 10:23:03 +08:00
XuanYang-cn a1386bae7f
fix: Skip to submit l0 tasks when scheduler full (#31270)
See also: #31242

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2024-03-15 10:21:12 +08:00
wei liu 147a3b8bdc
fix: Grpcclient return unrecoverable error (#31256)
issue: #31222

grpcclient's `call` func return a unrecoverable error, then the caller's
retry policy also breaks due to this unrecoverable error.

This PR introduce `retry.Handle`, the new func use `func() (bool,
error)` as input parameters, which return `shouldRetry` directly, to
avoid grpcclient return a unrecoverable error

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-03-15 10:03:05 +08:00
smellthemoon 056e9f0cf5
fix: unmarshal nil when check search params (#31139)
#31020

Signed-off-by: lixinguo <xinguo.li@zilliz.com>
Co-authored-by: lixinguo <xinguo.li@zilliz.com>
2024-03-15 09:15:04 +08:00
yihao.dai 7d7ef388df
enhance: Remove adding import segments to the datanode (#31244)
With the presence of L0 segments, there's no longer a need to add import
segments to the datanode.

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2024-03-15 06:53:03 +08:00
PowderLi afa4193fc2
fix: [restful v2] create collection & describe collection (#31269)
1. complete the output of describe collection #31180
2. add a new parameter `params` for create collection #31181 #31149
3. create index according to indexConfig while create collection #31199
4. autoID: false while create a collection quickly, take upsert into
consideration
5. polish error information while search without annsField #31010


fix: [restful v1] insert / upsert with default partitionName JIRA-4952

---------

Signed-off-by: PowderLi <min.li@zilliz.com>
2024-03-14 23:27:03 +08:00
XuanYang-cn a52a52064d
fix: Use lock and map instead of concurrentMap (#31212)
See also: #31209

---------

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2024-03-14 18:39:04 +08:00
congqixia 773c64ecbb
fix: Set nodeID when remove distribution (#31259)
See also #30930

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-03-14 15:09:03 +08:00
Chun Han 6939ad15f2
fix:possible out-of-bound due to groupby when reduing(#30711) (#31200)
related: #30711

Signed-off-by: MrPresent-Han <chun.han@zilliz.com>
2024-03-14 13:07:03 +08:00
congqixia b1ff8e2749
fix: Fix data race on loadSealedSegmentFields opts (#31230)
See also #31229

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-03-14 10:43:04 +08:00
XuanYang-cn 1fafc72077
fix: Correct the last empty l0 views (#31198)
See also: #31191

---------

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2024-03-14 10:31:04 +08:00
sre-ci-robot 126bb52f3d
[automated] Update Pytest image changes (#31236)
Update Pytest image changes
See changes:
652b866587
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>
2024-03-14 09:59:10 +08:00
Buqian Zheng 3c80083f51
feat: [Sparse Float Vector] add sparse vector support to milvus components (#30630)
add sparse float vector support to different milvus components,
including proxy, data node to receive and write sparse float vectors to
binlog, query node to handle search requests, index node to build index
for sparse float column, etc.

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

---------

Signed-off-by: Buqian Zheng <zhengbuqian@gmail.com>
2024-03-13 14:32:54 -07:00
Buqian Zheng 7fc3094a42
fix: fix growing index data race and properly handle build error (#31170)
issue: https://github.com/milvus-io/milvus/issues/31169

also properly handling index build error by re-create a new index so
that nothing will be left in the previous failed index build attempt.

Signed-off-by: Buqian Zheng <zhengbuqian@gmail.com>
2024-03-13 20:19:04 +08:00
congqixia 57a5e44b88
enhance: Add id,type filter shortcut for QueryNode segment manager (#31179)
See also #31143

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-03-13 20:15:03 +08:00
yihao.dai b5c67948b7
enhance: Enhance and modify the return content of ImportV2 (#31192)
1. The Import APIs now provide detailed progress information for each
imported file, including details such as file name, file size, progress,
and more.
2. The APIs now return the collection name and the completion time.
3. Other modifications include changing jobID to jobId and other similar
adjustments.

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2024-03-13 19:51:03 +08:00
nico 652b866587
test: update test cases (#31225)
Signed-off-by: nico <cheng.yuan@zilliz.com>
2024-03-13 19:05:11 +08:00
elstic 5220005a24
test: update the dim of the largest or smallest vector in case (#31223)
issue: https://github.com/milvus-io/milvus/issues/31160

Signed-off-by: elstic <hao.wang@zilliz.com>
2024-03-13 16:53:04 +08:00
wei liu 06b191b164
fix: Balance channel stuck forever due to logic dead lock (#31202)
issue: #30816

cause balance channel will stuck until leader view catch up the current
target, then start to unsub the old delegator. which make sure that the
new delegator can provide search before release old delegator. but
another logic in segment_checker skip loading segment during balance
channel. so during balance channel, if query node crash, new delegator
can't catch up target forever, then stuck forever.

This PR remove the rule that skip loading segment during balance channel
to avoid the logic dead lock here.

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-03-13 15:05:04 +08:00
elstic 5b4c0bdc20
test: update the max binary vector dim in test code (#31208)
issue: https://github.com/milvus-io/milvus/issues/31160

Signed-off-by: elstic <hao.wang@zilliz.com>
2024-03-13 11:23:04 +08:00
zhuwenxing f7abfa7884
test: add more index type in deploy test (#31132)
Signed-off-by: zhuwenxing <wenxing.zhu@zilliz.com>
2024-03-13 11:21:19 +08:00
sre-ci-robot c0816ab05a
[automated] Update Pytest image changes (#31124)
Update Pytest image changes
See changes:
045000e5f3
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>
2024-03-13 11:19:22 +08:00
Bingyi Sun 7b7187b465
fix: fix mmap load (#31171)
issue: https://github.com/milvus-io/milvus/issues/31101

---------

Signed-off-by: sunby <sunbingyi1992@gmail.com>
2024-03-13 10:49:04 +08:00
yihao.dai 87b3c25b15
fix: Fix binlog import (#31205)
1. File type validation is omitted during binlog import.
2. System fields are appended to the schema during binlog import.

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

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2024-03-13 10:35:04 +08:00
congqixia 1d96239137
enhance: Add ctx trace for segment load `prepare` (#31203)
Add ctx paramter to `prepare` and add trace id in underline logs.

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-03-13 10:01:07 +08:00
congqixia 5b51c20293
fix: Use `Remove` sync type for distribution removal (#31215)
See also #31214

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-03-13 06:11:04 +08:00
Buqian Zheng 96cfae55a5
feat: [Sparse Float Vector] segcore to support sparse vector search and get raw vector by id (#30629)
This PR adds the ability to search/get sparse float vectors in segcore,
and added unit tests by modifying lots of existing tests into
parameterized ones.

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

Signed-off-by: Buqian Zheng <zhengbuqian@gmail.com>
2024-03-12 09:16:30 -07:00
congqixia c8c906b939
test: Skip build DISKANN on bf16/fp16 case (#31197)
See also #30793

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-03-12 16:17:04 +08:00
zhagnlu c8b54f321a
fix:restrict pk in [...] optimization situations (#31184)
#31154

Signed-off-by: luzhang <luzhang@zilliz.com>
Co-authored-by: luzhang <luzhang@zilliz.com>
2024-03-12 14:49:03 +08:00
cai.zhang de2c95d00c
enhance: Constraint dynamic field as key-value format (#31183)
issue: #31051

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2024-03-12 12:45:03 +08:00
Chun Han 3298e64bd3
enhance: cache config values for saving cpu cycles to parse config item (#30947)
related: #30958

Signed-off-by: MrPresent-Han <chun.han@zilliz.com>
2024-03-12 11:09:04 +08:00
yihao.dai 69e132e05b
Use logID instead of logPath for import segment (#31182)
Currently, the logPath in the querycoord should be replaced with logID.
This PR updates the import segment's logPath to logID.

issue: https://github.com/milvus-io/milvus/issues/31123,
https://github.com/milvus-io/milvus/issues/28885

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2024-03-12 10:13:03 +08:00
wei liu 06df9b8462
fix: Balance segment/channel won't be trigger on multi replicas (#31107)
issue: #30983 #30982

cause balancer call wrong interface to get segment/channel list in
replica, then got a wrong average segment/channel number, which make
each node have less segment/channel than average, and the balance won't
be trigger in multi replica case.

This PR fix that balance segment/channel won't be trigger on multi
replicas

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-03-11 20:35:04 +08:00
cai.zhang 6a83f16871
feat: Support for multiple forms of JSON (#31052)
issue: #31051

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
2024-03-11 19:55:02 +08:00
congqixia 937f2440ab
fix: TestBlock case use different segment id in testcase (#31173)
Resolves: #31172

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-03-11 17:51:03 +08:00
Bingyi Sun 5c0bb40549
fix: merge index params when creating index (#31127)
issue: https://github.com/milvus-io/milvus/issues/31102

---------

Signed-off-by: sunby <sunbingyi1992@gmail.com>
2024-03-11 17:31:03 +08:00
chyezh 6a9418d200
fix: lost dbname when only passing collection id to describeCollection (#31167)
issue: #30931

Signed-off-by: chyezh <chyezh@outlook.com>
2024-03-11 17:19:02 +08:00
PowderLi 58d7b9f902
fix: [restful v2] search & advanced_search API (#31113)
issue: #30688
former pr:  #30946

1. param `vector` is required #31012
2. param `annsField` is optional, for multiply vector fields #31010
3. support BinaryVector, Float16Vector, BFloat16Vector #31013
4. replace vector with data, to align with pymilvus milvus_client #31093
5. create collection quickly, to align with pymilvus milvus_client
#31149

---------

Signed-off-by: PowderLi <min.li@zilliz.com>
2024-03-11 15:57:01 +08:00
wei liu 9cfe183253
enhance: remove duplicated target node id check (#31087)
issue: #31109
This PR remove duplicate target node id check, due to server id has
already been checked in rpc's interceptor

---------

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-03-11 15:31:02 +08:00
Buqian Zheng 070dfc77bf
feat: [Sparse Float Vector] segcore basics and index building (#30357)
This commit adds sparse float vector support to segcore with the
following:

1. data type enum declarations
2. Adds corresponding data structures for handling sparse float vectors
in various scenarios, including:
* FieldData as a bridge between the binlog and the in memory data
structures
* mmap::Column as the in memory representation of a sparse float vector
column of a sealed segment;
* ConcurrentVector as the in memory representation of a sparse float
vector of a growing segment which supports inserts.
3. Adds logic in payload reader/writer to serialize/deserialize from/to
binlog
4. Adds the ability to allow the index node to build sparse float vector
index
5. Adds the ability to allow the query node to build growing index for
growing segment and temp index for sealed segment without index built

This commit also includes some code cleanness, comment improvement, and
some unit tests for sparse vector.

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

Signed-off-by: Buqian Zheng <zhengbuqian@gmail.com>
2024-03-11 14:45:02 +08:00
Cai Yudong a99143dd52
fix: Save traceID and spanID as hex string into search config (#31071)
Issue: #30961

Signed-off-by: Yudong Cai <yudong.cai@zilliz.com>
2024-03-11 14:21:01 +08:00
Bingyi Sun 425da78b38
fix: alter index request's index name can not be empty (#31128)
issue: https://github.com/milvus-io/milvus/issues/31138

---------

Signed-off-by: sunby <sunbingyi1992@gmail.com>
2024-03-11 13:05:02 +08:00
congqixia ff1e967e89
enhance: Add segment id short cut for WithSegmentID filter (#31144)
See also #31143

This PR add short cut for datanoe metacache `WithSegmentIDs` filter,
which could just fetch segment from map with provided segmentIDs. Also
add benchmark for new implementation vs old one.

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-03-11 10:55:02 +08:00
yihao.dai 8cb06acfed
feat: Replacing the current import API with the v2 implementation (#31046)
Replacing the current import API v1 implementation with the v2
implementation.

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2024-03-10 12:23:02 +08:00
congqixia a944c1f912
enhance: Auto release in integration test tear down (#31147)
Now the integration tests have lots of time during tear down phase when
there are some segments or channel left in querynode(s). Querynode
cannot quick as soon as test finishes since graceful shut down logic
need querynode has no segment or channel in it. Auto releasing loaded
collection could reduce lots of running time for integration test.

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2024-03-09 11:17:00 +08:00
sre-ci-robot 53af6d8c59
[automated] Update Knowhere Commit (#31151)
Update Knowhere Commit
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>
2024-03-09 01:55:02 +08:00
Ted Xu 987d9023a5
enhance: Enable binlog deserialize reader in datanode compaction (#31036)
See #30863

Signed-off-by: Ted Xu <ted.xu@zilliz.com>
2024-03-08 18:25:02 +08:00
wei liu ddd918ba04
enhance: change frequency log to rated level (#31084)
This PR change frequency log of check shard leader to rated level

---------

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-03-08 16:39:02 +08:00
wei liu efe8cecc88
enhance: refactor segment dist manager interface (#31073)
issue: #31091
This PR add `GetByFilter` interface in segment dist manager, instead of
all kind of get func

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2024-03-08 16:29:01 +08:00