8.5 KiB
RabbitMQ 3.6.3
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.
Breaking Changes
-
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.
Known Issues on Erlang 19.0
An undocumented runtime metric change in Erlang 19.0 breaks management plugin.
Server
Bug Fixes
-
(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
Enhancements
-
systemd
support in Debian and RPM packagesContributed 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 usersGitHub 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
Management Plugin
Enhancements
-
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 than2.7.9
GitHub issue: rabbitmq-management#225
Bug Fixes
-
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
.NET Client
Bug Fixes
-
Setting user-provided connection name didn't have an effect.
GitHub issue: rabbitmq-dotnet-client#187
-
IConnection#CreateModel
could throw aNullPointerException
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
Enhancements
-
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
LDAP Plugin
Enhancements
-
Nested groups are now supported with a separate query type
GitHub issue: rabbitmq-auth-backend-ldap#3
Bug Fixes
-
Query failures (e.g.
noSuchObject
responses) from LDAP servers are now correctly treated asfalse
inor
andand
queries instead of erroring.GitHub issue: rabbitmq-auth-backend-ldap#48
Trust Store Plugin
Bug Fixes
-
Invalid/unparseable certificates no longer prevent other certificates from (re)loading
GitHub issue: rabbitmq-trust-store#27
Enhancements
-
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
Erlang Client
Enhancements
-
amqp_connection:close/4
is now exportedGitHub issue: rabbitmq-erlang-client#59
Bug Fixes
-
The client now compiles on Erlang/OTP 19.0
GitHub issue: rabbitmq-erlang-client#41
Delayed Message Exchange Plugin
Enhacements
-
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