RabbitMQ 3.11.1
is a maintenance release in the 3.11.x
release series.
Please refer to the upgrade section from v3.11.0 release notes
if upgrading from a version prior to 3.11.0.
This release requires Erlang 25.
RabbitMQ and Erlang/OTP Compatibility Matrix has more details on
Erlang version requirements for RabbitMQ.
Minimum Supported Erlang Version
Starting with this release, RabbitMQ requires Erlang 25. Nodes will fail to start on older Erlang releases.
Erlang 25 as our new baseline means much improved performance on ARM64 architectures, profiling with flame graphs
across all architectures, and the most recent TLS 1.3 implementation available to all RabbitMQ 3.11 users.
Changes Worth Mentioning
Release notes can be found on GitHub at rabbitmq-server/release-notes.
Core Server
Bug Fixes
- A rolling upgrade on Kubernetes could hang.
GitHub issue: #6034
- In mixed 3.11/3.10 clusters, channels that performed operations on classic queues could
run into an exception.GitHub issue: #5931
- A quorum queue consumer was cancelled and immediately re-registered while some
deliveries were in flight could result in a channel exception.GitHub issue: #5927
- More strings from external sources are converted to Unicode-aware representation
internally, in log messages, CLI tools output and UI, and so on.GitHub issues: #5551
- During plugin activation on a running node, plugins with dependencies were added to runtime code path
in an order that could break if a plugin had hard transitive dependencies (that must be loaded first).Contributed by @gomoripeti.
GitHub issue: #6019
Enhancements
- Support for paths with non-ASCII (Unicode) characters in paths.
rabbitmq-diagnostics observer
now includes a new tab that provides access to internal classic queue
metrics.GitHub issue: #6074
- More free disk space monitor resilience improvements.
GitHub issue: #5831
Stream Plugin
Bug Fixes
- Replicas of a stream that had a Single Active Consumer on it could run into an exception.
GitHub issue: #5889
- Stream protocol implementation used incorrect keys in
RouteResponse
andPartitionResponse
frames.GitHub issue: #5956
Enhancements
- When a superstream (partitioned stream) is added using CLI tools, its primary replica will now
be placed according to thebalanced
leader placement strategy. Previously it was using “node local”
which resulted in much less even superstream leader replica distribution across cluster nodes.GitHub issue: #5966
AMQP 1.0 Plugin
Bug Fixes
rabbitmqctl list_amqp10_connections
were not listing connections correctly.GitHub issue: #4238
Shovel Management Plugin
Bug Fixes
- Shovel management HTTP API endpoint could run into an exception.
Contributed by @gomoripeti.
GitHub issue: #5892
Dependency Upgrades
cuttlefish
upgraded to3.1.0
Source Code Archives
To obtain source code of the entire distribution, please download the archive named rabbitmq-server-3.11.1.tar.xz
instead of the source tarball produced by GitHub.