You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: release-notes/4.3.0.md
+83-16Lines changed: 83 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,7 +11,7 @@ This release removes the original classic queue storage implementation these day
11
11
known as CQv1. A 2nd generation implementation called CQv2 has been adopted
12
12
as the default starting with `4.2.0`.
13
13
14
-
This means that attemptes to declare a queue using the following [optional queue arguments](https://www.rabbitmq.com/docs/queues#optional-arguments) will fail:
14
+
This means that attempts to declare a queue using the following [optional queue arguments](https://www.rabbitmq.com/docs/queues#optional-arguments) will fail:
15
15
16
16
*`x-queue-mode` set to any value
17
17
*`x-queue-version` set to `1`
@@ -20,9 +20,30 @@ Existing classic queues upgraded to CQv2 during an earlier upgrade to `4.2.x` wi
20
20
operating as usual.
21
21
22
22
23
+
### Consumer timeouts are no longer evaluated for classic queues and streams.
24
+
25
+
This release moves consumer timeout handling responsibility into the queues
26
+
themselves. Also all protocols (except the stream protocol) now evaluate
27
+
consumer timeout for queue types that support them. Classic queues and streams
28
+
never evaluate consumer timeouts as their use cases cause less demand for it.
29
+
30
+
23
31
## Release Highlights
24
32
25
-
TBD
33
+
This release upgrades the [Ra](https://github.com/rabbitmq/ra) dependency to `3.0.1` and introduces
34
+
`rabbit_fifo` v8, a new version of the quorum queue state machine with several new features and optimisations:
35
+
36
+
***Strict priority queues** with per-priority message counts, correct
37
+
redelivery ordering, and priority-aware message expiration
38
+
***Delayed retry** for quorum queues: configurable increasing backoff when
39
+
messages are returned
40
+
***Consumer timeout** for quorum queues: configurable timeout for
41
+
unacknowledged messages, with protocol-specific handling for AMQP 1.0 and
42
+
MQTT
43
+
***Recovery snapshots** and **snapshot throttling** to reduce recovery time
44
+
and improve snapshotting decisions
45
+
***Memory optimisations** including compact message references, optimised
46
+
tuple storage for delayed keys, and removal of `rabbit_fifo_index` usage
*`ra` was upgraded from [`2.17.2`](https://github.com/rabbitmq/ra/releases/tag/v2.17.2) to [`3.0.1`](https://github.com/rabbitmq/ra/releases/tag/v3.0.1)
237
304
*`cuttlefish` was upgraded to [`3.6.0`](https://github.com/kyorai/cuttlefish/releases)
0 commit comments