RabbitMQ 3.13.1
RabbitMQ 3.13.1
RabbitMQ 3.13.1
is a maintenance release in the 3.13.x
release series.
Starting June 1st, 2024, community support for this series will only be provided to regularly contributing users and those
who hold a valid commercial support license.
Please refer to the upgrade section from the 3.13.0 release notes
if upgrading from a version prior to 3.13.0.
This release requires Erlang 26 and supports Erlang versions up to 26.2.x
.
RabbitMQ and Erlang/OTP Compatibility Matrix has more details on
Erlang version requirements for RabbitMQ.
Minimum Supported Erlang Version
As of 3.13.0, RabbitMQ requires Erlang 26. Nodes will fail to start on older Erlang releases.
Users upgrading from 3.12.x (or older releases) on Erlang 25 to 3.13.x on Erlang 26
(both RabbitMQ and Erlang are upgraded at the same time) must consult
the v3.12.0 release notes and v3.13.0 release notes first.
Changes Worth Mentioning
Release notes can be found on GitHub at rabbitmq-server/release-notes.
Core Broker
Bug Fixes
-
Classic queue v2 message store compaction could fail behind under high enough load,
significantly increasing node's disk space footprint. -
Improved quorum queue safety in mixed version clusters.
GitHub issue: #10664
-
When Khepri was enabled and virtual host recovery failed, subsequent recovery
attempts also failed.GitHub issue: #10742
-
Messages published without any headers set on them did not have a header property
set on them. This change compared to 3.12.x was not intentional. -
Free disk space monitor on Windows ran into an exception if external call
towin32sysinfo.exe
timed out.GitHub issue: #10597
Enhancements
-
channel_max_per_node
is a new per-node limit that allows to put a cap on the number
of AMQP 0-9-1 channels that can be concurrently opened by all clients connected to a node:# rabbitmq.conf channel_max_per_node = 5000
This is a guardrail mean to protect nodes from application-level channel leaks.
Contributed by @illotum (AWS).
GitHub issue: #10754
Stream Plugin
Bug Fixes
-
Avoids a Windows-specific stream log corruption that affected some deployments.
GitHub issue: #10822
-
When a super stream cannot be created because of a duplicate partition name,
a more informative error message is now used.GitHub issue: #10535
CLI Tools
Bug Fixes
-
rabbitmq-plugins list --formatter=json --silent
will no longer emit any warnings
when some of the plugins in the enabled plugins file are missing.Contributed by @Ayanda-D.
GitHub issue: #10870
OAuth 2 Plugin
Bug Fixes
-
Configuring a JWKS URL without specifying a CA certificate resulted
in an exception with Erlang 26's TLS implementation.GitHub issue: #8547
Management Plugin
Bug Fixes
-
Set default
sort
query parameter value for better compatibility with an external
Prometheus scraper. Note that the built-in Prometheus plugin
is the recommended way of monitoring RabbitMQ using Prometheus-compatible tools.GitHub issue: #10610
-
When a tab (Connections, Queues and Streams, etc) is switched, a table configuration pane
from the previously selected tab is now hidden.Contributed by @ackepenek.
GitHub issue: #10799
Enhancements
-
GET /api/queues/{vhost}/{name}
now supportsenable_queue_totals
as well asdisable_stats
.
This combination of query parameters can be used to retrieve message counters while
greatly reducing the number of metrics returned by the endpoints.Contributed by @aaron-seo (AWS).
GitHub issue: #10839
Federation Plugin
Enhancements
-
Exchange federation now can be configured to use a custom queue type for their internal buffers.
To use a quorum queue, set the
queue-type
federation policy key toquorum
. -
rabbitmq_federation_running_link_count
is a new metric provided via Prometheus.GitHub issue: #10345
Dependency Changes
Source Code Archives
To obtain source code of the entire distribution, please download the archive named rabbitmq-server-3.13.1.tar.xz
instead of the source tarball produced by GitHub.