rabbitmq-server/release-notes/3.12.7.md

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

183 lines
6.2 KiB
Markdown
Raw Permalink Normal View History

2023-09-28 03:00:31 +08:00
RabbitMQ `3.12.7` is a maintenance release in the `3.12.x` [release series](https://www.rabbitmq.com/versions.html).
Please refer to the upgrade section from the [3.12.0 release notes](https://github.com/rabbitmq/rabbitmq-server/releases/tag/v3.12.0)
if upgrading from a version prior to 3.12.0.
This release requires Erlang 25 and supports Erlang versions up to `26.1.x`.
[RabbitMQ and Erlang/OTP Compatibility Matrix](https://www.rabbitmq.com/which-erlang.html) has more details on
Erlang version requirements for RabbitMQ.
### Minimum Supported Erlang Version
As of 3.12.0, RabbitMQ requires Erlang 25. Nodes **will fail to start** on older Erlang releases.
Users upgrading from 3.11.x (or older releases) on Erlang 25 to 3.12.x on Erlang 26
(both RabbitMQ *and* Erlang are upgraded at the same time) **must** consult
the [v3.12.0 release notes](https://github.com/rabbitmq/rabbitmq-server/releases/tag/v3.12.0) first.
## Changes Worth Mentioning
Release notes can be found on GitHub at [rabbitmq-server/release-notes](https://github.com/rabbitmq/rabbitmq-server/tree/v3.12.x/release-notes).
### Core Server
#### Bug Fixes
2023-10-12 11:31:47 +08:00
* Stream replication connections configured to use exclusively TLSv1.3 failed.
GitHub issue:[#9678](https://github.com/rabbitmq/rabbitmq-server/pull/9678)
* On startup, stream replicas will handle one more potential case of segment file corruption
after an unclean shutdown.
Contributed by @gomoripeti (CloudAMQP).
GitHub issue: [#9678](https://github.com/rabbitmq/rabbitmq-server/pull/9678)
2023-09-28 03:00:31 +08:00
* `default_policies.*.queue_pattern` definition in `rabbitmq.conf` was incorrectly parsed.
Contributed by @SimonUnge (AWS).
GitHub issue: [#9545](https://github.com/rabbitmq/rabbitmq-server/pull/9545)
2023-10-17 23:10:27 +08:00
* Avoid log noise when inter-node connections frequently fail and recover.
Contributed by @Ayanda-D.
GitHub issue: [#9667](https://github.com/rabbitmq/rabbitmq-server/pull/9667)
2023-09-28 03:00:31 +08:00
#### Enhancements
2023-10-12 11:31:47 +08:00
* Optimized stream index scans. Longer scans could result in some replicas stopping
with a timeout.
GitHub issue:[#9678](https://github.com/rabbitmq/rabbitmq-server/pull/9678)
2023-09-28 03:00:31 +08:00
* Classic queue storage version is now a supported key for [operator policies](https://rabbitmq.com/parameters.html#operator-policies).
2023-10-12 11:31:47 +08:00
Contributed by @SignalWhisperer (AWS).
2023-09-28 03:00:31 +08:00
GitHub issue: [#9548](https://github.com/rabbitmq/rabbitmq-server/pull/9548)
2023-10-17 23:10:27 +08:00
* [Queue length limit](https://rabbitmq.com/maxlength.html) overflow behavior now can be configured via [operator policies](https://rabbitmq.com/parameters.html#operator-policies).
2023-09-28 03:00:31 +08:00
2023-10-12 11:31:47 +08:00
Contributed by @SimonUnge (AWS).
GitHub issue: [#9636](https://github.com/rabbitmq/rabbitmq-server/issues/9636)
2023-09-28 03:00:31 +08:00
2023-10-12 11:31:47 +08:00
### CLI Tools
2023-10-17 23:10:27 +08:00
#### Bug Fixes
* `rabbitmq-streams list_stream_consumer_groups` incorrectly validated the set of columns it accepts.
GitHub issue: [#9671](https://github.com/rabbitmq/rabbitmq-server/pull/9671)
2023-10-12 11:31:47 +08:00
#### Enhancements
2023-10-12 11:35:33 +08:00
* Several `list_stream_*` commands (available via both `rabbitmq-diagnostics` and `rabbitmq-streams`) commands now can
display replica node in addition to other fields.
GitHub issue: [#9582](https://github.com/rabbitmq/rabbitmq-server/issues/9582)
2023-10-12 11:31:47 +08:00
* `rabbitmqctl add_user` now can accept a [pre-generated salted password](https://rabbitmq.com/passwords.html) instead
of a plain text password, both as a positional argument and via standard input:
``` shell
# This is just an example, DO NOT use this value in production!
# The 2nd argument is a Base64-encoded pre-hashed and salted value of "guest4"
rabbitmqctl -- add_user "guest4" "BMT6cj/MsI+4UOBtsPPQWpQfk7ViRLj4VqpMTxu54FU3qa1G" --pre-hashed-password
# try authenticating with a pair of credentials
rabbitmqctl authenticate_user "guest4" "guest4"
```
GitHub issue: [#9669](https://github.com/rabbitmq/rabbitmq-server/issues/9669)
### Management Plugin
2023-10-17 23:10:27 +08:00
#### Bug Fixes
* Message consumption with the "Nack message, requeue: true" option did not actually requeue deliveries.
GitHub issue: [#9715](https://github.com/rabbitmq/rabbitmq-server/pull/9715)
2023-10-12 11:31:47 +08:00
#### Enhancements
2023-09-28 03:00:31 +08:00
2023-10-17 23:10:27 +08:00
* HTTP API request body size is now limited to 10 MiB by default.
Two endpoints, one that accepts messages for publishing (note: publishing over the HTTP API is greatly discouraged)
and another for [definition import](https://rabbitmq.com/definitions.html#import),
will now reject larger transfers with a `400 Bad Request` response.
GitHub issue: [#9708](https://github.com/rabbitmq/rabbitmq-server/pull/9708)
2023-09-28 03:00:31 +08:00
* `DELETE /api/queues/{vhost}/{name}` now can delete exclusive queues.
GitHub issue: [#8758](https://github.com/rabbitmq/rabbitmq-server/issues/8758)
* Key supported by operator policies are now grouped by queue type in the UI.
GitHub issue: [#9544](https://github.com/rabbitmq/rabbitmq-server/pull/9544)
2023-10-12 11:31:47 +08:00
### MQTT Plugin
2023-09-28 03:00:31 +08:00
2023-10-12 11:31:47 +08:00
#### Enhancements
2023-09-28 03:00:31 +08:00
* Improved data safety for confirms in environments where the plugin uses classic queues.
GitHub issue: [#9530](https://github.com/rabbitmq/rabbitmq-server/pull/9530)
2023-10-17 23:10:27 +08:00
### Web MQTT Plugin
#### Bug Fixes
* Avoid an exception when a not fully established MQTT-over-WebSockets connection terminated.
Contributed by @gomoripeti (CloudAMQP).
GitHub issue: [#9654](https://github.com/rabbitmq/rabbitmq-server/pull/9654)
2023-10-12 11:31:47 +08:00
### JMS Topic Exchange Plugin
2023-09-28 03:00:31 +08:00
#### Bug Fixes
* Recovery of bindings of durable queues bound to a transient JMS topic exchange failed.
GitHub issue: [#9533](https://github.com/rabbitmq/rabbitmq-server/issues/9533)
2023-10-12 11:31:47 +08:00
### Sharding Plugin
2023-09-28 03:00:31 +08:00
#### Bug Fixes
* Recovery of bindings of durable queues bound to a transient `x-modulo-hash` exchange failed.
GitHub issue: [#9533](https://github.com/rabbitmq/rabbitmq-server/issues/9533)
2023-10-12 11:31:47 +08:00
### Recent History Exchange Plugin
2023-09-28 03:00:31 +08:00
#### Bug Fixes
* Recovery of bindings of durable queues bound to a transient recent history exchange failed.
GitHub issue: [#9533](https://github.com/rabbitmq/rabbitmq-server/issues/9533)
## Dependency Upgrades
2023-10-14 13:58:08 +08:00
* `osiris` has been upgraded to [`1.6.9`](https://github.com/rabbitmq/osiris/releases)
2023-09-28 03:00:31 +08:00
## Source Code Archives
To obtain source code of the entire distribution, please download the archive named `rabbitmq-server-3.12.7.tar.xz`
instead of the source tarball produced by GitHub.