release-notes/3.6.2.md
RabbitMQ 3.6.2 is a maintenance release that includes a new statistics
collector in the management plugin.
Because this version includes significant changes to the management plugin,
it should not be deployed into clusters with mixed 3.6.x node versions
unless all nodes that have the management plugin enabled run 3.6.2.
Otherwise HTTP API requests will fail with exceptions in some scenarios and parts of
management UI may not be updated.
There are no other known incompatibilities with earlier 3.6.x releases.
Standalone Mac OS X package now requires OpenSSL 1.0.x to be provided by the system, for example, from Homebrew.
socat Package Dependency for Distributions that Use systemdStarting with 3.6.2, RabbitMQ Debian and RPM packages have an optional
dependency on socat. When
installing using dpkg, this dependency won't be automatically installed. To install it manually, use
sudo apt-get install socat
Channel operations that time out no longer produce noisy crash reports in RabbitMQ log files
GitHub issue: rabbitmq-common#63
Channel operation timeout default is bumped to 15 seconds
GitHub issue: rabbitmq-server/issues/667
Windows service will pick up RabbitMQ config file regardless of whether it was present during service installation
GitHub issue: rabbitmq-server#659
Erlang distribution failures for rabbitmqctl and cross-node links will
provide more detail when running on Erlang 19 (scheduled for release in Q3 2016).
GitHub issue: rabbitmq-server#401
rabbitmqctl list_consumers now lists all consumers on a given queue
Previously it would only list one.
Contributed by Alexey Lebedeff (Mirantis).
GitHub issue: rabbitmq-server#701
rabbitmqctl list_queues now correctly outputs rows for unavailable queues
Contributed by Alexey Lebedeff (Mirantis).
GitHub issue: rabbitmq-server#696
rabbitmqctl set_disk_free_limit mem_relative erroneously rejected values greater than 1.0
GitHub issue: rabbitmq-server#717
Messages with an invalid client-provided x-death header value caused queue process termination
GitHub issue: rabbitmq-server#767
Messages with priorities higher than queue max are now assigned max configured priority and no longer cause an unhandled exception that results in queue process restart
GitHub issue: rabbitmq-server#795
Policy-related rabbitmqctl commands could return unformatted messages
GitHub issue: rabbitmq-server#742
RABBITMQ_IO_THREAD_POOL_SIZE is no longer ignored by rabbitmq-server.bat
GitHub issue: rabbitmq-server#705
Deleting a vhost in parallel with updating a policy in it resulted in unhandled exceptions
GitHub issues: rabbitmq-server#755, rabbitmq-server#759, rabbitmq-server#744
Connections now emit stats unconditionally when they are blocked and unblocked by resource alarms. This makes management UI and HTTP API-reported data to be more up-to-date
GitHub issue: rabbitmq-server#679
New (node-local) health check command
rabbitmqctl node_health_check is a new command that performs basic health check of a node
GitHub issue: rabbitmq-server#398
Automatic restart policy enabled for Windows service
GitHub issue: rabbitmq-server#645
Default number of async I/O VM threads is now calculated based on the number of available CPU cores
GitHub issue: rabbitmq-server#151
rabbitmqctl list_queues now supports new flags, --offline and --online, that limit
result to only unavailable or available queues (queue leaders, to be more precise)
Contributed by Alexey Lebedeff (Mirantis).
GitHub issue: rabbitmq-server#688
RabbitMQ will no longer log a warning about disabled kernel polling on Windows
The runtime does not support kernel polling (I/O completion ports) on Windows, so there is nothing the user can do about it.
GitHub issue: rabbitmq-server#695
Queue index is now updated in batches when messages are requeued
GitHub issue: rabbitmq-server#343
Samples (stats) for abnormally terminated connections and channels will now be cleaned up more aggressively
GitHub issue: rabbitmq-management#198
Cluster name could be returned by HTTP API as a non-string value
GitHub issue: rabbitmq-management#143
Improved IE 11 compatibility
GitHub issue: rabbitmq-management#123
Management plugin has a new, better parallelised event collector which is less likely to fall behind.
GitHub issues: rabbitmq-management#41, rabbitmq-management#166, rabbitmq-management#173, rabbitmq-management#185, rabbitmq-management#174
Clients now can provide a human-readable connection name that will be displayed
in the management UI. Currently Java, .NET and Erlang clients support this.
In order to use this feature, set the connection_name key in client properties.
Note that this name doesn't have to be unique and cannot be used as a connection identifier,
for example, in HTTP API requests.
GitHub issue: rabbitmq-server#104
GET /api/nodes/{node}/memory and GET /api/nodes/{node}/memory/relative are new HTTP API
endpoints that return memory usage breakdown in absolute (same as rabbitmqctl status) and
relative terms.
GitHub issue: rabbitmq-management#161
HTTPS related improvements in rabbitmqadmin.
GitHub issues: rabbitmq-management#152, rabbitmq-management#151, rabbitmq-management#149.
Policies now can be listed (read) by the users tagged with management and monitoring
As well as those tagged with policymaker and administrator, of course.
GitHub issue: rabbitmq-management#156
Effective rates mode is now displayed for cluster nodes by default
GitHub issue: rabbitmq-management#177
Resource alarms are handled correctly by MQTT connections
GitHub issues: rabbitmq-mqtt#62
Session [pre-existing] presence is now correctly communicated to clients
GitHub issue: rabbitmq-mqtt#61
Connections now emit stats unconditionally when they are blocked and unblocked by resource alarms. This makes management UI and HTTP API-reported data to be more up-to-date.
GitHub issue: rabbitmq-mqtt#71
More connection details for MQTT connections reported to management UI
GitHub issue: rabbitmq-mqtt#66
Resource alarms are handled correctly by STOMP connections
GitHub issues: rabbitmq-stomp#68, rabbitmq-stomp#67
Connections now emit stats unconditionally when they are blocked and unblocked by resource alarms. This makes management UI and HTTP API-reported data to be more up-to-date.
GitHub issue: rabbitmq-stomp#70
More connection details for STOMP connections reported to management UI
GitHub issue: rabbitmq-stomp#55
More connection details for STOMP-over-WebSockets connections reported to management UI
GitHub issue: rabbitmq-web-stomp#45
The plugin now sends a protocol header (Sec-WebSocket-Protocol) response when
client presents it.
GitHub issue: rabbitmq-web-stomp#53
More connection details for MQTT-over-WebSockets connections reported to management UI
GitHub issue: rabbitmq-web-mqtt#3
Plugin deactivation now correctly stops TCP listener
GitHub issue: rabbitmq-web-mqtt#7
Compatibility with SQL Server 2014 CLR restored
GitHub issue: rabbitmq-dotnet-client#167
Autorecovering connections now respect all provided hostnames when reconnecting.
GitHub issue: rabbitmq-dotnet-client#157
ConnectionFactory#CreateConnection now respects all provided hostnames
when automatic connection recovery is disabled.
GitHub issue: rabbitmq-dotnet-client#176
Certain channel failures resulted in a race condition during process [tree] shutdown.
GitHub issue: rabbitmq-erlang-client#42
LDAP connection pool is now more resilient to TCP connection closure/loss on Erlang/OTP 18.3
GitHub issue: rabbitmq-auth-backend-ldap#41
Non-existent group in tag_queries shouldn't terminate authorisation
GitHub issue: rabbitmq-auth-backend-ldap#15
attribute query should not fail when multiple values are returned
GitHub issue: rabbitmq-auth-backend-ldap#16
Virtual host is now available as a variable in tag_queries
GitHub issue: rabbitmq-auth-backend-ldap#13
Default LDAP connection pool size was increased from 10 to 64
GitHub issue: rabbitmq-auth-backend-ldap#35
The plugin now uses HTTP 1.1 and keep-alive connections for requests.
GitHub issue: rabbitmq-auth-backend-http#20
It is now possible to configure the plugin to use POST requests instead of
GET, so that no sensitive information is logged.
GitHub issue: rabbitmq-auth-backend-http#7
The plugin now supports HTTP client TLS options, so authenticating apps can use HTTPS
GitHub issue: rabbitmq-auth-backend-http#29
Vhost access requests now include client IP address
GitHub issue: rabbitmq-auth-backend-http#33
Contributed by Abdulrazak Alkl.
Policy events now include a vhost field
GitHub issue: rabbitmq-event-exchange#17
Binding events now include a vhost field
GitHub issue: rabbitmq-event-exchange#9
Millesecond resolution timestamp of events is now back as a message header
GitHub issue: rabbitmq-event-exchange#12
user.authentication.success no longer has the vhost field
since vhost is only available at a later point. connection.created
events should be used to track successful connections if vhost
information is desired.
GitHub issue: rabbitmq-event-exchange#13
To upgrade a non-clustered RabbitMQ simply install the new version. All configuration and persistent message data are retained. When upgrading using definitions export/import from versions earlier than 3.6.1, see http://rabbitmq.com/passwords.html.
To upgrade a RabbitMQ cluster, follow the instructions in RabbitMQ documentation. All nodes that have RabbitMQ management plugin enabled must be upgraded in lock step.
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.6.2.tar.gz.