Project: RabbitMQ (App Definition and Development / Streaming & Messaging)
File: 3.8.1.md

RabbitMQ `3.8.1` is a maintenance release that focuses on bug fixes. This release or later. `22.x` series is recommended. explains what package repositories and tools can be used to provision latest patch versions of Erlang `21.3.x` and `22.x`. When upgrading to this release from `3.7.6` or an older version, extra care has to be taken. Since CLI tools from RabbitMQ releases older than 3.7.7 will fail on Erlang 21 or later, RabbitMQ must be upgraded at the same time as Erlang. Alternatively the node can be upgraded to `3.7.18` first, then Erlang 21.x or 22.x, then to RabbitMQ 3.8.x. See upgrade and compatibility notes first if upgrading from an earlier release. See the for general documentation on upgrades and for release notes of other releases. Any questions about this release, upgrades or RabbitMQ in general are welcome on the . Rolling cluster upgrade could fail if new versions were deployed to all cluster nodes at once instead of a rolling upgrade-then-restart for each node individually. GitHub issue: Avoid pattern expansion when logging connection closure reason. GitHub issue: Improved error handling in a module that continuously registers the node with avoids log noise. GitHub issue: Peak memory usage was reduced by up to 25% on some workloads. GitHub issue: `rabbitmqctl await_startup` failed with an exception when effective timeout was set to `infinity`. GitHub issue: `rabbitmq-diagnostics checkportconnectivity` produced a false positive in an IPv6-only environment. Contributed by Gabriele Santomaggio. GitHub issue: `rabbitmq-diagnostics listunresponsivequeues` failed in environments that had quorum queues. GitHub issue: `rabbitmq-diagnostics status`, `rabbitmq-diagnostics cluster_status`, `rabbitmq-diagnostics listeners` now support `--formatter=erlang` (raw Erlang data structure output) GitHub issue: `rabbitmq-diagnostics consumeeventstream` is a new command that makes it easier to consume a stream of internal commands. This can be useful for troubleshooting and auditing. Previously this was only possible via the plugin. GitHub issue: `rabbitmq-diagnostics checkcertificateexpiration` is a new command that fails when any of the certificates used by target node expire within a specified time window. `rabbitmq-diagnostics certificates` is its diagnostics (informative) counterpart that displays all CA and leaf certificates used by target node. GitHub issue: Prometheus scraping API endpoint was unreasonably strict about the set of content types it accepts from clients, which caused Telegraf Prometheus input requests to fail with an`406 Not Acceptable` response. GitHub issue: Some metrics were omitted in the UI for queues that did not have `x-queue-type` set. GitHub issue: Errors were not propagated back to the client correctly in case of an LDAP server authentication failure. GitHub issue: Requests to Kubernetes API endpoints failed with an `nxdomain` (domain name resolution failure) in an IPv6-only environment. GitHub issue: It is now possible to specify service metadata values: ``` ini clusterformation.consul.svcmeta.key1 = value1 clusterformation.consul.svcmeta.key2 = value2 ``` GitHub issue: Client ID tracking is now more resilient to node failures and decomissioning. GitHub issue: The is now accepted from STOMP clients. GitHub issue: `stomp.hide_server` is now available in the new style configuration format. GitHub issue: The plugin emitted a warning on start. GitHub issue: The plugin emitted a warning on start. GitHub issue: Connection could not be restarted after a heartbeat timeout due to strict pattern matching. Contributed by Giuseppe D'Anna (@larrywax). GitHub issue: On Windows, deleting the file used by an active (running) trace resulted in an `EACCES` exception. GitHub issue: Warning: The source code archive provided by GitHub only contains the source of the broker, not the plugins or the client libraries. Please download the archive named `rabbitmq-server-3.8.1.tar.xz`.