Releases: rabbitmq/rabbitmq-server
RabbitMQ 3.9.11
RabbitMQ 3.9.11 is a maintenance release in the 3.9.x release series.
Please refer to the Upgrading to 3.9 section from v3.9.0 release notes if upgrading from a version prior to 3.9.0.
This release requires at least Erlang 23.2, and supports Erlang 24. RabbitMQ and Erlang/OTP Compatibility Matrix has more details on Erlang version requirements for RabbitMQ.
Changes Worth Mentioning
Release notes are kept under rabbitmq-server/release-notes.
Contributors are encouraged to update them together with their changes. This helps with release automation and a more consistent release schedule.
Core Server
Bug Fixes
-
When a TLS-enabled listener failed to stop, it logged all of its settings
which could contain sensitive values.GitHub issue: #3803
Enhancements
-
Quorum queues now store commands for enqueued messages in a more compact format
on disk (some derivative data has been dropped).GitHub issue: #3804
-
queue.declare-okresponse to AMQP 0-9-1 clients operating on a stream could return a ready-for-delivery
message count value that was out of sync with the stream leader replica.GitHub issue: #3814
-
Classic queues now deliver more efficiently on channels that had global QoS changed
during consumer operation.Contributed by @tomyouyou.
GitHub issue: #3805
Prometheus Plugin
Enhancements
-
New optional metrics provided by the
GET /metrics/detailedendpoint. These metrics are cluster-wide,
and therefore must not be aggregated.GitHub issue: #3779
Management Plugin
Bug Fixes
-
A help tip on the policies page was misplaced.
Contributed by @johanrhodin
GitHub issue: #3825
Management Agent Plugin
Enhancements
-
Disabling the plugin will stop metric collection performed periodically by
queues, streams, connections, et cetera.Contributed by @tomyouyou.
GitHub issue: #3800
Dependency Upgrades
None in this release.
Source Code Archives
To obtain source code of the entire distribution, please download the archive named rabbitmq-server-3.9.11.tar.xz
instead of the source tarball produced by GitHub.
RabbitMQ 3.9.10
RabbitMQ 3.9.10 is a maintenance release in the 3.9.x release series.
Please refer to the Upgrading to 3.9 section from v3.9.0 release notes if upgrading from a version prior to 3.9.0.
This release requires at least Erlang 23.2, and supports Erlang 24. RabbitMQ and Erlang/OTP Compatibility Matrix has more details on Erlang version requirements for RabbitMQ.
Changes Worth Mentioning
Release notes are kept under rabbitmq-server/release-notes.
Contributors are encouraged to update them together with their changes. This helps with release automation and a more consistent release schedule.
Core Server
Bug Fixes
-
Make stream coordinator more defensive to rapid declaration and deletion cycles
GitHub issue: #33731631
Enhancements
-
Several inter-node communication listener settings are now exposed to
rabbitmq.conf:# this port range is used by default distribution.listener.port_range.min = 25675 distribution.listener.port_range.max = 25675 # instead of listening on all interfaces distribution.listener.interface = 192.168.0.1
GitHub issue: #3739
OAuth 2 Plugin
Bug Fixes
-
Signing keys specified in
rabbitmq.confwere not translated correctly,
resulting in exceptions during permission checks.GitHub issue: #3759
Dependency Upgrades
- Ra was upgraded to
2.0.3
Source Code Archives
To obtain source code of the entire distribution, please download the archive named rabbitmq-server-3.9.10.tar.xz
instead of the source tarball produced by GitHub.
RabbitMQ 3.8.26
RabbitMQ 3.8.26
RabbitMQ 3.8.26 is a maintenance release.
All users are recommended to upgrade to this release.
Obtaining Packages
RabbitMQ releases are distributed via GitHub, Cloudsmith,
and PackageCloud.
Erlang/OTP Compatibility Notes
This release requires Erlang 23.2 and supports Erlang 24.
Provisioning Latest Erlang Releases explains
what package repositories and tools can be used to provision modern Erlang versions.
Upgrade and Compatibility Notes
See the Upgrading guide for general documentation on upgrades and
RabbitMQ change log for release notes of other releases.
If upgrading from a3.7.x release, see 3.8.0 release notes
upgrade and compatibility notes first.
If upgrading from a 3.6.x or older release series, first upgrade
to 3.7.27 and then to this version.
Getting Help
Any questions about this release, upgrades or RabbitMQ in general are welcome on the RabbitMQ mailing list
and RabbitMQ community Slack.
Changes Worth Mentioning
Release notes are kept under rabbitmq-server/release-notes.
Contributors are encouraged to update them together with their changes. This helps with release automation and more
consistent release schedule.
OAuth 2 Plugin
Bug Fixes
-
Signing keys specified in
rabbitmq.confwere not translated correctly,
resulting in exceptions during permission checks.GitHub issue: #3759
Dependency Upgrades
None in this release.
Source Code Archives
To obtain source code of the entire distribution, please download the archive named rabbitmq-server-3.8.26.tar.xz
instead of the source tarball produced by GitHub.
RabbitMQ 3.8.25
RabbitMQ 3.8.25
RabbitMQ 3.8.25 is a maintenance release.
All users are recommended to upgrade to this release.
Obtaining Packages
RabbitMQ releases are distributed via GitHub, Cloudsmith,
and PackageCloud.
Erlang/OTP Compatibility Notes
This release requires Erlang 23.2 and supports Erlang 24.
Provisioning Latest Erlang Releases explains
what package repositories and tools can be used to provision modern Erlang versions.
Upgrade and Compatibility Notes
See the Upgrading guide for general documentation on upgrades and
RabbitMQ change log for release notes of other releases.
If upgrading from a3.7.x release, see 3.8.0 release notes
upgrade and compatibility notes first.
If upgrading from a 3.6.x or older release series, first upgrade
to 3.7.27 and then to this version.
Getting Help
Any questions about this release, upgrades or RabbitMQ in general are welcome on the RabbitMQ mailing list
and RabbitMQ community Slack.
Changes Worth Mentioning
Release notes are kept under rabbitmq-server/release-notes.
Contributors are encouraged to update them together with their changes. This helps with release automation and more
consistent release schedule.
Prometheus Plugin
Enhancements
-
New Prometheus metrics for alarms:
rabbitmq_alarms_file_descriptor_limit1|0rabbitmq_alarms_free_disk_space_watermark1|0rabbitmq_alarms_memory_used_watermark1|0
While some of the alarms have cluster-wide effect, these metrics are node-local.
GitHub issue: #2653
Dependency Upgrades
None in this release.
Source Code Archives
To obtain source code of the entire distribution, please download the archive named rabbitmq-server-3.8.25.tar.xz
instead of the source tarball produced by GitHub.
RabbitMQ 3.9.9
RabbitMQ 3.9.9 is a maintenance release in the 3.9.x release series.
Please refer to the Upgrading to 3.9 section from v3.9.0 release notes if upgrading from a version prior to 3.9.0.
This release requires at least Erlang 23.2, and supports the latest Erlang 24 version, 24.1.2 at the time of release. RabbitMQ and Erlang/OTP Compatibility Matrix has more details on Erlang version requirements for RabbitMQ.
Changes Worth Mentioning
Release notes are kept under rabbitmq-server/release-notes.
Contributors are encouraged to update them together with their changes. This helps with release automation and a more consistent release schedule.
Core Server
Bug Fixes
-
Fixed an issue where node monitor could produce a false network partition when
one of the cluster members was restartedGitHub issue: #3631
-
Message store resiliency improvements
GitHub issue: #3615
-
Reduced log noise in certain scenarios where a new queue leader is elected
GitHub issue: #3628
-
Queue leader rebalancing now logs less
GitHub issue: #3643
Enhancements
-
cluster_formation.target_cluster_size_hintis a new configuration setting that can be used to specify expected initial cluster size.
This can be used by features, plugins or tools that expect a certain minimum number of clusters nodes
to join during initial cluster formationGitHub issue: #3635
Prometheus Plugin
Enhancements
-
Metric rendering efficiency improvements (mostly latency)
GitHub issue: #3587
Bug Fixes
-
TLS-enabled Prometheus endpoint listener port was not correctly stored internally
GitHub issue: #2975
Management Plugin
Bug Fixes
-
Persistent message count is now displayed correctly on individual queue pages
GitHub issue: #3598
-
Restore compatibility with IE 11
GitHub issue: #3689
Consistent Hashing Exchange Plugin
Bug Fixes
-
Corrected deletion of duplicate bindings between an exchange and a queue
Contributed by @FalconerTC
GitHub issue: #3594
Dependency Upgrades
-
Ra was upgraded to
2.0.2 -
Osiris was upgraded to
1.2.3
Source Code Archives
To obtain source code of the entire distribution, please download the archive named rabbitmq-server-3.9.9.tar.xz
instead of the source tarball produced by GitHub.
RabbitMQ 3.8.24
RabbitMQ 3.8.24
RabbitMQ 3.8.24 is a maintenance release.
All users are recommended to upgrade to this release.
Obtaining Packages
RabbitMQ releases are distributed via GitHub, Cloudsmith,
and PackageCloud.
Erlang/OTP Compatibility Notes
This release requires Erlang 23.2 and supports Erlang 24.
Provisioning Latest Erlang Releases explains
what package repositories and tools can be used to provision modern Erlang versions.
Upgrade and Compatibility Notes
See the Upgrading guide for general documentation on upgrades and
RabbitMQ change log for release notes of other releases.
If upgrading from a3.7.x release, see 3.8.0 release notes
upgrade and compatibility notes first.
If upgrading from a 3.6.x or older release series, first upgrade
to 3.7.27 and then to this version.
Getting Help
Any questions about this release, upgrades or RabbitMQ in general are welcome on the RabbitMQ mailing list
and RabbitMQ community Slack.
Changes Worth Mentioning
Release notes are kept under rabbitmq-server/release-notes.
Contributors are encouraged to update them together with their changes. This helps with release automation and more
consistent release schedule.
Core Server
Bug Fixes
-
Fixed an issue where node monitor could produce a false network partition when
one of the cluster members was restartedGitHub issue: #3631
-
rabbitmq-diagnostics memory_breakdownfailed to read memory of connection
reader, writer and channel processes.GitHub issue: #3570
-
Queue leader rebalancing now logs less
GitHub issue: #3643
-
Removed some redundant code
Contributed by @Ayanda-D
GitHub issue: #https://github.com/rabbitmq/rabbitmq-server/pull/3506
-
Info message grammar
Contributed by @tuxiqae
GitHub issue: #3680
Enhancements
-
cluster_formation.target_cluster_size_hintis a new configuration setting that can be used to specify expected initial cluster size.
This can be used by features, plugins or tools that expect a certain minimum number of clusters nodes
to join during initial cluster formationGitHub issue: #3635
Prometheus Plugin
Bug Fixes
-
TLS-enabled Prometheus endpoint listener port was not correctly stored internally
GitHub issue: #2975
Management Plugin
Bug Fixes
-
Persistent message count is now displayed correctly on individual queue pages
GitHub issue: #3598
-
When setting topic permissions, the list of exchanges in the UI now honors the
currently selected virtual host.Contributed by @LuisCusihuaman.
AWS Peer Discovery Plugin
Enhancements
-
The plugin now logs more details for failed AWS API requests.
Contributed by @tvhong-amazon (AWS)
GitHub issue: #3579
Consistent Hashing Exchange Plugin
Bug Fixes
-
Corrected deletion of duplicate bindings between an exchange and a queue
Contributed by @FalconerTC
GitHub issue: #3594
Dependency Upgrades
None in this release.
Source Code Archives
To obtain source code of the entire distribution, please download the archive named rabbitmq-server-3.8.24.tar.xz
instead of the source tarball produced by GitHub.
RabbitMQ 3.9.8
RabbitMQ 3.9.8 is a maintenance release in the 3.9.x release series.
Please refer to the Upgrading to 3.9 section from v3.9.0 release notes if upgrading from a version prior to 3.9.0.
This release requires at least Erlang 23.2, and supports the latest Erlang 24 version, 24.1.2 at the time of release. RabbitMQ and Erlang/OTP Compatibility Matrix has more details on Erlang version requirements for RabbitMQ.
Changes Worth Mentioning
Release notes are kept under rabbitmq-server/release-notes.
Contributors are encouraged to update them together with their changes. This helps with release automation and a more consistent release schedule.
Core Server
Bug Fixes
-
When the mandatory flag was used when publishing to classic queues,
but publisher confirms were not, channels memory usage would grow indefinitely.GitHub issue: #3560
-
rabbitmq-diagnostics memory_breakdownfailed to read memory of connection
reader, writer and channel processes.GitHub issue: #3570
-
In some environments, Stream replicas advertised IP addresses that could not be reached by cluster peers
(eg. IP addresses behind a NAT in a Docker deployment). RabbitMQ node hostnames are now advertised as well
so that other peers can resolve them to get an externally visible IP address.GitHub issue: rabbitmq/osiris#53
Prometheus Plugin
Enhancements
-
More data is exposed via the
GET /metrics/detailedendpoint.GitHub issue: #3520
Management Plugin
Bug Fixes
-
When setting topic permissions, the list of exchanges in the UI now honors the
currently selected virtual host.Contributed by @LuisCusihuaman.
GitHub issue: #3545
AWS Peer Discovery Plugin
Enhancements
-
The plugin now logs more details for failed AWS API requests.
Contributed by @tvhong-amazon (AWS)
GitHub issue: #3579
Web STOMP Plugin
Enhancements
Dependency Upgrades
- Osiris was upgraded to
1.2.2
Source Code Archives
To obtain source code of the entire distribution, please download the archive named rabbitmq-server-3.9.8.tar.xz instead of the source tarball produced by GitHub.
RabbitMQ 3.9.7
RabbitMQ 3.9.7 is a maintenance release in the 3.9.x release series.
Please refer to the Upgrading to 3.9 section from v3.9.0 release notes if upgrading from a version prior to 3.9.0.
This release requires at least Erlang 23.2, and supports the latest Erlang 24 version, 24.0.5 at the time of release. RabbitMQ and Erlang/OTP Compatibility Matrix has more details on Erlang version requirements for RabbitMQ.
Changes Worth Mentioning
Release notes are kept under rabbitmq-server/release-notes.
Contributors are encouraged to update them together with their changes. This helps with release automation and a more consistent release schedule.
All Components
-
All bytecode is now compiled using the
+deterministiccompiler flag. This should eliminate the capture of some irrelevant build environment attributes in produced artifacts, improve consistency between builds, and reduce the file level diff between release artifacts.GitHub issue: #3442
Core Server
Enhancements
-
Classic queue shutdown now uses a much higher timeout (up to 10 minutes instead of 30 seconds).
In environments with many queues (especially mirrored queues) and many consumers this means that
the chance of queue indices rebuilding after node restart is now substantially lower.GitHub issue: #3409
Bug Fixes
-
Quorum queues no longer leak memory and disk space when a consumer is repeatedly added and cancelled on an empty queue.
GitHub issue: #3445
Prometheus Plugin
Enhancements
-
More configurability for metrics exposed via the Prometheus endpoint.
GitHub issue: #3421
Shovel Plugin
Bug Fixes
-
Shovel URIs could be logged with credentials in some scenarios.
Dependency Upgrades
- observer_cli has been upgraded from
1.6.2to1.7.1
Source Code Archives
To obtain source code of the entire distribution, please download the archive named rabbitmq-server-3.9.7.tar.xz instead of the source tarball produced by GitHub.
RabbitMQ 3.8.23
RabbitMQ 3.8.23
RabbitMQ 3.8.23 is a maintenance release.
All users are recommended to upgrade to this release.
Obtaining Packages
RabbitMQ releases are distributed via GitHub, Cloudsmith,
and PackageCloud.
Erlang/OTP Compatibility Notes
This release requires Erlang 23.2 and supports Erlang 24.
Provisioning Latest Erlang Releases explains
what package repositories and tools can be used to provision modern Erlang versions.
Upgrade and Compatibility Notes
See the Upgrading guide for general documentation on upgrades and
RabbitMQ change log for release notes of other releases.
If upgrading from a3.7.x release, see 3.8.0 release notes
upgrade and compatibility notes first.
If upgrading from a 3.6.x or older release series, first upgrade
to 3.7.27 and then to this version.
Getting Help
Any questions about this release, upgrades or RabbitMQ in general are welcome on the RabbitMQ mailing list
and RabbitMQ community Slack.
Changes Worth Mentioning
Release notes are kept under rabbitmq-server/release-notes.
Contributors are encouraged to update them together with their changes. This helps with release automation and more
consistent release schedule.
Core Server
Bug Fixes
-
TLS information delivered in Proxy protocol header is now attached to connection metrics as if it was provided by a non-proxying client.
GitHub issue: #3175 contributed by @prefiks, sponsored by CloudAMQP
-
Classic queue shutdown now uses a much higher timeout (up to 10 minutes instead of 30 seconds).
In environments with many queues (especially mirrored queues) and many consumers this means that
the chance of queue indices rebuilding after node restart is now substantially lower.GitHub issue: #3409
-
Quorum queues no longer leak memory and disk space when a consumer is repeatedly added and cancelled on an empty queue.
GitHub issue: #3445
Dependency Upgrades
- observer_cli has been upgraded from
1.6.2to1.7.1
Source Code Archives
To obtain source code of the entire distribution, please download the archive named rabbitmq-server-3.8.23.tar.xz
instead of the source tarball produced by GitHub.
RabbitMQ 3.9.6
RabbitMQ 3.9.6 is a maintenance release in the 3.9.x release series.
Please refer to the Upgrading to 3.9 section from v3.9.0 release notes if upgrading from a version prior to 3.9.0.
This release requires at least Erlang 23.2, and supports the latest Erlang 24 version, 24.0.5 at the time of release. RabbitMQ and Erlang/OTP Compatibility Matrix has more details on Erlang version requirements for RabbitMQ.
Changes Worth Mentioning
Release notes are kept under rabbitmq-server/release-notes.
Contributors are encouraged to update them together with their changes. This helps with release automation and a more consistent release schedule.
Core Server
Bug Fixes
-
TLS information delivered in Proxy protocol header is now attached to connection metrics as if it was provided by a non-proxying client.
GitHub issues: #3175, #3371 contributed by @prefiks, sponsored by CloudAMQP
-
max_message_sizehad a one-off error in the validator.GitHub issue: #3398
-
mirroring_sync_batch_sizewas incorrectly validated as if it represented batch size in bytes.
It represents batch size in number of messages, so the new default hard cap is now 1M (a very high number that's impractical)GitHub issue: #3398
Stream Plugin
Bug Fixes
-
Offset parameters were not stored correctly in some cases.
GitHub issue: #3360, contributed by @korsmakolnikov
-
Partitions list order is now stable.
GitHub issue: #3423
-
When stream clients close connections abruptly, publisher and consumer metrics get cleaned up correctly.
GitHub issue: #3340
Management Plugin
Enhancements
-
Stream publishers are now listed on the individual stream page.
GitHub issue: #3389
-
Counters have been added to the tiles of several sections on detail pages.
GitHub issue: #3422
Dependency Upgrades
- Osiris was upgraded to
1.2.0 - Ranch was upgraded to
2.1.0
Source Code Archives
To obtain source code of the entire distribution, please download the archive named rabbitmq-server-3.9.6.tar.xz instead of the source tarball produced by GitHub.