|
1 | | -## RabbitMQ 3.13.0-rc.5 |
| 1 | +## RabbitMQ 3.13.0 |
2 | 2 |
|
3 | | -RabbitMQ `3.13.0-rc.5` is a candidate of a new feature release. |
| 3 | +RabbitMQ `3.13.0` is a new feature release. |
4 | 4 |
|
5 | 5 | ## Highlights |
6 | 6 |
|
7 | | -This release includes several new features and optimizations. |
| 7 | +This release includes several new features, optimizations, internal changes in preparation for RabbitMQ 4.x, |
| 8 | +and an updated documentation website. |
8 | 9 |
|
9 | 10 | The user-facing areas that have seen the biggest improvements in this release are |
10 | 11 |
|
11 | | - * [Khepri](https://www.youtube.com/watch?v=whVqpgvep90) now can be used as an [alternative schema data store](https://github.com/rabbitmq/rabbitmq-server/pull/7206) |
12 | | - in RabbitMQ, replacing Mnesia |
13 | | - * Support for [consumer-side stream filtering](https://github.com/rabbitmq/rabbitmq-server/pull/8207) |
| 12 | + * [Khepri](https://www.youtube.com/watch?v=whVqpgvep90) now can be used as an [alternative schema data store](https://github.com/rabbitmq/rabbitmq-server/pull/7206) in RabbitMQ, replacing Mnesia |
14 | 13 | * [MQTTv5 support](https://blog.rabbitmq.com/posts/2023/07/mqtt5) |
| 14 | + * Support for [consumer-side stream filtering](https://github.com/rabbitmq/rabbitmq-server/pull/8207) |
15 | 15 | * A new [common message container format](https://github.com/rabbitmq/rabbitmq-server/pull/5077) used internally, based on the AMQP 1.0 message container format |
16 | 16 | * Improved classic non-mirrored queue performance with message sizes larger than |
17 | 17 | 4 KiB (or a different customized CQ index embedding threshold) |
18 | | - * Classic queues use version 2 of the storage implementation (CQv2). |
19 | | - This should significantly improve performance of non-mirrored classic queues |
| 18 | + * Classic queues storage implementation version 2 (CQv2) is now highly recommended for all new deployments. |
| 19 | + CQv2 meaningfully improves performance of non-mirrored classic queues for most workloads |
20 | 20 |
|
21 | 21 | See Compatibility Notes below to learn about **breaking or potentially breaking changes** in this release. |
22 | 22 |
|
23 | 23 | ## Release Artifacts |
24 | 24 |
|
25 | | -RabbitMQ preview releases are distributed via [GitHub](https://github.com/rabbitmq/rabbitmq-server/releases). |
| 25 | +RabbitMQ releases are distributed via [GitHub](https://github.com/rabbitmq/rabbitmq-server/releases). |
| 26 | +[Debian](https://rabbitmq.com/install-debian.html) and [RPM packages](https://rabbitmq.com/install-rpm.html) are available via Cloudsmith mirrors. |
26 | 27 |
|
27 | | -[Community Docker image](https://hub.docker.com/_/rabbitmq/) is another installation option |
28 | | -for previews. It is updated with a delay (usually a few days). |
| 28 | +[Community Docker image](https://hub.docker.com/_/rabbitmq/), [Chocolatey package](https://community.chocolatey.org/packages/rabbitmq), and the [Homebrew formula](https://rabbitmq.com/install-homebrew.html) |
| 29 | +are other installation options. They are updated with a delay. |
29 | 30 |
|
30 | 31 |
|
31 | 32 | ## Erlang/OTP Compatibility Notes |
32 | 33 |
|
33 | | -This release [requires Erlang 26.0](https://www.rabbitmq.com/which-erlang.html) or later. |
| 34 | +This release [requires Erlang 26.x](https://www.rabbitmq.com/which-erlang.html). |
34 | 35 |
|
35 | 36 | [Provisioning Latest Erlang Releases](https://www.rabbitmq.com/which-erlang.html#erlang-repositories) explains |
36 | 37 | what package repositories and tools can be used to provision latest patch versions of Erlang 26.x. |
@@ -71,29 +72,30 @@ periods of time (no more than a few hours). |
71 | 72 | We recommend switching classic queues to CQv2 after **all cluster nodes** have been upgrades, |
72 | 73 | at first using policies, and then eventually using a setting in `rabbitmq.conf`. Upgrading |
73 | 74 | classic queues to CQv2 at boot time using the configuration file setting can be |
74 | | -potentially unsafe in environments where deprecated classic mirrored queues still exist. |
| 75 | +potentially unsafe in environments where **deprecated classic mirrored queues still exist**. |
75 | 76 |
|
76 | 77 | For new clusters, adopting CQv2 from the start is highly recommended: |
77 | 78 |
|
78 | 79 | ``` ini |
| 80 | +# CQv2 should be used by default for all new clusters |
79 | 81 | classic_queue.default_version = 2 |
80 | 82 | ``` |
81 | 83 |
|
82 | 84 |
|
83 | 85 | ## Compatibility Notes |
84 | 86 |
|
85 | | -This release includes a few potentially breaking changes& |
| 87 | +This release includes a few potentially breaking changes. |
86 | 88 |
|
87 | 89 | ### Minimum Supported Erlang Version |
88 | 90 |
|
89 | | -Starting with this release, RabbitMQ requires Erlang 26.0 or later versions. Nodes **will fail to start** |
| 91 | +Starting with this release, RabbitMQ requires Erlang 26.x. Nodes **will fail to start** |
90 | 92 | on older Erlang releases. |
91 | 93 |
|
92 | 94 | ### Client Library Compatibility |
93 | 95 |
|
94 | | -Client libraries that were compatible with RabbitMQ `3.12.x` will be compatible with `3.13.0`. |
95 | | -RabbitMQ Stream Protocol clients must be upgraded to use the stream filtering feature |
96 | | -introduced in this release. |
| 96 | +Client libraries that were compatible with RabbitMQ `3.11.x` and `3.12.x` will be compatible with `3.13.0`. |
| 97 | +RabbitMQ Stream Protocol clients must be upgraded to their latest versions in order to support |
| 98 | +the stream filtering feature introduced in this release. |
97 | 99 |
|
98 | 100 | ### Consistency Model and Schema Modification Visibility Guarantees of Khepri and Mnesia |
99 | 101 |
|
@@ -169,7 +171,7 @@ is in place. |
169 | 171 |
|
170 | 172 | ### Management Plugin and HTTP API |
171 | 173 |
|
172 | | -GET /api/queues` HTTP API endpoint has dropped several rarely used metrics, resulting in 25% in traffic saving. |
| 174 | +GET /api/queues` HTTP API endpoint has dropped several rarely used metrics, resulting in up to 25% in traffic saving. |
173 | 175 |
|
174 | 176 | ### MQTT Plugin |
175 | 177 |
|
|
0 commit comments