v2.6.10
Release date: February 5, 2026
| Milvus Version | Python SDK Version | Node.js SDK Version | Java SDK Version | Go SDK Version |
|---|---|---|---|---|
| 2.6.10 | 2.6.8 | 2.6.9 | 2.6.13 | 2.6.1 |
We are pleased to announce the release of Milvus 2.6.10! This update strengthens security controls around KMS key revocation and improves search and storage performance through automatic FP32-to-FP16/BF16 conversion, optimized segment loading, and updated auto-index configurations. This release also fixes a number of stability issues across compaction, query pagination, and recovery workflows. We recommend all users on the 2.6 branch upgrade to this version for improved reliability and performance.
Improvements
- Added support to stop WAL consumption when a KMS key is revoked (#47018)
- Updated the default auto-index configuration for vector fields (#47388)
- Disabled storage-version upgrade compaction by default (#47383)
- Added automatic FP32-to-FP16/BF16 conversion in search (#47241)
- Limited segment load concurrency by submitting loads to the load pool (#47335)
- Added the
map_populateflag formmapto reduce page faults during access (#47317) - Persisted BM25 stats to disk during segment loading to reduce recomputation (#47232)
- Added loading timeout and cancellation support for better control of long-running loads (#47223)
- Allowed
alter_collection_field()to update the field description (#47058) - Added a target manager to
ReplicaObserverinitialization (#47093) - Updated the Knowhere version for vector search improvements (#47109)
- Added BM25
search_by_pksupport (#47012) - Extracted assign policy from the balancer and added
StoppingBalancer(#47138) - Prevented import jobs/tasks from rolling back state unexpectedly (#47102)
- Improved slow logs by recording average cost per NQ (#47086)
Bug fixes
- Fixed incorrect group results during pagination of grouped queries (#47248)
- Added boundary validation for threadpool resize operations (#47367)
- Improved error message handling when the error type is missing (#47369)
- Prevented coredumps and improved diagnostics for
PhyReScoresNode(#47341) - Reverted a compaction change related to “fast finish” when L0 compaction hits zero (L1/L2) (#47336)
- Prevented server crashes on division/modulo by zero in filter expressions (#47306)
- [Go SDK] Aligned
timestamptzfield type and data format with the server (#47328) - Added authentication to the metrics endpoint when authorization is enabled (#47278)
- Updated
milvus_proxy_req_countmetrics for RESTful APIs (#47239) - Submitted
TriggerTypeStorageVersionUpgradecompaction tasks correctly (#47234) - Allowed empty compaction results (#47153)
- Fixed Azure precheck to use a fixed bucket not owned by Milvus (#47168)
- Ignored L0 compaction during
PreallocSegmentIDschecks (#47189) - Fixed compaction fast-finish behavior when L0 compaction hits zero (L1/L2) (#47187)
- Removed unnecessary batching to reduce OOM risk (#47175)
- Fixed deserialization handling for empty vector arrays (#47127)
- Fixed runtime config updates not triggering watchers (#47161)
- Unified primary-key handling logic between
deletePreExecuteandpackDeleteMessage(#47147) - Used user-provided target size in compaction-related logic (#47115)