Skip to content

milvus

vclient/v2.6.4 Feature

This release adds 3 notable features for engineering teams evaluating rollout.

Published 26d Vector Databases
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

anns cloud-native diskann distributed embedding-database embedding-similarity
+10 more
embedding-store faiss go hnsw image-search llm nearest-neighbor-search vector-db vector-similarity vector-store

Summary

AI summary

Added struct-array vector sub-field support, EmbeddingList search types, gRPC authority config, and fixed custom dial options preservation.

Full changelog

Highlights

  • Completes Go SDK (client/v2) struct-array support, especially vector sub-fields and EmbeddingList/MAX_SIM search.
  • Fixes custom gRPC DialOptions so they no longer drop the SDK's default keepalive, backoff, and max receive message-size settings.

New Features

  • Struct-array vector sub-field columns: Added vector-array column types for struct-array vector sub-fields: ColumnFloatVectorArray, ColumnFloat16VectorArray, ColumnBFloat16VectorArray, ColumnBinaryVectorArray, and ColumnInt8VectorArray. These support ArrayOfVector sub-fields inside struct arrays. (#49164)

  • EmbeddingList search vector types: Added entity.FloatVectorArray, entity.Float16VectorArray, entity.BFloat16VectorArray, entity.BinaryVectorArray, and entity.Int8VectorArray, dispatching them to the matching PlaceholderType_EmbList* values. This enables MAX_SIM / EmbeddingList search against struct-array vector sub-fields such as clips[clip_emb]. (#49164)

  • Struct-array insert/upsert helper: Added WithStructArrayColumn(name, structSchema, rows) to column-based insert/upsert options. The helper accepts []map[string]any row data and infers scalar/vector sub-column types from the provided struct schema. (#49164)

  • gRPC authority configuration: Added ClientConfig.WithGrpcAuthority(authority) for proxy-based routing through the gRPC :authority header. (#49186)

Bug Fixes

  • Default gRPC dial options are preserved: Client.dialOptions() now always applies DefaultGrpcOpts before user-provided DialOptions, retaining SDK defaults for keepalive, backoff, and max receive message size while still allowing caller overrides. (#49186, issue #48828)

  • Struct-array schema validation: Added Schema.Validate() and StructSchema.Validate() and wired validation into CreateCollection. Invalid struct-array sub-fields are rejected before the RPC, including nested array/struct fields, sparse vector sub-fields, duplicate sub-field names, and top-level-only flags such as primary key, partition key, clustering key, nullable, default value, dynamic, and autoID. (#49164, issue #49163)

  • Struct-array schema round trip: Schema.ReadProto() now restores StructArrayFields, and ProtoMessage() preserves max_capacity by propagating the parent setting to sub-fields when needed. Array / ArrayOfVector wrappers from the server are unwrapped back to user-facing scalar/vector sub-field types. (#49164)

  • Struct-array write correctness: columnStructArray now enforces equal lengths across sub-fields, appends a row atomically with rollback on partial sub-field failure, and serializes top-level struct-array field data as DataType_ArrayOfStruct. (#49164)

  • Vector-array response decoding: Query/search result decoding now handles DataType_ArrayOfVector, validates nil vector rows, validates payload lengths against dimension/width, rejects invalid binary vector dimensions, and preserves vector-array sub-field data in Go column types. (#49164)

  • Builder error handling: WithStructArrayColumn stores construction errors and returns them from InsertRequest / UpsertRequest instead of panicking during chained builder calls. (#49164)

Contributors

  • @zhuwenxing
  • @liliu-z
  • @milanchovatiya-boop

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track milvus

Get notified when new releases ship.

Sign up free

About milvus

Milvus is a high-performance, cloud-native vector database built for scalable vector ANN search

All releases →

Related context

Beta — feedback welcome: [email protected]