github rabbitmq/rabbitmq-server v3.13.2
RabbitMQ 3.13.2

latest releases: v4.1.0-beta.1, v4.0.3, v4.0.3-beta.1...
6 months ago

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

  • Several Quorum queues WAL and segment file operations are now more resilient to certain filesystem operation failures.

    GitHub issue: #11113

  • Classic queues v2 could run into an exception after a node restart.

    GitHub issue: #11111

  • Peer discovery failed in some IPv6-only environments. This behavior was new in 3.13.x.

    GitHub issue: #10728

  • rabbitmqctl stop_app is now faster, in particular for nodes that are not under significant load.

    GitHub issue: #11075

  • x-death counter was not incremented for messages that expired due to message TTL.
    This behavior was new in 3.13.x.

    GitHub issue: #10709

  • Quorum queue replica removal now more resilient in clusters under close to peak load,
    a condition that can trigger timeouts for certain operations involving multiple nodes.

    GitHub issue: #11065

  • rabbitmq-server (the shell script) now propagetes the exit code from the runtime process.

    Contributed by @giner.

    GitHub issue: #10819

Enhancements

  • Definition import did not handle a scenario where some virtual hosts did not have
    the default queue type metadata key set.

    GitHub issue: #10897

  • When a virtual host is deleted, several more internal events are emitted: for example,
    the events related to removal of user permissions and runtime parameters associated
    with the virtual host.

    GitHub issue: #11077

CLI Tools

Bug Fixes

  • rabbitmqctl list_unresponsive_queues now supports the (queue) type column.

    Contributed by @aaron-seo.

    GitHub issue: #11081

MQTT Plugin

Bug Fixes

  • MQTT clients that did not configure a will (message) delay interval could run into
    an exception due to an unnecessary permission check on the will target.

    GitHub issue: #11024

  • Messages published by MQTT clients were missing the timestamp_in_ms (the more precise header).
    This behavior was new in 3.13.x.

    GitHub issue: #10925

  • Messages published using QoS 0 were unintentionally marked as durable internally.

    GitHub issue: #11012

Management Plugin

Bug Fixes

  • GET /api/queues/{vhost}/{name} could return duplicate keys for quorum queues.

    GitHub issue: #10929

  • Several endpoints responded with a 500 instead of a 404 when target virtual host
    was non-existent.

    Partially contributed by @LoisSotoLopez.

    GitHub issue: #10901

OAuth 2 AuthN/AuthZ Plugin

Enhancements

Kubernetes Peer Discovery Plugin

Enhancements

  • More TLS client settings now can be configured:

    cluster_formation.k8s.tls.cacertfile = /path/to/kubernetes/api/ca/certificate.pem
    cluster_formation.k8s.tls.certfile = /path/to/client/tls/certificate.pem
    cluster_formation.k8s.tls.keyfile = /path/to/client/tls/private_key.pem
    
    cluster_formation.k8s.tls.verify = verify_peer
    cluster_formation.k8s.tls.fail_if_no_peer_cert = true
    

    GitHub issue: #10916

JMS Topic Exchange Plugin

Enhancements

  • The plugin now stores its state on multiple nodes.

    GitHub issue: #11091

Shovel Plugin

Bug Fixes

  • Shovel metrics and internal state are now deleted when their shovel is, regardless of what node
    it was hosted on and what node was targeted by the deleting (CLI or HTTP API) operation.

    GitHub issue: #11101

  • rabbitmqctl list_shovels CLI command now will list shovels running on all cluster nodes
    and not just the target node.

    GitHub issue: #11119

Dependency Changes

Source Code Archives

To obtain source code of the entire distribution, please download the archive named rabbitmq-server-3.13.2.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.