-
Notifications
You must be signed in to change notification settings - Fork 3.9k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Showing
2 changed files
with
169 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,166 @@ | ||
## RabbitMQ 4.0.5 | ||
|
||
RabbitMQ `4.0.5` is a maintenance release in the `4.0.x` [release series](https://www.rabbitmq.com/release-information). | ||
|
||
Starting June 1st, 2024, community support for this series will only be provided to [regularly contributing users](https://github.com/rabbitmq/rabbitmq-server/blob/main/COMMUNITY_SUPPORT.md) and those | ||
who hold a valid [commercial support license](https://tanzu.vmware.com/rabbitmq/oss). | ||
|
||
It is **strongly recommended** that you read [4.0 release notes](https://github.com/rabbitmq/rabbitmq-server/releases/tag/v4.0.1) | ||
in detail if upgrading from a version prior to `4.0.0`. | ||
|
||
|
||
### Minimum Supported Erlang Version | ||
|
||
This release requires Erlang 26 and supports Erlang versions up to `27.2.x`. | ||
[RabbitMQ and Erlang/OTP Compatibility Matrix](https://www.rabbitmq.com/docs/which-erlang) has more details on | ||
Erlang version requirements for RabbitMQ. | ||
|
||
Nodes **will fail to start** on older Erlang releases. | ||
|
||
|
||
## Changes Worth Mentioning | ||
|
||
Release notes can be found on GitHub at [rabbitmq-server/release-notes](https://github.com/rabbitmq/rabbitmq-server/tree/v4.0.x/release-notes). | ||
|
||
### Core Broker | ||
|
||
#### Bug Fixes | ||
|
||
* Reintroduced transient flow control between classic queue replicas and AMQP 0-9-1 channels, | ||
MQTT connections. | ||
|
||
Flow control between these specific parts of the core were unintentionally | ||
removed in `4.0.0` together with classic queue mirroring. | ||
|
||
Contributed by @gomoripeti. | ||
|
||
GitHub issue: [#12907](https://github.com/rabbitmq/rabbitmq-server/pull/12907) | ||
|
||
* The feature that warns when deprecated features are used in the cluster had a false positive that treated (and reported) any queue | ||
as a "transient non-exclusive classic queue", even if the queue was of a different type, was not transient, and so on. | ||
|
||
GitHub issue: [#12802](https://github.com/rabbitmq/rabbitmq-server/issues/12802) | ||
|
||
* AMQP 1.0 clients with close to peak consumption rates with a high `max_link_creadit` setting could run into an exception | ||
because RabbitMQ could set the incoming window size to a negative value. | ||
|
||
GitHub issue: [#12816](https://github.com/rabbitmq/rabbitmq-server/issues/12816), [#12904](https://github.com/rabbitmq/rabbitmq-server/pull/12904) | ||
|
||
* AMQP 0-9-1 channel exception generator could not handle entity names (say, queue or stream names) | ||
that contained non-ASCII characters. | ||
|
||
This affected applications that use passive queue declarations, such as the Shovel plugin. | ||
|
||
Contributed by @bpint. | ||
|
||
GitHub issue: [#12888](https://github.com/rabbitmq/rabbitmq-server/pull/12888) | ||
|
||
* Peer discovery resilience improvements. | ||
|
||
GitHub issues: [#12801](https://github.com/rabbitmq/rabbitmq-server/pull/12801), [#12809](https://github.com/rabbitmq/rabbitmq-server/pull/12809) | ||
|
||
* Deadlettering of some messages could result in an exception. | ||
|
||
GitHub issue: [#12933](https://github.com/rabbitmq/rabbitmq-server/issues/12933), [#12938](https://github.com/rabbitmq/rabbitmq-server/pull/12938) | ||
|
||
#### Enhancements | ||
|
||
* For virtual hosts that have a [default queue type]() configured, the DQT value is now injected into | ||
queue definitions in exported definition documents. | ||
|
||
GitHub issue: [#12776](https://github.com/rabbitmq/rabbitmq-server/issues/12776) | ||
|
||
* Definition export files now have additional "type" markers that help distinguish a cluster-wide definition file from | ||
that of a single virtual host. | ||
|
||
GitHub issue: [#12835](https://github.com/rabbitmq/rabbitmq-server/issues/12835) | ||
|
||
|
||
### Prometheus Plugin and Grafana Dashboards | ||
|
||
#### Enhancements | ||
|
||
* Two new stream metrics for streams. | ||
|
||
Contributed by @gomoripeti and @markus812498. | ||
|
||
GitHub issue: [#12765](https://github.com/rabbitmq/rabbitmq-server/pull/12765) | ||
|
||
|
||
### Management Plugin | ||
|
||
#### Bug Fixes | ||
|
||
* Fixes a false positive that incorrectly reported deprecated feature use, specifically | ||
the use of non-exclusive transient classic queues. | ||
|
||
GitHub issue: [#12840](https://github.com/rabbitmq/rabbitmq-server/pull/12840) | ||
|
||
* `GET /api/overview` did not format empty cluster and node list tags as an empty JSON object, | ||
which was problematic for HTTP API clients with statically typed response data structures. | ||
|
||
GitHub issue: [#12797](https://github.com/rabbitmq/rabbitmq-server/pull/12797) | ||
|
||
* When a logged in user's JWT token was refreshed, the user identity displayed in the UI was changed. | ||
|
||
GitHub issue: [#12818](https://github.com/rabbitmq/rabbitmq-server/pull/12818) | ||
|
||
|
||
### OAuth 2 Plugin | ||
|
||
#### Bug Fixes | ||
|
||
* When a logged in user's JWT token was refreshed, the user identity displayed in the UI was changed. | ||
|
||
GitHub issue: [#12818](https://github.com/rabbitmq/rabbitmq-server/pull/12818) | ||
|
||
|
||
### AWS Peer Discovery Plugin | ||
|
||
#### Bug Fixes | ||
|
||
* Avoids an exception during automatic removal of cluster members that are | ||
no longer returned by peer discovery (an [opt-in feature](https://www.rabbitmq.com/docs/cluster-formation#node-health-checks-and-cleanup)). | ||
|
||
GitHub issue: [#12809](https://github.com/rabbitmq/rabbitmq-server/pull/12809) | ||
|
||
|
||
### Kubernetes Peer Discovery Plugin | ||
|
||
#### Bug Fixes | ||
|
||
* Avoids an exception during automatic removal of cluster members that are | ||
no longer returned by peer discovery (an [opt-in feature](https://www.rabbitmq.com/docs/cluster-formation#node-health-checks-and-cleanup)). | ||
|
||
GitHub issue: [#12809](https://github.com/rabbitmq/rabbitmq-server/pull/12809) | ||
|
||
|
||
### Consul Peer Discovery Plugin | ||
|
||
#### Bug Fixes | ||
|
||
* Avoids an exception during automatic removal of cluster members that are | ||
no longer returned by peer discovery (an [opt-in feature](https://www.rabbitmq.com/docs/cluster-formation#node-health-checks-and-cleanup)). | ||
|
||
GitHub issue: [#12809](https://github.com/rabbitmq/rabbitmq-server/pull/12809) | ||
|
||
|
||
### etcd Peer Discovery Plugin | ||
|
||
#### Bug Fixes | ||
|
||
* Avoids an exception during automatic removal of cluster members that are | ||
no longer returned by peer discovery (an [opt-in feature](https://www.rabbitmq.com/docs/cluster-formation#node-health-checks-and-cleanup)). | ||
|
||
GitHub issue: [#12809](https://github.com/rabbitmq/rabbitmq-server/pull/12809) | ||
|
||
|
||
### Dependency Changes | ||
|
||
* `osiris` was upgraded to [`1.8.5`](https://github.com/rabbitmq/osiris/releases) | ||
|
||
|
||
## Source Code Archives | ||
|
||
To obtain source code of the entire distribution, please download the archive named `rabbitmq-server-4.0.5.tar.xz` | ||
instead of the source tarball produced by GitHub. |