release-notes/3.7.8.md
RabbitMQ 3.7.8 a maintenance release. It focuses on bug fixes and
further improves Erlang/OTP 21 compatibility.
This release has no known incompatibilities with earlier 3.7.x releases.
When upgrading to this release and upgrading Erlang to 21.0 at the same time, extra care has to be taken. Since CLI tools from RabbitMQ releases older than 3.7.7 will fail on Erlang 21, RabbitMQ must be upgraded before Erlang.
See 3.7.0 release notes upgrade and compatibility notes if upgrading from an earlier release.
See the Upgrading guide for general documentation on upgrades and RabbitMQ change log for release notes of other releases.
Virtual host (specifically binding) recovery has been optimized.
GitHub issue: rabbitmq/rabbitmq-server#1650
A binding removal optimization was reverted because it could result in custom exchange type state not cleaned up as plugin authors intended.
GitHub issue: rabbitmq/rabbitmq-server#1691
A queue sync operation now can be cancelled when a resource alarm is in effect on the receiving node.
GitHub issue: rabbitmq/rabbitmq-server#1636
Inter-node communication port (a.k.a. distribution port) unintentionally used an excessively large buffer size (1.2 GB instead of 128 MB). Kudos to Chris Friesen for noticing and reporting this.
GitHub issue: rabbitmq/rabbitmq-server#1659
More idempotent binding removal.
When transactions that removed bindings were rolled back and retried, the code
that performed the deletion could fail with a misleading assertion failure, {error, not_found}.
GitHub issue: rabbitmq/rabbitmq-server#1689
A resource alarm triggered during boot could prevent node from starting.
GitHub issue: rabbitmq/rabbitmq-server#1644
Environments with high queue or channel churn could run into an exception in local process group.
GitHub issue: rabbitmq/rabbitmq-server#1699
Priority queues no longer fail with an exception when used together with other rabbit_backing_queue
behaviour implementations.
Contributed by Matteo Cafasso.
GitHub issue: rabbitmq/rabbitmq-server#1669
Syslog configuration parameters could be rejected by config validator.
GitHub issue: rabbitmq/rabbitmq-server#1639
rabbitmq-echopid.bat now loads rabbitmq-env.bat correctly.
GitHub issue: rabbitmq/rabbitmq-server#1642
Improved config file validation and loading. For example, advanced.config now can be used
without the main rabbitmq.conf config file.
GitHub issue: rabbitmq/rabbitmq-server#1671
On Erlang/OTP 21 Syslog server now can be configured using a hostname (not just an IP address).
GitHub issue: rabbitmq/rabbitmq-server#1658
rabbitmqctl rename_cluster_node documentation improvements.
GitHub issue: rabbitmq/rabbitmq-server#1641
Policies were unintentionally excluded from rabbitmqctl report output.
Contributed by Ayanda Dube.
GitHub issue: rabbitmq/rabbitmq-cli#256
Global parameters were unintentionally excluded from rabbitmqctl report output.
GitHub issue: rabbitmq/rabbitmq-cli#258
Virtual host imported from definitions or created via HTTP API will explicitly await for the vhost to initialise
on all cluster nodes. This change was previously scheduled for 3.7.6 but was only partially applied (didn't have any effect on HTTP API clients).
GitHub issues: rabbitmq/rabbitmq-management#575, rabbitmq/rabbitmq-management#591
HTTP API connection endpoints returned a duplicate key, node.
GitHub issue: rabbitmq/rabbitmq-management#601
Response compression wasn't enabled by default for compatible clients.
Failed login error message now clears automatically after successful login.
GitHub issue: rabbitmq/rabbitmq-management#609
Cowboy listener settings now can be configured using new style config file.
GitHub issue: rabbitmq/rabbitmq-management#596
Cowboy timeouts now can be configured.
GitHub issues: rabbitmq/rabbitmq-management#594
rabbitmqadmin now supports a new argument, --request-timeout.
GitHub issue: rabbitmq/rabbitmq-management#593
Switching sections will now scroll to the top of the newly rendered page.
GitHub issue: rabbitmq/rabbitmq-management#590
GitHub issue: rabbitmq/rabbitmq-consistent-hash-exchange#37
Nodes experiencing very high connection churn could run out of Erlang processes.
GitHub issues: rabbitmq/rabbitmq-stomp#125, rabbitmq/rabbitmq-server#1640
WebSocket endpoint path is now configurable.
GitHub issue: rabbitmq/rabbitmq-web-stomp#86
Session presence flag was always set to true regardless of the state of client connection session.
GitHub issue: rabbitmq/rabbitmq-mqtt#163
WebSocket endpoint path is now configurable.
Contributed by Thomas Sauzeau.
GitHub issue: rabbitmq/rabbitmq-web-mqtt#30
The plugin could try to try to forward messages consumed from the source before receiving credit from the AMQP 1.0 destination.
GitHub issue: rabbitmq/rabbitmq-shovel#44
sasl=plain is now added to connection URIs if no other mechanism is specified explicitly
by the user.
GitHub issue: rabbitmq/rabbitmq-amqp1.0-client#10
TLS version for AMQP 1.0 endpoints now can be configured via a connection URI query parameter.
GitHub issue: rabbitmq/rabbitmq-amqp1.0-client#19
Specifying a port without a hostname in connection URI is now considered to be an unsupported combination and will throw an error.
GitHub issue: rabbitmq/rabbitmq-erlang-client#107
Improved OTP release handling compatibility.
Contributed by Ayanda Dube.
GitHub issue: rabbitmq/rabbitmq-federation#78
Link initialization optimizations.
Contributed by Ayanda Dube.
GitHub issues: rabbitmq/rabbitmq-federation#79, rabbitmq/rabbitmq-federation#80
Specifying a port without a hostname in connection URI is now considered to be an unsupported combination and will throw an error.
GitHub issue: rabbitmq/rabbitmq-erlang-client#107
Node name is now correctly extracted from the keys returned by etcd even when key prefix includes slashes.
GitHub issue: rabbitmq/rabbitmq-peer-discovery-etcd#14
Package installation scripts will make sure that the /etc/rabbitmq directory is readable.
GitHub issue: rabbitmq/rabbitmq-server-release#72
Package installation scripts will make sure that the /etc/rabbitmq directory is readable.
GitHub issue: rabbitmq/rabbitmq-server-release#72
If rabbitmq-plugins is invoked before first server start, Erlang cookie permissions will
be correctly set to those of the RabbitMQ user and group (currently rabbitmq).
GitHub issue: rabbitmq/rabbitmq-server-release#85
amq.rabbitmq.event exchange is now deleted when plugin is disabled.
GitHub issue: rabbitmq/rabbitmq-event-exchange#33
rabbitmq_event_exchange.vhost = audit
GitHub issue: rabbitmq/rabbitmq-event-exchange#31
It is now possible to set up a tracer on any cluster node via management UI and HTTP API.
GitHub issue: rabbitmq/rabbitmq-tracing#24
Tracer connection credentials now can be specified via the management UI and HTTP API.
GitHub issue: rabbitmq/rabbitmq-tracing#25
sasl=plain is now added to connection URIs if no other mechanism is specified explicitly
by the user.
GitHub issue: rabbitmq/rabbitmq-amqp1.0-client#10
hostname connection parameter will now be set to the value of the address parameter for improved
compatibility with AMQP 1.0 implementations (e.g. Azure ServiceBus) that expect it to be set.
GitHub issue: rabbitmq/rabbitmq-amqp1.0-client#1
TLS version now can be configured via a connection URI query parameter.
GitHub issue: rabbitmq/rabbitmq-amqp1.0-client#19
Specifying a port without a hostname in connection URI is now considered to be an unsupported combination and will throw an error.
GitHub issue: rabbitmq/rabbitmq-erlang-client#107
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-3.7.8.tar.gz.