Last 7 days
1
Features: 0
Changes: 0
Fixes: 1
Deprecations: 0
Message broker supporting reliable queues, streams, and multiple protocols.
Latest RabbitMQ changelog updates, official release notes, breaking changes, security patches, pricing changes, and developer reactions in one product feed.
Follow this RabbitMQ release-notes page to spot useful features, risky migrations, noisy announcements, and source links before they hit your backlog.
Changes.Watch links back to official changelog and release-note sources so summaries stay easy to verify.
Use channels to follow groups of tools around a stack, workflow, or topic.
Rolling windows show how many product updates landed in the last 7, 30, 90, and 365 days, grouped by existing changelog semantics.
1
1
6
21
Core server bug fixes: duplicate direct‑reply deliveries, quorum queue recovery issues, malformed AMQP 1.0 frames, topic‑exchange wildcard limits, and OAuth proxy header handling.
Core fixes: quorum‑queue metrics/snapshot after upgrades, stricter and faster AMQP 1.0 parsing.
Minimum supported Erlang version upgraded to 27.0; Erlang/OTP 26 is now unsupported, causing nodes on older Erlang to fail to start (breaking change).
Minimum supported Erlang version upgraded to 27.0; nodes on older Erlang will refuse to start.
Core server fixes: tie‑binding bug, correct storage of password‑less users, consumer activity updates, argument validation, default queue type handling, and smarter feature‑flag sync; plus enhancements like per‑node channel limits, paral...
- Fixed core and plugin bugs including user password handling, consumer activity status, default queue type validation, stream frame assembly regression, MQTT listen options, and CORS hardening.
Fixed numerous bugs across core server, quorum, stream, MQTT, and management plugins; introduced a new topic binding projection feature flag to correct empty binding key routing.
Fixed multiple core bugs including virtual host deletion mis‑detections, permission checks for passive declarations, quorum queue dead‑letter routing, stream empty‑property frames, MQTT keepalive errors, management API 500 responses, and...
Khepri replaces Mnesia as the sole metadata store; Mnesia and partition‑handling config keys are removed, requiring config cleanup and affecting plugins
Fixed several core server bugs including quorum queue ordering, correct permission checks for passive declarations, and proper handling of node removal and credential refreshes
Fixed numerous crashes and errors across core server, stream, management, federation, Prometheus, shovel, and STOMP plugins (e.g., recovery crashes, message rejection, heartbeat monitor crashes)
Fixed numerous core server and plugin bugs, e.g., classic queue store exception, quorum queue stat errors, deadlocks in log exchange and stream consumer coordinator, and issues with shovel and AWS peer discovery.
Improves reliability with defensive default queue handling, fixes Windows classic queue recovery, resolves Khepri contention and memory leak issues, and makes topic binding deletions dramatically faster
Fixed classic queue recovery on Windows and made default queue type handling more defensive to prevent PRECONDITION FAILED errors.
Fixed a binding deletion memory leak in Khepri, a metric collection performance regression, and several plugin bugs (OAuth2 UI, Prometheus streaming, MQTT WebSocket subprotocol, IPv6 discovery, UTF‑8 charset for tracing, TLS option mergi...
Added configurable IP address family (IPv4/IPv6) for stream replication via rabbitmq.conf.
Fix core server bugs: correct dead‑letter ordering for quorum queues and ensure feature‑flag state consistency during node boot.
Fix OOM crash when enabling khepri db feature flag with Log Exchange;
Default AMQP 1.0 durable field now defaults to false, requiring clients to set it explicitly – a breaking change for existing producers.
Fixed rare message store exception causing loss of messages in classic queues and corrected quorum queue republishing after network partitions.
Core server fixes: improved password handling, stricter authentication backend checks, added cluster‑wide exchange limit, option to disable local‑random exchange, and new RABBITMQ_MAX_OPEN_FILES env var.
Fixed core server bugs such as a quorum queue file descriptor leak, IEEE‑754 serialization errors in AMQP 1.0, metric emission issues for pre‑3.8 queues, and a classic queue deletion exception.
Fixed file‑handle leaks in quorum and stream queues and improved stream coordinator resilience and consumer cleanup.
Default queue type is now stored in vhost metadata to eliminate definition export inconsistencies.
Offloaded quorum‑queue log reads to channels, boosting consumer throughput and CPU utilization; added AMQP 1.0 filter expression support and rabbitmqadmin v2 with richer CLI operations.
Added optional authentication for the Management HTTP API reference page, enhancing security
Requires Erlang 26+ (up to 27.3) and shifts community support to contributors/commercial license holders after June 1 2024.
Fixed core broker bugs: classic queue segment cleanup for >4 MB messages and startup failures with Khepri metadata containing exclusive queues.
Requires Erlang 26 (up to 27.2.x) and limits community support to contributors or commercial license holders.
Reintroduced transient flow control between classic queue replicas and AMQP/MQTT channels that was unintentionally removed in 4.0.0.
Requires Erlang 26+; nodes on older Erlang versions will fail to start (breaking change).
Maintenance release requiring Erlang 26 (up to 26.2.x) and refusing to start on older Erlang versions; adds initial support for Erlang/OTP 27.1.2.
Fixed generic binary packages that were built with the wrong version (4.0.0+2 instead of 4.0.1).
Khepri storage engine graduates from experimental to fully supported; AMQP 1.0 becomes a core protocol with >2× throughput and new topology management.
Upgrade mandates Erlang 26; nodes will not start on older Erlang releases, making it a breaking change for legacy setups.
Quorum queue startup validation softened from error to warning, fixing upgrade issues.
Skip this version; upgrade directly to 3.13.6 or later and ensure you run Erlang 26 (nodes won’t start on older Erlang releases).
Core broker bug fixes including upgrade exceptions, default queue type handling, deadlock prevention, and lost replies in mixed‑version clusters.
Skip this 3.13.3 release and upgrade directly to 3.13.6+; it now requires Erlang 26 and will refuse to start on older Erlang versions (breaking compatibility).
Updated Erlang compatibility (requires Erlang 25, supports up to 26.2.x) and added global default queue‑type configuration plus a per‑node channel‑max limit.
Requires Erlang 26 – nodes on older Erlang versions will fail to start (breaking change).
Requires Erlang 26; nodes on older Erlang versions will fail to start, making it a breaking upgrade change.
Introduces Khepri as a Raft‑based alternative schema store, adds MQTT v5 support, consumer‑side stream filtering, and a new AMQP 1.0‑based message container format
Updated Erlang compatibility: requires Erlang 25 and supports up to 26.2.x; nodes on older Erlang won’t start
RabbitMQ 3.12.12 is a maintenance release requiring Erlang 25 (supports up to 26.2.x) and ending community support on June 1 2024.
Fixed numerous core broker and plugin bugs (e.g., quorum queue exceptions, MQTT reconnection issues, management API errors, Prometheus label escaping) and improved cluster‑status and HTTP API latency.
Reverted the DELETE /api/queues change that allowed removal of exclusive queues, fixing unexpected side effects.
Fixed a rare exception that could halt TCP socket writes on client connections
Requires Erlang 25+; nodes on older Erlang will fail to start, with upgrade guidance from 3.12.0 notes.
Fix incorrect permission.deleted event emission when a topic permission is deleted
Fixed core broker permission event typo and shovel plugin upgrade issue, plus minor MQTT warning suppression.
Maintenance release 3.12.8 requires Erlang 25+ and fails to start on older Erlang versions.
Requires Erlang 25 (nodes on older Erlang won’t start) and brings performance/TLS upgrades, especially on ARM64.
Updated core server: fixed TLS v1.3 stream replication, added handling for segment file corruption, corrected queue pattern parsing and reduced noisy inter‑node logs.
Fixed TLSv1.3 stream replication connections and added handling for segment file corruption after unclean shutdowns.
Fixed a regression where 3.12.5 shipped an outdated seshat version, restoring compatibility with the stream subsystem.
Updated Erlang compatibility: requires Erlang 25, adds forward‑compatibility with Erlang 26.x/27.0 and will not start on older releases.
Fix high consumer churn on quorum queues that could cause message loss
Adds option to disable quorum queue replica management operations over the HTTP API, allowing tighter access control.
Fixed consumer churn on quorum queues that could cause message loss and resolved stuck federation links with quorum queues.
Fixed core server bugs including rolling upgrade diagnostics, Windows handle counting fallback, and node maintenance state replication; CLI warnings now respect JSON formatter
Fixed core server bugs affecting rolling upgrades diagnostics, Windows handle counting, node maintenance state replication, and CLI warning output.
Fixed classic queue declaration exception and X.509 client authentication issue in the Stream plugin
Requires Erlang 25; nodes on older Erlang versions will fail to start (breaking change).
Core server bug fixes (queue recovery, file‑handle cache safety, quorum queue dead‑lettering leak) and new CLI commands to deactivate/activate free‑disk‑space monitoring.
Upgrade to Erlang 25 baseline, improving ARM64 performance and adding TLS 1.3 support; older Erlang versions will not start.
Requires Erlang 25 (nodes on older Erlang will not start) – a breaking compatibility change.
Requires Erlang 25 (nodes on older Erlang won't start) and adds performance improvements on ARM64 and TLS 1.3 support.
Maintenance release 3.10.24 requires Erlang 24.3.4.8+ (nodes fail to start on older Erlang versions).
Upgrade requires all 3.11.x feature flags enabled and Erlang 25+ (Erlang 26 compatibility added), otherwise nodes will refuse to start.
Switches baseline to Erlang 25, improving performance, adding TLS 1.3 support and preventing node start on older Erlang versions.
Updated Erlang requirement to ≥24.3.4.8; nodes will fail to start on older Erlang releases (breaking compatibility change).
Requires Erlang 25+; nodes on older Erlang versions will refuse to start (breaking change).
Updated Erlang requirement to 24.3.4.8+ and recommended 25.3 for improved performance; older Erlang releases will prevent node startup.
Updated baseline to Erlang 25 (nodes won’t start on older releases) with performance gains and TLS 1.3 support
Requires Erlang 24.3.4.8+ (nodes won’t start on older Erlang versions)
Added limits for max virtual hosts and number of shovels/federation links per node via configuration; introduced `rabbitmqctl update vhost` CLI to modify vhost metadata.
Fixed regression from 3.11.12 where client connections crashed when TCP/TLS listeners were bound to a specific interface
Upgrade baseline to Erlang 25; nodes on older Erlang versions will fail to start (breaking change).
Fixes core server boot‑time definition import, dead‑lettering resiliency, CLI streams help lookup, Management HTTP API 405 response, and etcd peer discovery TTL handling.
Upgrade baseline to Erlang 25 (required, improves performance and adds TLS 1.3 support)
Requires Erlang 24.3+; nodes on older Erlang will fail to start (breaking change)
Baseline upgraded to Erlang 25; nodes on older Erlang will not start (breaking change with performance gains).
Upgrade requires Erlang 24.3.4.8+ (nodes fail to start on older Erlang) and recommends Erlang 25.2 for performance improvements
Requires Erlang 25, bringing performance gains on ARM64 and TLS 1.3 support.
Added rabbitmqctl "set‑permissions‑globally" command to apply user permissions across all vhosts
Fixes Admin tab rendering failure in the Management UI introduced in 3.10.16.
Improved stream throughput for very small messages and added rabbitmqctl hash‑password command plus a diagnostics flag to target a specific IP address.
Added `rabbitmqctl hash-password` CLI command and a new `--address` flag for diagnostics port checks.
Core server now includes extra log details when a heartbeat cannot be sent due to TCP timeout.
Require Erlang 25 – nodes on older Erlang versions will fail to start, adding performance and TLS 1.3 benefits
Requires Erlang 24.3 or later; older Erlang versions are unsupported and nodes will fail to start.
- Requires Erlang 25; older Erlang versions will not start (breaking compatibility).
Bumped Erlang baseline to 25; nodes on older Erlang versions will fail to start (breaking compatibility).
Requires Erlang 24.2+ (nodes fail on older versions) and recommends Erlang 25 for performance
Requires Erlang 24.2+; nodes will fail to start on older Erlang versions (breaking change).
Requires Erlang 25; nodes on older Erlang won’t start (breaking change) and performance improves on ARM64 and TLS 1.3 support
Requires Erlang 24.2+ (Erlang 25 recommended); nodes on older Erlang versions will fail to start (breaking compatibility).
Requires Erlang 24.2 or later, dropping support for Erlang 23; nodes on older releases will fail to start.
Raised the minimum Erlang version to 25, causing older Erlang releases to fail to start but improving performance and TLS 1.3 support.
- Requires Erlang 24.2+; nodes will not start on older Erlang versions (breaking change).
Requires Erlang 24.2 or later; nodes on older Erlang versions will fail to start (breaking change).
Requires Erlang 25; nodes on older Erlang will fail to start (new baseline with performance gains)
Reverts an unsafe inter-node communication optimization, fixing classic mirrored queue ordering and credit distribution bugs.
Requires Erlang 24.2+; nodes on older Erlang versions will fail to start (breaking change).
Requires Erlang 25 as a minimum version; nodes on older Erlang will fail to start (breaking change).
Upgrade requires Erlang 24.2+; older Erlang versions will not start (breaking change).
Introduces Streams enhancements: single‑active consumer and partitioned “super streams”, plus OAuth 2 authentication support.
- Requires Erlang 24.2+ (dropping Erlang 23 support); nodes on older Erlang will refuse to start.
Requires Erlang 24.2+ (Erlang 23 dropped); nodes on older Erlang fail to start (breaking change).
Fixed a crash in classic queues using CQv2 when lazy mode is enabled and improved stream coordinator memory handling for many client connections.
Nodes now retry DNS resolution multiple times during boot, improving peer discovery in environments with delayed DNS such as Kubernetes CoreDNS.
Stream handling improvements: more CPU‑efficient metric collection, optional CRC32 checksum disable for quorum queues (up to 15% throughput boost) and max segment size capped at 3 GiB
Optimizations and new logging: skip GUID generation for quorum/stream queues, add AMQP 1.0 lifecycle events, reduce stream logging verbosity, and standardize microsecond timestamps.
Recommended upgrade to RabbitMQ 3.8.35, a maintenance release that requires Erlang 23.2 and supports Erlang 24.
Fixed quorum queue dead-lettering exception under certain conditions (bug #4947).
Maintenance release 3.9.20 updates Erlang requirements (minimum 23.2, supports 24; Debian package now lists support for Erlang 25.0).
Recommended upgrade to RabbitMQ 3.8.34, a maintenance release.
• Minor quorum queue optimization improves performance.
Minor quorum queue optimization improves performance.
Recommended upgrade to RabbitMQ 3.8.33, a maintenance release requiring Erlang 23.2 (supports Erlang 24).
Up to 40‑50% throughput boost for AMQP 0‑9‑1 clients consuming from streams.
Up to 50% throughput boost for AMQP 0‑9‑1 stream consumers and reduced memory usage for quorum‑queue consumer acknowledgements.
Added fallback secret configuration for Shovel and Federation, enabling credential rotation during rolling node restarts
Core server: CQv2 no longer preallocates index files, improves Raft memory usage for busy quorum queues, and restores key log‑rotation settings;
Fixed memory‑growth issue in Raft process for busy quorum queues and ensured maintenance‑mode status table is created on node boot
Cleaned up obsolete compiler options
Reduced memory usage and GC pressure for quorum and classic queues; optional CQv2 index/store and up to 100× faster definition import.
Improved forward compatibility for quorum queues and added faster queue/exchange re‑import from definitions on node restarts.
Faster re-import of queues and exchanges from definitions on node restarts, improving performance
Fixes several stream delivery and upgrade issues, including dropped delivery rates and stream state failures after multi‑patch upgrades.
Upgrade to RabbitMQ 3.8.29 (maintenance release) requires Erlang 23.2 and supports Erlang 24
Fixed several stream-related bugs (leader reconnection, consumer cancel on deletion, unavailability errors, mixed-version management) and improved LDAP/OAuth2 plugin handling.
Maintenance release fixing several bugs (hardcoded IP in diagnostics, OAuth scopes handling, LDAP client compatibility)
Fixed disk space monitor to correctly parse non‑ASCII characters in paths
Fix Windows-specific memory leak and improve shutdown logging; tighten authentication handling to prevent credential leaks
Fixed Windows-specific memory leak in Erlang's file:read/1 and improved disk‑space monitoring robustness
Fixed TLS listener logging of sensitive settings and corrected a misplaced UI help tip.
Fixed stream coordinator handling of rapid declaration/deletion cycles and corrected OAuth2 signing key parsing errors
Upgrade to RabbitMQ 3.8.26 is recommended; includes a bug fix for OAuth2 plugin signing keys translation errors.
Upgrade to RabbitMQ 3.8.25: a maintenance release recommended for all users.
Adds a new cluster formation size hint configuration and improves Prometheus metrics rendering efficiency
Fixed false network partition detection and memory diagnostics issues; corrected Prometheus TLS listener storage bug.
Fixed memory leak when publishing with mandatory flag without confirms and resolved diagnostics memory read errors.
Classic queue shutdown timeout increased to up to 10 minutes, reducing queue index rebuilds after restarts
Upgrade to RabbitMQ 3.8.23 is recommended; requires Erlang 23.2 and supports Erlang 24
Fixed TLS information handling in Proxy protocol headers and attached it to connection metrics
Fixed bug where virtual host metadata (description, tags) was not imported from definitions.
Fix: Virtual host metadata (description, tags) now correctly imported from definitions and can be updated via PUT /api/vhosts/{name}.
Added four optional environment variables (RABBITMQ_DEFAULT_USER, _PASS, _VHOST, _ERLANG_COOKIE) to configure defaults, useful for containerized deployments.
Fixed regression where queues with per‑message TTL failed to recover indices after restart
Fix regression from 3.8.17 where queues with per‑message TTL could lose index recovery after restart
CLI tools `rabbitmq upgrade drain` and `revive` now log at warning/info level instead of alert.
Fix node startup failures when hostnames contain non‑ASCII Unicode characters.
Core server bug fixes: resolves exception for global QoS prefetch acknowledgments, improves stream coordinator resilience, and fixes node startup failures with Unicode hostnames.
Adds Streams, a new durable replicated queue type with its own binary protocol for high‑throughput, non‑destructive consumption.
Faster binding recovery on node startup improves cluster start times
Security patch added for CVE‑2021‑32719 (low severity).
Includes a security patch for CVE‑2021‑32718 (low severity).
Reintroduces the rabbitmq_peer_discovery_aws plugin that was unintentionally removed in 3.8.15.
- Includes two security patches addressing CVE‑2021‑22117 and CVE‑2021‑22116.
Restores Erlang 22.3 compatibility for the direct‑reply‑to feature, fixing a crash that occurred on that version
Requires Erlang 22.3/23.x and adds detailed upgrade guidance, especially for older 3.7.x installations.
Fixed core server bugs: safe maintenance‑mode leader transfer, corrected default quorum replica count, reduced idle CPU usage, and prevented early‑boot memory monitor errors.
Adds quorum‑queue enhancements: reject‑publish max‑length overflow strategy, consumer priority, and new CLI commands for peeking and memory reclamation.
Dropped support for Erlang 21.3 – requires Erlang 22 or 23
Dropped support for Erlang 21.3; requires Erlang/OTP 22.0 or later (breaking compatibility change).
Added a new maintenance mode for RabbitMQ nodes with CLI commands (upgrade drain, revive, suspend/resume listeners) to simplify rolling upgrades.
Patched Windows‑specific binary planting vulnerability (CVE‑2020‑5419) improving security.
Security patch fixing Windows binary planting vulnerability (CVE‑2020‑5419) with CVSS 6.7.
Maintenance release with numerous bug fixes and usability improvements across core server, CLI tools, and plugins.
Upgrade to Erlang/OTP 21.3+ (20.3 dropped) and upgrade RabbitMQ before Erlang when moving from pre‑3.7.7 versions.
Core server fixes improve Windows config handling, extend message‑store shutdown timeout, and correct ignored settings like ticktime and log directories.
Removes the 4 GiB limit on Raft log segment files with a new on‑disk format, making downgrades to earlier 3.8.x versions impossible.
Updated to require Erlang/OTP 21.3+ (drops support for 20.3) and adds upgrade order guidance
Removes Erlang/OTP 20.3 support and enforces 21.3+ with forward compatibility to Erlang 23 – a breaking change.
Fixed multiple quorum‑queue bugs (recovery loops, dead‑lettering, backlog handling, and corrupted vhost recovery) and optimized GC scheduling;
Fixed multiple core bugs including autoheal timeout, GC scheduling, corrupted vhost recovery, queue replica election handling, and syslog client startup.
Dropped support for Erlang/OTP 20.3; upgrade to Erlang 21+ before upgrading RabbitMQ
Raft and quorum queue optimizations, including local follower delivery and configurable consumer timeout.
- Drop support for Erlang/OTP 20.3 and require RabbitMQ upgrade before moving to Erlang 21+ to avoid CLI incompatibilities.
Core server and multiple plugins receive bug fixes (logging, LDAP error handling, STOMP config, and warning suppressions).
Fixed core server issues causing rolling cluster upgrade failures and logging errors; improved error handling and reduced quorum queue memory usage.
Fixed numerous bugs across core server, CLI tools, and discovery plugins (Kubernetes, AWS, Consul, etcd), plus Erlang client and tracing plugin.
Fixed multiple race‑condition and exception issues across core server diagnostics, CLI tools, management UI imports, STOMP, event exchange, and management‑exchange plugins.
Introduces Quorum Queues based on Raft for stronger data safety and parallel replication, plus Single Active Consumer and Feature Flags for safer rolling upgrades.
Fixed CVE‑2019‑11281 security issue and added credential obfuscation for Shovel and Federation connections
Backported amqqueue module and feature‑flag subsystem API from 3.8 to improve plugin compatibility (no new runtime flags).
Added configurable default worker pool size, new health check and observability diagnostics commands, and HTTPS proxy support for the Trust Store plugin.
Fixed numerous core server, management, plugin, and CLI bugs (validation errors, race conditions, resource leaks, etc.).
Added delayed start for TCP/TLS listeners, reduced schema lock for bindings, improved CLI help messages, and allowed management.load definitions to reference a directory of definition files.