milvus-io/milvus
 Watch   
 Star   
 Fork   
7 days ago
milvus

milvus-2.5.10

Release note is coming soon...

13 days ago
milvus

client/v2.5.2

What's Changed

Full Changelog: https://github.com/milvus-io/milvus/compare/client/v2.5.1...client/v2.5.2

14 days ago
milvus

milvus-2.5.9

v2.5.9

Release date: April 11, 2025

Milvus version Python SDK version Node.js SDK version Java SDK version
2.5.9 2.5.6 2.5.7 2.5.7

We’re excited to announce Milvus 2.5.9, bringing improved performance for JSON key statistics, enhanced indexing capabilities, and several critical bug fixes that bolster stability and data handling. We encourage you to upgrade or give this version a try, and as always, your feedback is greatly appreciated as we continue to refine Milvus.

Improvements

  • Support skipping score normalization for the weighted re-ranker (#40905)
  • Improve the performance of JSON key stats building by adding documents in batches (#40898)
  • Use int32 when creating array indexes for int8/int16 element types (#41186)
  • Align brute-force search results with JSON index behavior for the exists expression (#41056)

Bug fixes

  • Fixed an issue causing traceID confusion if the client sent a traceID (#41149)
  • Fixed a potential crash due to incorrect usage of noexcept, leading to IO failures (#41221)
  • Resolved an infinite normal balance loop triggered after balance suspension (#41196)
  • Show collections now supports objects granted to custom privilege groups (#41204)
  • Fixed a failure to retrieve replicate channel positions (#41189)
  • Fixed a potential thread leak caused by RESTful timeouts (#41184)
  • Added a clear bitmap for batch skip mode (#41165)
  • Fixed an issue where removing an index type failed in local-mode remote storage (#41163)
  • Use element_type for array isNull operators (#41158)
  • Removed metrics reset to ensure accurate reporting (#41081)
  • Fixed a bug preventing null data from being filtered by null expressions (#41135)
  • Ignored growing segments with no start position for seal policy (#41131)
  • Avoided updating original search/query requests during retries (#41127)
  • Fixed a segmentation fault if LoadArrowReaderFromRemote runs in an exception path (#41071)
  • Addressed manual balance and balance check issues (#41038)
  • Validated schema is not nil for JSON stats with lazy DescribeCollection (#41068)
  • Fixed a cursor movement bug when comparing two columns (#41054)
  • Resolved a crash when inserting both null and non-null arrays with growing mmap open (#41052)
  • Fixed an arm64 compilation issue (#41058)
  • Added a bypass thread pool mode to avoid blocking insert/load operations by growing indexes (#41013)
  • Fixed JSON format errors (#41031)
  • Fixed a 404 error in WebUI when http.enablepprof is false (#41007)
24 days ago
milvus

milvus-2.5.8

Release note is coming soon...

2025-03-21 19:28:15
milvus

milvus-2.5.7

Release note is coming...

2025-03-07 18:15:48
milvus

milvus-2.5.6

release note is coming soon...

2025-02-28 10:26:00
milvus

milvus-2.4.23

Release note is coming soon...

2025-02-25 22:19:56
milvus

milvus-2.5.5

v2.5.5

Release date: February 26, 2025

Milvus version Python SDK version Node.js SDK version Java SDK version
2.5.5 2.5.4 2.5.5 2.5.4

Milvus 2.5.5 brings significant improvements in the number of collections and partitions a single cluster can support. It is now fully feasible to run Milvus with 10K collections and 100K partitions. This release also addresses several critical bugs, including missing match stats and a deadlock issue in multi-stage queries. Additionally, it includes numerous observability and security enhancements. We strongly recommend that all users running Milvus 2.5.x upgrade as soon as possible.

Dependency Upgrade

Upgraded to ETCD 3.5.18 to fix several CVEs.

Critical Bugs

  • [2.5] Used text_log prefix for textmatchindex null offset file (#39936)
  • [2.5] Added sub-task pool for multi-stage tasks to avoid deadlock (#40081)

Bug Fixes

  • [2.5] Fixed task scheduler deadlock (#40121)
  • [2.5] Fixed race condition that caused multiple identical indexes to be created (#40180)
  • [2.5] Fixed issue where collections with duplicate names could be created (#40147)
  • Fixed search failure of null expression (#40128)
  • [2.5] Fixed bug where prefix matching failed when wildcards were in the prefix (#40021)
  • Cancelled subcontexts cascade when HTTP request timed out (#40060)
  • [2.5] Fixed task delta cache leak on reduce task (#40056)
  • [2.5] Fixed querycoord panic in corner case (#40058)
  • [2.5] Enhanced isbalanced function to correctly count quote pairs (#40002)
  • [2.5] Fixed negative -1 executing compaction tasks (#39955)
  • [2.5] Fixed bug where a segment may never transfer from sealed to flushing (#39996)
  • Skipped creating primary key index when loading pk index (#39922)
  • [2.5] Skipped text index creation when segment was zero after sorting (#39969)
  • [2.5] Fixed failure to seek to earliest position (#39966)
  • Ignored growing option lost at hybridsearch (#39900)
  • [2.5] Fixed altercollection unable to modify consistency level (#39902)
  • Fixed import failure due to 0 row count (#39904)
  • [2.5] Fixed wrong module result for long type (#39802)
  • [2.5] Added and used lifetime context for compaction trigger (#39880)
  • [2.5] Checked collection release before target checks (#39843)
  • Fixed Rootcoord graceful stop failure and limited resource of CI (#39793)
  • [2.5] Removed load field & schema column size check (#39834, #39835)
  • [2.5] Removed the mmap.enable param in the type param when creating index (#39806)
  • [2.5] Did not pass the index name when dropping properties (#39679)
  • [2.5] Segments returned both growing and sealed results (#39789)
  • [2.5] Fixed concurrent map issue (#39776)
  • [2.5] Resolved conflict on QC task test (#39797)
  • [2.5] Fixed collection load stuck if compaction or GC occurred (#39761)
  • [2.5] Fixed uneven distribution caused by executing task delta cache leak (#39759)
  • [2.5] Returned early when skipping load pk index (#39763)
  • [2.5] Fixed root user being able to list all collections even when common.security.rootShouldBindRole was set (#39714)
  • [2.5] Fixed flowgraph leak (#39686)
  • [2.5] Used param item formatter to avoid setconfig overlay (#39636)
  • [2.5] Metastore privilege name checked with privilege name "all" (#39492)
  • [2.5] Added rate limiter for RESTful v1 (#39555)
  • [2.5] Removed hardcoded partition number in RESTful handler (#40113)

Improvements

Observability

  • Added monitor metric to retrieve raw data (#40155)
  • [2.5] Added get vector latency metric and refined request limit error message (#40085)
  • [2.5] Added metrics for proxy queue (#40071)
  • Exposed more metrics data (#39466)
  • [2.5] Added metrics for parse expression (#39716)
  • [2.5] Added DSL log field for hybridsearch (#39598)
  • [2.5] Skipped updating index metrics if index was dropped (#39572)
  • [2.5] Dumped pprof info if component stop progress timed out (#39760)
  • [2.5] Added management API to check querycoord balance status (#39909)

Stats/Compaction/Index Task Scheduler Optimization

  • Refined index task scheduler policy (#40104)
  • [2.5] Limited the speed of generating stats task (#39645)
  • Added configs for compaction schedule (#39511)
  • [2.5] Checked L0 compaction only with the same channel when stating (#39543)
  • [2.5] Adjusted segment loader's memory estimate for interim indexes (#39509)
  • [2.5] Used start pos ts for seal segment by lifetime policy (#39994)
  • Removed task meta when task was no longer needed (#40146)
  • [2.5] Accelerated listing objects during binlog import (#40048)
  • Supported creating collection with description (#40028)
  • [2.5] Exported index request timeout interval in config (#40118)
  • [2.5] Synced proxy.maxTaskNum default value to 1024 (#40073)
  • Decreased dump snapshot limit from 10w to 1w (#40102)
  • [2.5] Avoided string to slice bytes copy for batch pk exists (#40097)
  • Supported returning configurable properties when describing index (#40043)
  • Optimized expression performance for certain points (#39938)
  • [2.5] Optimized result format of getQueryNodeDistribution (#39926)
  • [cp25] Enabled observation of write amplification (#39743)
  • [2.5] Returned top-k results when searching in RESTful v2 (#39839)
  • [2.5][GoSDK] Added withEnableMatch syntactic sugar (#39853)
  • [2.5] Interim index supported different index types and more data types (FP16/BF16) (#39180)
  • [GoSDK][2.5] Synced GoSDK commits from master branch (#39823)
  • Kept consistency of memory and meta of broadcaster (#39721)
  • Broadcasted with event-based notification (#39550)
  • [2.5] Refined error message for schema & index checking (#39565)
  • [2.5] Reset default auto index type for scalar (#39820)
  • [2.5] Re-enqueued L0 compaction task when precheck failed (#39871)
2025-02-17 01:34:17
milvus

milvus-2.4.22

v2.4.22

Release Date: February 14, 2025

Milvus version Python SDK version Java SDK version Node.js SDK version
2.4.22 2.4.14 2.4.10 2.4.11

We’re thrilled to announce the release of Milvus 2.4.22, focusing on enhanced performance, faster data loading and recovery, and improved stability. This update includes several feature improvements and bug fixes that streamline operations and optimize resource usage. We encourage you to upgrade or give it a try, and as always, we look forward to your feedback to help us continually improve Milvus!

Improvements

  • Return topks when searching in RESTful v2 (#39858)
  • Dump pprof information if the component stop process times out (#39764)
  • Make compaction intervals configurable (#39512)
  • Add a secondary index for QueryNode segment manager to accelerate queries (#38348)
  • Read metadata concurrently at the collection level to speed up failure recovery (#39756)
  • Reduce locking in DataCoord to speed up load and insert operations (#38230)
  • Increase the metadata list batch size to speed up recovery (#39741)
  • Skip generating the partition limiter if no partition is set (#38912)
  • Improve the speed of fetching collection information from RootCoord by avoiding unnecessary copies (#38903)
  • Decrease the update frequency for rapidly refreshed metrics to accelerate recovery (#38776)
  • Use WalkWithPrefix instead of LoadWithPrefix to accelerate etcd list operations (#38216)
  • Speed up data loading by accelerating task generation, scheduling, and execution in QueryCoord (#38906)
  • Remove unnecessary Bloom Filters in QueryNode and DataNode to reduce memory usage (#38215)
  • Handle Rust errors in C++ (#39501)

Bug fixes

  • Fixed an issue where imports failed due to 0 row num (#39903).
  • Fixed an issue where Checkpoint target lag metrics might leak after a collection is released (#39842)
  • Fixed a potential partial partition load timeout issue (#39834)
  • Fixed an issue where index mmap could be incorrectly enabled (#39805)
  • Fixed an issue causing the modulo operation to fail for int64 in filtered searches (#39804)
  • Fixed a potential freeze when loading a collection during compaction or GC (#39766)
  • Fixed an issue where root could still list all collections after rootShouldBindRole was set (#39715)
  • Fixed channel imbalance issues caused by node downtime (#39738)
  • Resolved freeze issues triggered by excessive message queue consumers by limiting concurrency (#38916)
  • Fixed a flowgraph leak (#39687)
  • Fixed a sporadic issue where the Tantivy index could not delete index files during release (#39471)
  • Fixed an issue where incorrect configurations could invalidate permission settings (#39493)
  • Fixed an issue where RESTful API V1 could not be throttled (#39554)
  • Fixed an issue that prevented L0 Compaction from triggering when another collection was busy (#39384)
2025-01-23 00:03:07
milvus

milvus-2.5.4

v2.5.4

Release date: January 23, 2025

Milvus version Python SDK version Node.js SDK version Java SDK version
2.5.4 2.5.4 2.5.4 2.5.4

We’re excited to announce the release of Milvus 2.5.4, which introduces key performance optimizations and new features such as PartitionKey isolation, Sparse Index with DAAT MaxScore, and enhanced locking mechanisms. A standout highlight of this release is its support for 10,000 collections and 1 million partitions, marking a major milestone for multi-tenant use cases. This version also addresses multiple bugs that improve overall stability and reliability, two of the critical bugs may cause data loss. We encourage you to upgrade or try out this latest release, and we look forward to your feedback in helping us continually refine Milvus!

Features

  • Supports PartitionKey isolation to improve performance with multiple partition keys (#39245). For more information, refer to Use Partition Key.
  • Sparse Index now supports DAAT MaxScore knowhere/#1015. For more information, refer to Sparse Vector.
  • Adds support for is_null in expression (#38931)
  • Root privileges can be customized (#39324)

Improvements

  • Support 10K collections and 1million partitions in one cluster (#37630)
  • Cached segments’ delta information to accelerate the Query Coordinator (#39349)
  • Read metadata concurrently at the collection level to speed up failure recovery (#38900)
  • Refined lock granularity in QueryNode (#39282), (#38907)
  • Unified style by using CStatus to handle NewCollection CGO calls (#39303)
  • Skipped generating the partition limiter if no partition is set (#38911)
  • Added more RESTful API support (#38875) (#39425)
  • Removed unnecessary Bloom Filters in QueryNode and DataNode to reduce memory usage (#38913)
  • Speeded up data loading by accelerating task generation, scheduling, and execution in QueryCoord (#38905)
  • Reduced locking in DataCoord to speed up load and insert operations (#38904)
  • Added primary field names in SearchResult and QueryResults (#39222)
  • Used both binlog size and index size as the disk quota throttling standard (#38844)
  • Optimized memory usage for full-text search knowhere/#1011
  • Added version control for scalar indexes (#39236)
  • Improved the speed of fetching collection information from RootCoord by avoiding unnecessary copies (#38902)

Critial Bug fixs

  • Fixed search failures for primary keys with indexes (#39390)
  • Fixed potential data loss issue caused by restarting MixCoord and flushing concurrently (#39422)
  • Fixed a delete failure triggered by improper concurrency between stats tasks and L0 compaction after MixCoord restarts (#39460)
  • Fixed scalar inverted index incompatibility when upgrading from 2.4 to 2.5 (#39272)

Bug fixes

  • Fixed slow query issues caused by coarse lock granularity during multi-column loading (#39255)
  • Fixed an issue where using aliases could cause an iterator to traverse the wrong database (#39248)
  • Fixed a resource group update failure when altering the database (#39356)
  • Fixed a sporadic issue where the tantivy index could not delete index files during release (#39434)
  • Fixed slow indexing caused by having too many threads (#39341)
  • Fixed an issue preventing disk quota checks from being skipped during bulk import (#39319)
  • Resolved freeze issues caused by too many message queue consumers by limiting concurrency (#38915)
  • Fixed query timeouts caused by MixCoord restarts during large-scale compactions (#38926)
  • Fixed channel imbalance issues caused by node downtime (#39200)
  • Fixed an issue that could cause channel balance to become stuck. (#39160)
  • Fixed an issue where RBAC custom group privilege level checks became ineffective (#39224)
  • Fixed a failure to retrieve the number of rows in empty indexes (#39210)
  • Fixed incorrect memory estimation for small segments (#38909)