4.2.0 release notes updates
This commit is contained in:
parent
7236131f48
commit
8b4a3f6521
|
@ -74,10 +74,10 @@ Pull Request: [#14474](https://github.com/rabbitmq/rabbitmq-server/pull/14474)
|
|||
[Blue-Green Deployment migration from RabbitMQ 3.13.x](https://www.rabbitmq.com/blog/2025/07/29/latest-benefits-of-rmq-and-migrating-to-qq-along-the-way)
|
||||
to 4.2.0 is now easier to automate thanks to a new set of commands provided by [`rabbitmqadmin` v2](https://www.rabbitmq.com/docs/management-cli).
|
||||
|
||||
### Incoming and Outgoing Message Interceptors for Native Protocols
|
||||
### Incoming and Outgoing Message Interceptors for Native Protocols (AMQP 1.0, AMQP 0-9-1, MQTTv3, MQTTv5)
|
||||
|
||||
Incoming and outgoing messages can now be intercepted on the broker.
|
||||
This works for AMQP 1.0, AMQP 0.9.1, and MQTT.
|
||||
This works for AMQP 1.0, AMQP 0.9.1, MQTTv3, and MQTTv5.
|
||||
|
||||
What the interceptor does is entirely up to its implementation, for example it can validate message metadata, add annotations, or perform arbitrary side effects.
|
||||
Custom interceptors can be developed and integrated via [plugins](https://www.rabbitmq.com/docs/next/plugins).
|
||||
|
@ -220,6 +220,25 @@ This section is **incomplete** and will be expanded as 4.2 approaches its releas
|
|||
|
||||
#### Bug Fixes
|
||||
|
||||
* Classic queues could run into a rare message store exception that resuulted in
|
||||
a loss of a few messages.
|
||||
|
||||
Special kudos to the contributors who have spent a very significant amount of time
|
||||
reproducing and debugging the issue: @lhoguin @lukebakken @trvrnrth @gomoripeti
|
||||
|
||||
GitHub issues: [#14181](https://github.com/rabbitmq/rabbitmq-server/discussions/14181), [#14576](https://github.com/rabbitmq/rabbitmq-server/pull/14576)
|
||||
|
||||
* Messages routed to quorum queues during or immediately before a network partition,
|
||||
in some cases were not re-republished internally in certain cases.
|
||||
|
||||
GitHub issue: [#14589](https://github.com/rabbitmq/rabbitmq-server/pull/14589)
|
||||
|
||||
* Quorum queues with disabled [poison message handling](https://www.rabbitmq.com/docs/quorum-queues#poison-message-handling)
|
||||
(an unlimited number of redeliveries, which is **not** a recommended practice) could accumulate
|
||||
a significant number of Raft log segment files.
|
||||
|
||||
GitHub issues: [#14202](https://github.com/rabbitmq/rabbitmq-server/issues/14202), [#14458](https://github.com/rabbitmq/rabbitmq-server/pull/14458)
|
||||
|
||||
* `default_password`, `ssl_options.password` now can tell between a generated random password
|
||||
value and an [encrypted value](https://www.rabbitmq.com/docs/configure#configuration-encryption) better.
|
||||
|
||||
|
@ -235,6 +254,12 @@ This section is **incomplete** and will be expanded as 4.2 approaches its releas
|
|||
|
||||
### Stream Plugin
|
||||
|
||||
#### Enhancements
|
||||
|
||||
* Consuming from a stream now uses fewer system calls and therefore is more efficient.
|
||||
|
||||
GitHub issues: [#14189](https://github.com/rabbitmq/rabbitmq-server/pull/14189), [rabbitmq/osiris#192](https://github.com/rabbitmq/osiris/pull/192)
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* Stream client connections that authenticate using a JWT token (OAuth 2) have
|
||||
|
@ -247,10 +272,90 @@ This section is **incomplete** and will be expanded as 4.2 approaches its releas
|
|||
GitHub issues: [#14403](https://github.com/rabbitmq/rabbitmq-server/pull/14403), [#14406](https://github.com/rabbitmq/rabbitmq-server/pull/14406)
|
||||
|
||||
|
||||
### CLI Tools
|
||||
|
||||
#### Enhancements
|
||||
|
||||
* `rabbitmq-diagnostics ` is a new command that provides a message size distribution.
|
||||
Use it to get an estimate of the size of the messages flowing through the cluster.
|
||||
|
||||
GitHub issue: [#14560](https://github.com/rabbitmq/rabbitmq-server/pull/14560)
|
||||
|
||||
|
||||
### Management Plugin
|
||||
|
||||
#### Enhancements
|
||||
|
||||
* Users now can be protected from deletion or modification over the HTTP API.
|
||||
To protect a user, [tag it](https://www.rabbitmq.com/docs/access-control#user-tags) with `protected`:
|
||||
|
||||
```shell
|
||||
rabbitmqctl set_user_tags "a-user" "protected"
|
||||
```
|
||||
|
||||
To lift the protection, remove the tag using `rabbitmqctl set_tags` or delete the user via `rabbitmqctl delete_user`
|
||||
re-create it with a different set of tags.
|
||||
|
||||
GitHub issues: [#14282](https://github.com/rabbitmq/rabbitmq-server/discussions/14282), [#14545](https://github.com/rabbitmq/rabbitmq-server/pull/14545)
|
||||
|
||||
|
||||
### Shovel Plugin
|
||||
|
||||
#### Enhancements
|
||||
|
||||
* Shovels now support a new "protocol" called `local`.
|
||||
|
||||
In addition to AMQP 0-9-1 and AMQP 1.0, Shovels
|
||||
now support a new "protocol" option called `local`.
|
||||
|
||||
These specialized shovels are internally based on AMQP 1.0 but instead of
|
||||
separate TCP connections, use the intra-cluster connections
|
||||
between cluster nodes and the internal API for consumption, publishing
|
||||
and AMQP 1.0 credit flow.
|
||||
|
||||
Such shovels can only be used for consuming and publishing
|
||||
within the same cluster, not across clusters, but can offer
|
||||
higher throughput and use fewer resources per connections
|
||||
than their AMQP 0-9-1 and AMQP 1.0 counterparts.
|
||||
|
||||
#### Bug Fixes
|
||||
|
||||
* Prometheus metric collector failed with an exception when the scraper endpoint
|
||||
was hit when one or more shovels were still starting.
|
||||
|
||||
|
||||
### AWS Peer Discovery Plugin
|
||||
|
||||
####
|
||||
|
||||
* The plugin implicitly depended on ordering of `` and `` EC2 API response fields,.
|
||||
which could result in obscure cluster formation issues.
|
||||
|
||||
GitHub issue: [#14557](https://github.com/rabbitmq/rabbitmq-server/pull/14557)
|
||||
|
||||
|
||||
### Web MQTT Plugin
|
||||
|
||||
#### Enhancements
|
||||
|
||||
* HTTP/2 is enabled for WebSocket connections by default.
|
||||
|
||||
GitHub issue: [#14500](https://github.com/rabbitmq/rabbitmq-server/pull/14500)
|
||||
|
||||
|
||||
### Web STOMP Plugin
|
||||
|
||||
#### Enhancements
|
||||
|
||||
* HTTP/2 is enabled for WebSocket connections by default.
|
||||
|
||||
GitHub issue: [#14500](https://github.com/rabbitmq/rabbitmq-server/pull/14500)
|
||||
|
||||
|
||||
### Dependency Changes
|
||||
|
||||
* `ra` was upgraded to [`2.17.1`](https://github.com/rabbitmq/ra/releases)
|
||||
* `osiris` was upgraded to [`1.10.0`](https://github.com/rabbitmq/osiris/releases)
|
||||
* `khepri` was upgraded to [`0.17.2`](https://github.com/rabbitmq/khepri/releases)
|
||||
* `khepri_mnesia_migration` was upgraded to [`0.8.0`](https://github.com/rabbitmq/khepri_mnesia_migration/releases)
|
||||
* `cuttlefish` was upgraded to [`3.5.0`](https://github.com/kyorai/cuttlefish/releases)
|
||||
|
|
Loading…
Reference in New Issue