Summary of changes:
- In this release, we have made several significant updates to improve write performance and user experience.
- We have revised our implementation of key-value store that translates key-value pairs in the request to block layer data written to device.
- Specifically, we have replaced RocksDB with an internal implementation of a hash-based key-value translator and a hint-based logical block manager sensitive to optimal NVMe drive IO boundary to improve write performance.
- For impacted users, these updates should provide a smoother, more intuitive experience with a noticeable improvement to write operation.
- We have deprecated compaction and the requirement for written data to be compacted before reading to achieve maximum read performance is no longer needed.
- We have introduced a new format tool called
dss-formatter
to format devices; similar to existingmkfs-blobfs
tool which has now been deprecated.
Limitations
- Persistent key listing is not yet implemented. This will result in MinIO failing to return object listing after a reboot.
- Target startup time is presently longer than expected - and will be addressed in a future release.
What's Changed
- Adding patch for hanging monitor status poller on behalf of SRCX by @nsarras in #47
- Separating system and unit tests to enable smooth consumption for code coverage in build pipelines by @nsarras in #61
- 56 pipeline integrate pytest code coverage in commitpr pipeline by @velomatt in #60
- Refactor for code coverage by @velomatt in #72
- Adding MINIO REST endpoint collector, refactoring main metrics.py to be more readable for multiple collectors by @nsarras in #69
- Add mocks and unittests for Client/Server socket communication, add m… by @Chenliang-Eric-Li in #74
- Add mid-layer system tests for datamover put with large/empty file, n… by @Chenliang-Eric-Li in #76
- Integrating MINIO cluster UUID and capacity metrics by @nsarras in #80
- Adding gen2 s3 benchmark changes by @nsarras in #78
- Removing s3 benchmark binary by @nsarras in #85
- Use latest sonar-scanner and build-wrapper on runtime by @velomatt in #86
- Modifying logic to provide metrics per MINIO endpoint by @nsarras in #83
- Adding support for badnwidth and iops collection in MINIO REST collector by @nsarras in #87
- Modifying regex pattern to accurately retrieve MINIO endpoint based on pid by @nsarras in #89
- Adding handling for if MINIO(s) go down by @nsarras in #92
New Contributors
- @Chenliang-Eric-Li made their first contribution in #74
Full Changelog: v2.0.0...v3.0.0