release-notes/3.6.3.md
RabbitMQ 3.6.3 is a maintenance release that includes
bug fixes, packaging and build system enhancements.
As of 3.6.3, RabbitMQ also comes with several additional plugins in the distribution:
rabbitmq_top, which helps identify (Erlang) processes that consume most RAM and CPU resources
rabbitmq_trust_store which manages trusted client x509/TLS certificates
rabbitmq_jms_topic_exchange which, together with RabbitMQ JMS Java client, provides support for the JMS 1.1 API atop RabbitMQ.
Debian package now supports systemd and also drops support for some older distributions.
All artifacts in this release are signed with a new 4096-bit OpenGPG key.
An undocumented runtime metric change in Erlang 19.0 breaks management plugin.
(Newly elected) queue leader process could terminate immediately after promotion
GitHub issue: rabbitmq-server#812
Priority queue mirror could fail to synchronize after restart
GitHub issues: rabbitmq-server#687, rabbitmq-server#802
Shutdown timeouts for worker processes are now much more reasonable. Earlier the timeouts were virtually infinite which could lead to a deadlock during node shutdown.
GitHub issue: rabbitmq-server#541
Purging of a durable queue could result in undelivered publisher confirms. Contributed by Andreas Ländle.
GitHub issue: rabbitmq-server#854
Old incarnations of queue mirrors are now ensured to be stopped before new ones are started
GitHub issue: rabbitmq-server#863
systemd support in Debian and RPM packages
Contributed by Alexey Lebedeff (Mirantis).
GitHub issue: rabbitmq-server#570
Debian repository and release artifacts are now signed with a new 4096-bit OpenGPG key
GitHub issue: rabbitmq-server#718
More resilient worker_pool, particularly important for LDAP plugin users
GitHub issue: rabbitmq-server#834
More efficient file handle management
GitHub issue: rabbitmq-server#828
Test suite ported to Common Test
Plugin developers will be encouraged to port their test suites to Common Test in the future.
GitHub issue: rabbitmq-server#725
Compilation on Erlang/OTP 19.0.
GitHub issue: rabbitmq-server#860
New API endpoint for reporting ETS tables memory consumption (absolute and relative)
GitHub issue: rabbitmq-management#219
Node information page now includes GC and context switching stats
GitHub issue: rabbitmq-management#208
Connection, channel, and queue information pages now include several runtime metrics
GitHub issues: rabbitmq-management#209, rabbitmq-management#210, rabbitmq-management#211
Node metrics now include information about how long it takes to obtain a file handle
GitHub issue: rabbitmq-server#825
Partial HTTPS support in rabbitmqadmin on Python versions older than 2.7.9
GitHub issue: rabbitmq-management#225
A channel statistics-related memory leak fixed.
GitHub issue: rabbitmq-management#214
Stats collectors event queue is now bounded (again)
GitHub issue: rabbitmq-management#221
Stats table name was logged as a tuple
GitHub issue: rabbitmq-management#206
Setting user-provided connection name didn't have an effect.
GitHub issue: rabbitmq-dotnet-client#187
IConnection#CreateModel could throw a NullPointerException due to a race
condition.
GitHub issue: rabbitmq-dotnet-client#185
Connections with automatic recovery enabled ignored ports from the hostname list.
GitHub issues: rabbitmq-dotnet-client#157, rabbitmq-dotnet-client#190
Fixes an underflow in delivery tag handling after connection recovery
Contributed by @harishvadali and @Entroper.
GitHub issue: rabbitmq-dotnet-client#200
New FAKE and Paket-based build tooling: development on OS X and Linux with Mono is now possible again.
GitHub issue: rabbitmq-dotnet-client#169
Nested groups are now supported with a separate query type
GitHub issue: rabbitmq-auth-backend-ldap#3
Query failures (e.g. noSuchObject responses) from LDAP servers are now correctly treated as false in
or and and queries instead of erroring.
GitHub issue: rabbitmq-auth-backend-ldap#48
Invalid/unparseable certificates no longer prevent other certificates from (re)loading
GitHub issue: rabbitmq-trust-store#27
Certificate verification now can validate only leaf certificates. This is more convenient in some cases. It will be one of the opt-in modes in future versions.
GitHub issue: rabbitmq-trust-store#34
The plugin now logs when a certificate is added (loaded) or removed (unloaded)
GitHub issue: rabbitmq-trust-store#28
The plugin now provides a function for listing trust store certificates
via rabbitmqctl eval: rabbitmqctl eval 'io:format(rabbit_trust_store:list()).'
GitHub issue: rabbitmq-trust-store#31
amqp_connection:close/4 is now exported
GitHub issue: rabbitmq-erlang-client#59
The client now compiles on Erlang/OTP 19.0
GitHub issue: rabbitmq-erlang-client#41
Efficiency improvements when publications and delayed delivery happen concurrently.
Contributed by Richard Larocque.
GitHub issues: rabbitmq-delayed-message-exchange#51, rabbitmq-delayed-message-exchange#54