diff --git a/src/pages/download.md b/src/pages/download.md index 99276b129c..16b7560c9f 100644 --- a/src/pages/download.md +++ b/src/pages/download.md @@ -2,6 +2,7 @@ | Version | Release Date | Source Download | Binary Download | Release Notes | | ------- | ------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------- | +| 2.2.1 | TBD | [Source](https://www.apache.org/dyn/closer.cgi/ozone/2.2.1/ozone-2.2.1-src.tar.gz)
[Checksum](https://downloads.apache.org/ozone/2.2.1/ozone-2.2.1-src.tar.gz.sha512)
[Signature](https://downloads.apache.org/ozone/2.2.1/ozone-2.2.1-src.tar.gz.asc) | [Binary](https://www.apache.org/dyn/closer.cgi/ozone/2.2.1/ozone-2.2.1.tar.gz)
[Checksum](https://downloads.apache.org/ozone/2.2.1/ozone-2.2.1.tar.gz.sha512)
[Signature](https://downloads.apache.org/ozone/2.2.1/ozone-2.2.1.tar.gz.asc) | [Release Notes](/release-notes/2.2.1) | | 2.2.0 | 2026 Jul 15 | [Source](https://www.apache.org/dyn/closer.cgi/ozone/2.2.0/ozone-2.2.0-src.tar.gz)
[Checksum](https://downloads.apache.org/ozone/2.2.0/ozone-2.2.0-src.tar.gz.sha512)
[Signature](https://downloads.apache.org/ozone/2.2.0/ozone-2.2.0-src.tar.gz.asc) | [Binary](https://www.apache.org/dyn/closer.cgi/ozone/2.2.0/ozone-2.2.0.tar.gz)
[Checksum](https://downloads.apache.org/ozone/2.2.0/ozone-2.2.0.tar.gz.sha512)
[Signature](https://downloads.apache.org/ozone/2.2.0/ozone-2.2.0.tar.gz.asc) | [Release Notes](/release-notes/2.2.0) | | 2.1.1 | 2026 Jun 21 | [Source](https://www.apache.org/dyn/closer.cgi/ozone/2.1.1/ozone-2.1.1-src.tar.gz)
[Checksum](https://downloads.apache.org/ozone/2.1.1/ozone-2.1.1-src.tar.gz.sha512)
[Signature](https://downloads.apache.org/ozone/2.1.1/ozone-2.1.1-src.tar.gz.asc) | [Binary](https://www.apache.org/dyn/closer.cgi/ozone/2.1.1/ozone-2.1.1.tar.gz)
[Checksum](https://downloads.apache.org/ozone/2.1.1/ozone-2.1.1.tar.gz.sha512)
[Signature](https://downloads.apache.org/ozone/2.1.1/ozone-2.1.1.tar.gz.asc) | [Release Notes](/release-notes/2.1.1) | | 2.0.0 | 2025 Apr 30 | [Source](https://www.apache.org/dyn/closer.cgi/ozone/2.0.0/ozone-2.0.0-src.tar.gz)
[Checksum](https://downloads.apache.org/ozone/2.0.0/ozone-2.0.0-src.tar.gz.sha512)
[Signature](https://downloads.apache.org/ozone/2.0.0/ozone-2.0.0-src.tar.gz.asc) | [Binary](https://www.apache.org/dyn/closer.cgi/ozone/2.0.0/ozone-2.0.0.tar.gz)
[Checksum](https://downloads.apache.org/ozone/2.0.0/ozone-2.0.0.tar.gz.sha512)
[Signature](https://downloads.apache.org/ozone/2.0.0/ozone-2.0.0.tar.gz.asc) | [Release Notes](/release-notes/2.0.0) | diff --git a/src/pages/release-notes/2.2.1.md b/src/pages/release-notes/2.2.1.md new file mode 100644 index 0000000000..06dd17dac5 --- /dev/null +++ b/src/pages/release-notes/2.2.1.md @@ -0,0 +1,92 @@ +# Release 2.2.1 Available + +![Katmai-haiku](/releases-2.2.0.jpg) + +## Release Notes + +Apache Ozone 2.2.1 is a maintenance release on top of Ozone 2.2.0 with bug fixes, performance improvements, and dependency updates. + +## Notable Fixes + +### [HDDS-15783](https://issues.apache.org/jira/browse/HDDS-15783) — SCM fails to deserialize empty lists from Ratis log + +Fixed deserialization failure when SCM Ratis log entries contained empty lists, which could block SCM startup or state replay. + +--- + +### [HDDS-15578](https://issues.apache.org/jira/browse/HDDS-15578) — InvalidStateTransitionException can crash SCM + +SCM no longer crashes from uncaught InvalidStateTransitionException during container state updates. + +--- + +### [HDDS-15791](https://issues.apache.org/jira/browse/HDDS-15791) — EC RECOVERING container data loss after idle scrub + +Fixed EC offline reconstruction data loss when idle RECOVERING containers were scrubbed and auto-recreated as partial CLOSED replicas. + +--- + +### [HDDS-15849](https://issues.apache.org/jira/browse/HDDS-15849) — gRPC client shutdown slows parallel reads + +Fixed a performance regression where gRPC client shutdown blocked the datanode client cache lock for 100 ms or more per close, causing severe slowdown in parallel read workloads such as EC reconstruction. + +--- + +### [HDDS-15665](https://issues.apache.org/jira/browse/HDDS-15665) — Datanode transaction iterator race condition + +Fixed a race condition in the datanode transaction iterator that could cause already-deleted transactions to be loaded and reprocessed after a flush. + +--- + +### [HDDS-12669](https://issues.apache.org/jira/browse/HDDS-12669) — ContainerSet recoveringContainerMap race condition + +Fixed a race condition in ContainerSet#recoveringContainerMap that could cause incorrect container recovery state during datanode restarts. + +--- + +### [HDDS-15552](https://issues.apache.org/jira/browse/HDDS-15552) — Prometheus scraping fails on Ozone metrics + +Fixed Prometheus metrics endpoints failing to scrape Ozone services because Ratis event strings were published as metric names containing invalid characters. + +--- + +### [HDDS-11772](https://issues.apache.org/jira/browse/HDDS-11772) — Recon reports incorrect Ozone used capacity + +Fixed incorrect Ozone used capacity reporting in Recon that could show vastly inflated values compared to the actual data written. + +--- + +## Changelog + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +### Fixed + +- Fixed SCM deserialization failure for empty lists in Ratis log entries. ([HDDS-15783](https://issues.apache.org/jira/browse/HDDS-15783)) +- Fixed SCM crashes from uncaught InvalidStateTransitionException during container state updates. ([HDDS-15578](https://issues.apache.org/jira/browse/HDDS-15578)) +- Fixed EC offline reconstruction data loss for idle RECOVERING containers. ([HDDS-15791](https://issues.apache.org/jira/browse/HDDS-15791)) +- Fixed gRPC client shutdown performance regression under parallel read workloads. ([HDDS-15849](https://issues.apache.org/jira/browse/HDDS-15849)) +- Fixed datanode transaction iterator race condition after flush. ([HDDS-15665](https://issues.apache.org/jira/browse/HDDS-15665)) +- Fixed ContainerSet#recoveringContainerMap race condition during datanode restarts. ([HDDS-12669](https://issues.apache.org/jira/browse/HDDS-12669)) +- Fixed Prometheus metrics scraping failures caused by invalid Ratis event metric names. ([HDDS-15552](https://issues.apache.org/jira/browse/HDDS-15552)) +- Fixed incorrect Ozone used capacity reporting in Recon. ([HDDS-11772](https://issues.apache.org/jira/browse/HDDS-11772)) + +### Changed + +- Upgraded Netty to 4.1.135. ([HDDS-15722](https://issues.apache.org/jira/browse/HDDS-15722)) +- Upgraded Netty to 4.1.136. ([HDDS-15900](https://issues.apache.org/jira/browse/HDDS-15900)) +- Upgraded BouncyCastle to 1.85. ([HDDS-15974](https://issues.apache.org/jira/browse/HDDS-15974)) +- Upgraded Protobuf to 3.25.9. ([HDDS-15674](https://issues.apache.org/jira/browse/HDDS-15674)) +- Upgraded Ratis thirdparty to 1.0.11. ([HDDS-15727](https://issues.apache.org/jira/browse/HDDS-15727)) + +## Downloads + +- [Download tar.gz](https://www.apache.org/dyn/closer.cgi/ozone/2.2.1/ozone-2.2.1.tar.gz) ([checksum](https://downloads.apache.org/ozone/2.2.1/ozone-2.2.1.tar.gz.sha512), [signature](https://downloads.apache.org/ozone/2.2.1/ozone-2.2.1.tar.gz.asc)) +- [Download src](https://www.apache.org/dyn/closer.cgi/ozone/2.2.1/ozone-2.2.1-src.tar.gz) ([checksum](https://downloads.apache.org/ozone/2.2.1/ozone-2.2.1-src.tar.gz.sha512), [signature](https://downloads.apache.org/ozone/2.2.1/ozone-2.2.1-src.tar.gz.asc)) + +## Documentation + +- [Ozone 2.2.1 Documentation](https://ozone.apache.org/docs/2.2.1) + +**Release Date:** TBD diff --git a/versions.json b/versions.json index 26064f91b7..75f9619789 100644 --- a/versions.json +++ b/versions.json @@ -1,4 +1,5 @@ [ + "2.2.1", "2.2.0", "2.1.1" ]