1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201
|
## RabbitMQ 3.7.5
RabbitMQ `3.7.5` a maintenance release that primarily includes bug fixes.
### Upgrades and Compatibility
This release includes one **potential incompatibility** with earlier `3.7.x` releases. It will only affect applications that use a lot (at least hundreds) of channels per connection. Previous behavior can be restored via configuration.
See [3.7.0 release notes](https://github.com/rabbitmq/rabbitmq-server/releases/tag/v3.7.0) upgrade and compatibility notes if upgrading from an earlier release.
See the [Upgrading guide](https://www.rabbitmq.com/upgrade.html) for general documentation on upgrades.
See [RabbitMQ change log](https://www.rabbitmq.com/changelog.html) for release notes of other releases.
## Changes
### Core Server
#### Bug Fixes
* Topic authorisation check could fail with an exception.
GitHub issue: [rabbitmq-server#1538](https://github.com/rabbitmq/rabbitmq-server/issues/1538)
* Some runtime parameters and operator policies were rejected during definition import.
GitHub issue: [rabbitmq-management#565](https://github.com/rabbitmq/rabbitmq-management/issues/565), [rabbitmq-federation#73](https://github.com/rabbitmq/rabbitmq-federation/issues/73)
* Queues could run into an exception under memory pressure.
GitHub issue: [rabbitmq-server#1582](https://github.com/rabbitmq/rabbitmq-server/issues/1582)
* During parallel cluster formation nodes could run into an exception when inserting seed data
(default virtual host, user and permissions).
GitHub issue: [rabbitmq-server#1556](https://github.com/rabbitmq/rabbitmq-server/pull/1556)
#### Enhancements
* New `ha-promote-on-failure` queue mirroring setting to augment already existing `ha-promote-on-shutdown`.
GitHub issue: [rabbitmq-server#1578](https://github.com/rabbitmq/rabbitmq-server/pull/1578)
* `queue.delete` operations will now force delete queues that don't have a [promotable
master](https://www.rabbitmq.com/ha.html#unsynchronised-mirrors).
GitHub issue: [rabbitmq-server#1501](https://github.com/rabbitmq/rabbitmq-server/issues/1501)
* Lock contention in internal database is now much lower when a node with a lot of exclusive queues
shuts down or is otherwise considered to be unavailable by peers. This means fewer CPU cycles
spent cleaning up the exclusive queues.
GitHub issue: [rabbitmq-server#1570](https://github.com/rabbitmq/rabbitmq-server/pull/1570)
* Default [max number of channels allowed on a connection](https://www.rabbitmq.com/networking.html#tuning-for-large-number-of-connections-channel-max) (a.k.a. `channel_max`) has been lowered from `65535` to `2047`.
The new default is much safer and will reduce the effect application channel leaks have on node resource consumption. **This is a potentially breaking change**.
Systems where a lot (at least hundreds) of channels *per connection* are used should explicitly override `channel_max` in the [config file](https://www.rabbitmq.com/configure.html) to a higher suitable value, e.g.:
```
channel_max = 4000
```
GitHub issue: [rabbitmq-server#1593](https://github.com/rabbitmq/rabbitmq-server/issues/1593)
* [Ranch](https://github.com/ninenines/ranch) dependency has been updated to `1.5.x` which should prevent rare cases of mass termination of client connections.
### CLI Tools
#### Bug Fixes
* `-t` (`--timeout`) is now only displayed for commands that will actually use it.
GitHub issue: [rabbitmq-cli#236](https://github.com/rabbitmq/rabbitmq-cli/issues/236)
### Management Plugin
#### Bug Fixes
* `GET /api/overview` could fail if SNI for management plugin listener was configured.
GitHub issue: [rabbitmq-management#567](https://github.com/rabbitmq/rabbitmq-management/issues/567)
* `rabbitmqadmin` could run into an exception with certain formatting settings on Python 2.x.
GitHub issue: [rabbitmq-management#568](https://github.com/rabbitmq/rabbitmq-management/issues/568)
* HTTP API stats documentation used incorrect field names.
GitHub issue: [rabbitmq-management#561](https://github.com/rabbitmq/rabbitmq-management/pull/561)
### LDAP Plugin
#### Bug Fixes
* LDAP server-initiated connection closure was not handled gracefully by connection pool.
Kudos to Adam Gardner for [doing all the hard work](https://groups.google.com/forum/#!topic/rabbitmq-users/4Gva3h-yJzM) investigating this issue.
GitHub issues: [rabbitmq-auth-backend-ldap#82](https://github.com/rabbitmq/rabbitmq-auth-backend-ldap/issues/82), [rabbitmq-auth-backend-ldap#90](https://github.com/rabbitmq/rabbitmq-auth-backend-ldap/issues/90)
* `auth_ldap.idle_timeout` now defaults to 300 seconds instead of `infinity`.
GitHub issue: [rabbitmq-auth-backend-ldap#81](https://github.com/rabbitmq/rabbitmq-auth-backend-ldap/issues/81)
* `group_lookup_base` was not configurable via the new style config format.
GitHub issue: [rabbitmq-auth-backend-ldap#85](https://github.com/rabbitmq/rabbitmq-auth-backend-ldap/issues/85)
* `auth_ldap.log` didn't accept `network_unsafe` for severity value.
GitHub issue: [rabbitmq-auth-backend-ldap#86](https://github.com/rabbitmq/rabbitmq-auth-backend-ldap/issues/86)
#### Enhancements
* It is now possible to configure TLS options for LDAP server connections via the [new style config format](https://www.rabbitmq.com/configure.html).
GitHub issue: [rabbitmq-auth-backend-ldap#88](https://github.com/rabbitmq/rabbitmq-auth-backend-ldap/issues/88)
### Federation Plugin
#### Bug Fixes
* Federation upstream sets could run into a type error with exchange federation.
GitHub issue: [rabbitmq-federation#75](https://github.com/rabbitmq/rabbitmq-federation/issues/75)
### Shovel Plugin
#### Bug Fixes
* Valid dynamic Shovel properties can be rejected by validation.
GitHub issue: [rabbitmq-shovel#38](https://github.com/rabbitmq/rabbitmq-shovel/issues/38)
* Shovel names are again included into (application-provided) connection names and can therefore
be seen in the management UI.
GitHub issue: [rabbitmq-shovel#40](https://github.com/rabbitmq/rabbitmq-shovel/issues/40)
### Peer Discovery AWS Plugin
#### Bug Fixes
* China-based AWS regions now use a correct base API URI.
GitHub issue: [rabbitmq-peer-discovery-aws#23](https://github.com/rabbitmq/rabbitmq-peer-discovery-aws/issues/23)
* The plugin could fail to discover all nodes in a returned instance set.
GitHub issue: [rabbitmq-peer-discovery-aws#20](https://github.com/rabbitmq/rabbitmq-peer-discovery-aws/issues/20)
### Peer Discovery Kubernetes Plugin
#### Enhnacements
* The plugin now supports [randomized startup delay](https://www.rabbitmq.com/cluster-formation.html#initial-formation-race-condition) with much lower default values
since RSD is [not really necessary](https://www.rabbitmq.com/cluster-formation.html#peer-discovery-k8s) for stateful set deployments.
GitHub issue: [rabbitmq-peer-discovery-k8s#23](https://github.com/rabbitmq/rabbitmq-peer-discovery-k8s/issues/23)
### AMQP 1.0 Client
#### Bug Fixes
* It wasn't possible to send some messages using QPid JMS client over AMQP 1.0.
GitHub issue: [rabbitmq-amqp1.0#61](https://github.com/rabbitmq/rabbitmq-amqp1.0/issues/61)
### Web MQTT Plugin
#### Bug Fixes
* New style config format was not interpreting IP addresses correctly.
GitHub issue: [rabbitmq-web-mqtt#26](https://github.com/rabbitmq/rabbitmq-web-mqtt/issues/26)
### Web STOMP Plugin
#### Bug Fixes
* It wasn't possible to configure TCP listener(s) in the new style config format.
GitHub issue: [rabbitmq-web-stomp#82](https://github.com/rabbitmq/rabbitmq-web-stomp/issues/82)
## Source code archives
**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.5.tar.gz`.
|