github rabbitmq/rabbitmq-server v3.11.3
RabbitMQ 3.11.3

latest releases: v4.0.3, v4.0.3-beta.1, v4.0.3-rc.1...
2 years ago

RabbitMQ 3.11.3 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

As of 3.11.0, 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

  • Stream unsubscription leaked metric counters.

    GitHub issue: #6325

  • Stream could become unavailable in certain node or network failure scenarios.

    GitHub issue: #6179

Enhancements

  • It is now possible to pre-configure virtual host limits for groups of virtual hosts.
    This is done using a set of new keys supported by rabbitmq.conf:

    default_limits.vhosts.1.pattern = ^device
    default_limits.vhosts.1.max_connections = 10
    default_limits.vhosts.1.max_queues = 10
    
    default_limits.vhosts.2.pattern = ^system
    default_limits.vhosts.2.max_connections = 100
    default_limits.vhosts.2.max_queues = -1
    
    default_limits.vhosts.3.pattern = .*
    default_limits.vhosts.3.max_connections = 20
    default_limits.vhosts.3.max_queues = 20

    Contributed by @illotum (AWS).

    GitHub issue: #4999

  • Quorum queue replicas no longer try to contact their unreachable peers for metrics.
    Previously this could result in a 30-40s delay for certain HTTP API requests that list queue metrics
    if one or more cluster members were down or stopped.

    GitHub issues: #6282, #6285

CLI Tools

Bug Fixes

  • rabbitmq-diagnostics status now handles server responses where free disk space
    is not yet computed. This is the case with nodes early in the boot process.

    GitHub issue: #6303

  • When a plugin was enabled as a dependency (e.g. rabbitmq_shovel as a dependency of rabbitmq_shovel_management),
    CLI tools previously did not discover commands in such plugins. Only explicitly enabled or pre-configured
    plugins were scanned for commands.

    This behavior was confusing. Now all enabled (explicitly or as a dependency) plugins are scanned.

    Contributed by @SimonUnge (AWS).

    GitHub issue: #6020

  • rabbitmq-diagnostics memory_breakdown now returns results much faster in environments with a large number
    of quorum queues (say, tens or hundreds of thousands).

    GitHub issue: #6390

Stream Plugin

Bug Fixes

  • Addition of a stream member could fail if the node being added was very early in its boot process
    (and doesn't have a certain stream-related components started).

    GitHub issue: #6182

AMQP 1.0 Plugin

Enhancements

  • Support for "modified" disposition outcome used by some client libraries (such as QPid).

    GitHub issue: #6243

Prometheus Plugin

Bug Fixes

  • Abruptly closed client connections resulted in incorrect updates of certain global
    metric counters.

    GitHub issue: #5462

Management Plugin

Bug Fixes

  • Management UI links now include "noopener" and "noreferrer" attributes to protect
    them against reverse tabnabbing.
    Note that since management UI only includes a small number of external links to trusted resources,
    reverse tabnabbing is unlikely to affect most users. However, it can show up in security scanner results
    and become an issue in environments where a modified version of RabbitMQ is offered as a service.

    Contributed by @illotum (AWS).

    GitHub issue: #6211

Shovel Plugin

Bug Fixes

  • Plugin could stop in environments where no static Shovels were defined and a specific
    sequence of events happens at the same time.

    Contributed by @gomoripeti (CloudAMQP).

    GitHub issue: #6286

Enhancements

  • Shovel now handles connection.blocked and connection.unblocked notifications
    from remote destination nodes. This means fewer messages are kept in Shovel buffers when
    a resource alarm goes into affect on the destination node.

    Contributed by @gomoripeti (CloudAMQP).

    GitHub issue: #6224

Windows Installer

Bug Fixes

  • When installation directory was overridden,
    the plugins directory did not respect the updated
    base installation path.

    GitHub issue: rabbitmq/rabbitmq-packaging#29

Dependency Upgrades

Source Code Archives

To obtain source code of the entire distribution, please download the archive named rabbitmq-server-3.11.3.tar.xz
instead of the source tarball produced by GitHub.

Don't miss a new rabbitmq-server release

NewReleases is sending notifications on new releases.