153 Commits

Author SHA1 Message Date
yihao.dai
cebe923d4a
enhance: Make GetReplicateInfo API work at the pchannel level (#44809)
issue: https://github.com/milvus-io/milvus/issues/44123

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-10-14 15:12:00 +08:00
congqixia
faaf215913
enhance: Bump go version & builder image tag (#44757)
Bump go version to 1.24.6 fixing CVE-2025-47907

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-10-11 13:49:57 +08:00
congqixia
e55e63288e
enhance: [GoSDK] bump pkg dep to v2.6.3 (#44619)
See also #31293 

Bump pkg dependency version to v2.6.2

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-10-09 19:43:57 +08:00
congqixia
1185fbec0a
enhance: Bump milvus & proto version to v2.6.3 (#44633)
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-09-30 17:33:49 +08:00
congqixia
bd6eb43617
fix: [GoSDK] Handle row->column input dynamic column (#44626)
Related to #44161

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-09-30 16:23:52 +08:00
cai.zhang
19346fa389
feat: Geospatial Data Type and GIS Function support for milvus (#44547)
issue: #43427

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
6. Support R-Tree index for geometry type

# 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
7. **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: ZhuXi <150327960+Yinwei-Yu@users.noreply.github.com>
2025-09-28 19:43:05 +08:00
Bingyi Sun
2bd377af24
enhance: [go-sdk]allow users to insert pk data if autoid is enabled (#44561)
issue: #44424

---------

Signed-off-by: sunby <sunbingyi1992@gmail.com>
2025-09-28 14:27:04 +08:00
Chun Han
1b7562a766
feat: support mannual compact l0(#44439) (#44440)
related: #44439

Signed-off-by: MrPresent-Han <chun.han@gmail.com>
Co-authored-by: MrPresent-Han <chun.han@gmail.com>
2025-09-23 12:44:07 +08:00
wei liu
92d2fb6360
enhance: Add granular flush targets support for FlushAll operation (#44234)
issue: #44156
Enhance FlushAll functionality to support targeting specific collections
within databases instead of only database-level flushing.

Changes include:

- Add FlushAllTarget message in data_coord.proto for granular targeting
- Support collection-specific flush operations within databases
- Maintain backward compatibility with deprecated db_name field

This enhancement allows users to flush specific collections without
affecting other collections in the same database, providing more precise
control over data persistence operations.

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2025-09-19 18:38:01 +08:00
congqixia
c142974853
enhance: Bump milvus & proto version to v2.6.2 (#44427)
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-09-17 21:12:01 +08:00
yihao.dai
51f69f32d0
feat: Add CDC support (#44124)
This PR implements a new CDC service for Milvus 2.6, providing log-based
cross-cluster replication.

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
Signed-off-by: chyezh <chyezh@outlook.com>
Co-authored-by: chyezh <chyezh@outlook.com>
2025-09-16 16:32:01 +08:00
congqixia
555132c834
enhance: [GoSDK] Add reciever parse result cache (#44166)
Related to #44161

This PR:
- Add reciever parse result cache
- Fix for nil IDs unmarshal panicking (#42895)

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
Co-authored-by: wangcanjia <phpip@qq.com>
2025-09-02 16:33:52 +08:00
congqixia
4376876f90
enhance: Bump milvus & proto version to v2.6.1 (#44133)
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-08-29 17:29:51 +08:00
congqixia
d3fa305785
enhance: Add grpc metadata header for client request time (#44059)
Related to #44058

This PR:
- Add common grpc metadata key for client request time
- Add gosdk & milvus inteceptor related logic for this attribute
- Bump go sdk version

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-08-27 14:27:49 +08:00
Tianx
c0d62268ac
feat: add timesatmptz data type (#44005)
issue: https://github.com/milvus-io/milvus/issues/27467
>
https://github.com/milvus-io/milvus/issues/27467#issuecomment-3092211420
> * [x]  M1 Create collection with timestamptz field
> * [x]  M2 Insert timestamptz field data
> * [x]  M3 Retrieve timestamptz field data
> * [x]  M4 Implement handoff[ ]  

The second PR of issue:
https://github.com/milvus-io/milvus/issues/27467, which completes M1-M4
described above.

---------

Signed-off-by: xtx <xtianx@smail.nju.edu.cn>
2025-08-26 15:59:53 +08:00
congqixia
56e40f7993
enhance: [GoSDK] Support IvfRabitQ & MinHashLSH index (#43975)
Related to #41746

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-08-22 04:55:47 +08:00
Tianx
26c5c779bf
feat: temporarily disable Timestamptz collection creation (#43935)
issue: https://github.com/milvus-io/milvus/issues/27467

Signed-off-by: xtx <xtianx@smail.nju.edu.cn>
2025-08-21 11:17:46 +08:00
zhuwenxing
71dc135289
test: add rerank function testcases in go client (#43891)
/kind improvement

Signed-off-by: zhuwenxing <wenxing.zhu@zilliz.com>
2025-08-19 14:57:48 +08:00
wei liu
d3c95eaa77
enhance: Support partial field updates with upsert API (#42877)
issue: #29735
Implement partial field update functionality for upsert operations,
supporting scalar, vector, and dynamic JSON fields without requiring all
collection fields.

Changes:
- Add queryPreExecute to retrieve existing records before upsert
- Implement UpdateFieldData function for merging data
- Add IDsChecker utility for efficient primary key lookups
- Fix JSON data creation in tests using proper map marshaling
- Add test cases for partial updates of different field types

Signed-off-by: Wei Liu <wei.liu@zilliz.com>
2025-08-19 11:15:45 +08:00
Xianhui Lin
b98b3b16a3
feat:add BatchDescribeCollection interface (#43786)
feat:add BatchDescribeCollection interface
issue: https://github.com/milvus-io/milvus/issues/43781

Signed-off-by: Xianhui.Lin <xianhui.lin@zilliz.com>
2025-08-18 01:23:45 +08:00
congqixia
1b87e864ca
enhance: [GoSDK] Support function reranker (#43845)
Related to #35856

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-08-14 14:57:44 +08:00
congqixia
b8fe8aed53
enhance: [GoSDK] Add param static check for search iterator (#43774)
Related to #37548

This patch add static search option check logic:
- batch size shall be positive
- all negative limit shall be treated as `Unlimited`

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-08-07 13:07:40 +08:00
congqixia
4def0255a9
enhance: [GoSDK] Support limit for search iterator (#43732)
Related to #37548

Add `WithIteratorLimit` option to limit search iterator overall return
limit.

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-08-05 16:43:38 +08:00
congqixia
c8789513eb
enhance: Bump milvus & proto version to v2.6.0 (#43704)
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-08-05 15:27:39 +08:00
congqixia
18d8dc82b8
feat: [GoSDK] Support search iterator v2 (#43612)
Related to #37548

Also link #43122

This patch implements basic functions of search iterator v2.

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-07-29 11:21:35 +08:00
congqixia
5d90b65342
enhance: [StorageV2] Add storage version in Data/Query view resp (#43348)
Related to #39173

Add `storage_version` in data/query view segment info response

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-07-16 15:52:51 +08:00
liliu-z
003c348d6d
enhance: Upgrade go version to 1.24.4 to fix CVEs (#43019)
Signed-off-by: liliu-z <liliu-z@users.noreply.github.com>
Co-authored-by: liliu-z <liliu-z@users.noreply.github.com>
2025-07-16 11:28:50 +08:00
Ted Xu
07894b37b6
enhance: returning collection metadata from cache (#42823)
See #43187

---------

Signed-off-by: Ted Xu <ted.xu@zilliz.com>
2025-07-14 10:54:50 +08:00
congqixia
002a325f0f
fix: [GoSDK] Slice valid data parsing nullable data (#43243)
Related to #43003

When nq > 1, returning nullable data in search result will lead to
parsing error. This patch add slicing valid data logic to make nullable
parsing validation logic could work.

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-07-11 10:32:48 +08:00
congqixia
7f8c5c9bb8
fix: [GoSDK] Handle insufficient topks in search result (#43126)
Related to #43118

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-07-10 01:30:48 +08:00
congqixia
1139ebb964
enhance: [GoSDK] Return SchemaMismatch error to retry (#42950)
Related to #39718

After adding field, composing write request may failure and shall
trigger retry with new schema. This PR make composing error returns
SchemaMismatch error to trigger retry policy

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-06-26 10:28:41 +08:00
aoiasd
9b97131627
enhance: [GoSDK]support run analyzer by collection field (#42642)
relate: https://github.com/milvus-io/milvus/issues/42094

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-06-17 11:16:38 +08:00
congqixia
9976e8e297
enhance: Bump milvus, proto & client version to 2.6.0-rc.1 (#42725)
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-06-13 17:54:36 +08:00
groot
d0eabf0807
enhance: add FunctionTypeRerank for Go SDK (#42659)
Signed-off-by: yhmo <yihua.mo@zilliz.com>
2025-06-13 17:12:36 +08:00
congqixia
469677cb81
enhance: [GoSDK] support AddCollectionField API (#42687)
Related to #39718

This PR makes go milvusclient support `AddCollectionField` API and adds
example code for it.

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-06-13 10:50:35 +08:00
Spade A
911a8df17c
feat: impl StructArray -- data storage support in segcore (#42406)
Ref https://github.com/milvus-io/milvus/issues/42148
This PR mainly enables segcore to support array of vector (read and
write, but not indexing). Now only float vector as the element type is
supported.

---------

Signed-off-by: SpadeA <tangchenjie1210@gmail.com>
Signed-off-by: SpadeA-Tang <tangchenjie1210@gmail.com>
2025-06-12 14:38:35 +08:00
cqy123456
317bbfbf81
enhance: milvus support minhash vector and mhjaccard metric (#42036)
issue:
https://github.com/issues/assigned?issue=milvus-io%7Cmilvus%7C41746

Signed-off-by: cqy123456 <qianya.cheng@zilliz.com>
2025-06-10 14:38:34 +08:00
groot
c00005bdaa
feat: support to drop properties of field (#41996)
issue: https://github.com/milvus-io/milvus/issues/41990

Signed-off-by: yhmo <yihua.mo@zilliz.com>
2025-05-27 14:32:34 +08:00
yihao.dai
65dd3982d8
fix: Fix ants.Pool goroutine leak (#41892)
1. Release the pool after it is no longer in use.
2. Upgrade ants.Pool to fix the goroutine leak issue (see [PR
#287](https://github.com/panjf2000/ants/pull/287)).

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

---------

Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2025-05-19 17:56:22 +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
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
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
ThreadDao
caaf9b1ea4
test: fix property case and remove load default replicaNum value (#41674)
issue: #41673

---------

Signed-off-by: ThreadDao <yufen.zong@zilliz.com>
2025-05-09 10:14:54 +08:00
shaoyue
f0451d2f3a
enhance: update go version to fix cve (#41696)
/cc @congqixia @czs007

Signed-off-by: haorenfsa <haorenfsa@gmail.com>
2025-05-08 16:04:54 +08:00
congqixia
f47b117991
enhance: [GoSDK] Make all valid normal column compactible with nullable (#41606)
Related to #41413

This PR
- Make normal columns treated as all valid data when insert into
nullable field
- Fix the typo of `WithPartitions` of HybridSearchOption

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-04-29 19:50:53 +08:00
congqixia
91bb89925c
enhance: [GoSDK] support compact&sparse mode nullable column (#41576)
Related to #41568

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-04-28 19:36:48 +08:00
congqixia
6084930854
fix: [GoSDK] Loose rowbased insert data check (#41498)
Related to #41460

This PR looses insert data check based on schema. These check shall
actually happen at milvus server side.

---------

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2025-04-25 10:38:38 +08:00
SimFG
91d40fa558
fix: Update logging context and upgrade dependencies (#41318)
- issue: #41291

---------

Signed-off-by: SimFG <bang.fu@zilliz.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-04-23 10:52:38 +08:00
Mario Camou
6b30e9ae60
feat: Export milvusclient.annRequest (issue: #41261) (#41356)
Issue: #41261

`milvusclient.NewHybridSearchOption` receives a variadic `annRequests`
parameter. However, since `milvusclient.annRequest` is private, there is
no way to declare a slice, therefore there is no way to make it fully
generic (as in, create a slice of `milvusclient.annRequest`s and pass
them to `NewHybridSearchOption`. This PR renames
`milvusclient.annRequest` to `milvusclient.AnnRequest` to export it.

This is an API change since it's renaming a struct. However, since the
struct was previously private no external code depends on it, unless
it's doing nasty things with reflection (in which case it should not
depend on the name).

Signed-off-by: Mario Camou <mcamou@users.noreply.github.com>

Signed-off-by: mcamou <mcamou@users.noreply.github.com>
2025-04-23 02:38:38 +08:00
aoiasd
24eb70f382
enhance: [GOSDK] support run analyzer for go client (#39973)
relate: https://github.com/milvus-io/milvus/issues/39705

---------

Signed-off-by: aoiasd <zhicheng.yue@zilliz.com>
2025-04-21 10:24:40 +08:00