Skip to content

Commit 8bb4719

Browse files
4.1.0 release notes updates
1 parent b84483a commit 8bb4719

File tree

1 file changed

+187
-19
lines changed

1 file changed

+187
-19
lines changed

release-notes/4.1.0.md

Lines changed: 187 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,12 @@ what package repositories and tools can be used to provision latest patch versio
4343

4444
## Release Artifacts
4545

46-
TBD
46+
Artifacts for preview releases are distributed via GitHub releases:
47+
48+
* In main repository, [`rabbitmq/rabbitmq-server`](https://github.com/rabbitmq/rabbitmq-server/releases)
49+
* In the development builds repository, [`rabbitmq/server-packages`](https://github.com/rabbitmq/server-packages/releases)
50+
51+
There is a `4.1.0` preview version of the [community RabbitMQ image](https://github.com/docker-library/rabbitmq).
4752

4853

4954
## Upgrading to 4.1.0
@@ -75,13 +80,14 @@ periods of time (no more than a few hours).
7580

7681
### Recommended Post-upgrade Procedures
7782

78-
TBD
83+
This version does not require any additional post-upgrade procedures
84+
compared to other versions.
7985

8086

8187

8288
## Changes Worth Mentioning
8389

84-
This section is incomplete and will be expanded as 4.1 approaches its release candidate stage.
90+
This section can be incomplete and will be expanded as 4.1 approaches its release candidate stage.
8591

8692
### Core Server
8793

@@ -121,6 +127,54 @@ This section is incomplete and will be expanded as 4.1 approaches its release ca
121127

122128
GitHub issue: [#12559](https://github.com/rabbitmq/rabbitmq-server/pull/12559)
123129

130+
* Peer discovery resilience improvements.
131+
132+
GitHub issues: [#12801](https://github.com/rabbitmq/rabbitmq-server/pull/12801), [#12809](https://github.com/rabbitmq/rabbitmq-server/pull/12809)
133+
134+
#### Bug Fixes
135+
136+
* AMQP 0-9-1 channel exception generator could not handle entity names (say, queue or stream names)
137+
that contained non-ASCII characters.
138+
139+
This affected applications that use passive queue declarations, such as the Shovel plugin.
140+
141+
Contributed by @bpint.
142+
143+
GitHub issue: [#12888](https://github.com/rabbitmq/rabbitmq-server/pull/12888)
144+
145+
* Reintroduced transient flow control between classic queue replicas and AMQP 0-9-1 channels,
146+
MQTT connections.
147+
148+
Flow control between these specific parts of the core were unintentionally
149+
removed in `4.0.0` together with classic queue mirroring.
150+
151+
Contributed by @gomoripeti.
152+
153+
GitHub issue: [#12907](https://github.com/rabbitmq/rabbitmq-server/pull/12907)
154+
155+
* AMQP 1.0 connections with a higher consumption rate could set the incoming window field
156+
on the flow frame to a negative value, which resulted in an exception that affected the consumer.
157+
158+
GitHub issues: [#12816](https://github.com/rabbitmq/rabbitmq-server/issues/12816)
159+
160+
* In rare cases quorum queue could end up without an elected leader because
161+
chosen candidate replica was not verified for aliveness.
162+
163+
Contributed by @Ayanda-D.
164+
165+
GitHub issues: [#12727](https://github.com/rabbitmq/rabbitmq-server/pull/12727), [#10423](https://github.com/rabbitmq/rabbitmq-server/discussions/10423), [#12701](https://github.com/rabbitmq/rabbitmq-server/discussions/12701)
166+
167+
* When a new replica is added to a quorum queue, the node that handles this request will now wait
168+
the operation to complete. Previously an early return could result in confusing `cluster_change_not_permitted`
169+
errors for subsequent operations, for example, an addition of another replica.
170+
171+
GitHub issue: [#12837](https://github.com/rabbitmq/rabbitmq-server/pull/12837)
172+
173+
* In very rare cases, RabbitMQ could fail to notify stream consumers connected to follower replicas
174+
about newly committed offsets as quickly as it usually happens for consumers connected to the stream leader.
175+
176+
GitHub issue: [#12785](https://github.com/rabbitmq/rabbitmq-server/pull/12785)
177+
124178

125179
### MQTT Plugin
126180

@@ -132,6 +186,31 @@ This section is incomplete and will be expanded as 4.1 approaches its release ca
132186
Note that this value must not be greater than `max_message_size` (which also defaults to 16 MiB).
133187

134188

189+
### CLI Tools
190+
191+
#### Enhancements
192+
193+
* New major version of `rabbitmqadmin`, a CLI tool that targets RabbitMQ's HTTP API, is maturing.
194+
Unlike its predecessor, the tool is distirbuted via GitHub as as a standalone native binary.
195+
196+
There are minor command line interface changes and a slightly different configuration file
197+
format ([TOML](https://toml.io/en/) instead of `ini`)
198+
199+
GitHub repository: [`rabbitmq/rabbitmqadmin-ng`](https://github.com/rabbitmq/rabbitmqadmin-ng)
200+
201+
* `rabbitmq-diagnostics check_if_any_deprecated_features_are_used` implementation is now more complete
202+
(checks for a more deprecated features).
203+
204+
GitHub issue: [#12675](https://github.com/rabbitmq/rabbitmq-server/pull/12675)
205+
206+
#### Bug Fixes
207+
208+
* Fixes a false positive that incorrectly reported deprecated feature use, specifically
209+
the use of non-exclusive transient classic queues.
210+
211+
GitHub issue: [#12840](https://github.com/rabbitmq/rabbitmq-server/pull/12840)
212+
213+
135214
### Prometheus Plugin
136215

137216
#### Enhancements
@@ -144,32 +223,81 @@ This section is incomplete and will be expanded as 4.1 approaches its release ca
144223

145224
GitHub issue: [#12342](https://github.com/rabbitmq/rabbitmq-server/pull/12342)
146225

226+
* Two new stream metrics for streams.
227+
228+
Contributed by @gomoripeti and @markus812498.
229+
230+
GitHub issue: [#12765](https://github.com/rabbitmq/rabbitmq-server/pull/12765)
231+
232+
233+
### Grafana Dashboards
234+
235+
#### Bug Fixes
236+
237+
* Grafana 11.3.x compatibility.
238+
239+
Contributed by @anhanhnguyen.
240+
241+
GitHub issue: [#12720](https://github.com/rabbitmq/rabbitmq-server/pull/12720)
242+
147243

148244
### Management UI
149245

150246
#### Enhancements
151247

152-
* Connection pages now display detailed AMQP 1.0 session and link information:
248+
* Static assets served by the management UI now have a `control-cache` header set
249+
to make sure that browsers reload them between upgrades.
250+
251+
UI code now tries to track version changes to perform a forced reload of the entire page.
252+
253+
GitHub issue: [#12749](https://github.com/rabbitmq/rabbitmq-server/pull/12749)
254+
255+
* Connection pages now display detailed AMQP 1.0 session and link information:
256+
257+
1. Link names
258+
2. Link target and source addresses
259+
3. Link flow control state
260+
4. Session flow control state
261+
5. Number of unconfirmed and unacknowledged messages
262+
263+
GitHub issue: [#12670](https://github.com/rabbitmq/rabbitmq-server/pull/12670)
264+
265+
* The management UI now shows if a feature flag has a migration function (in other words, it may take time to be enabled),
266+
if it is experimental and whether it is supported or not. To enable an experimental feature flag,
267+
a user must to tick checkboxes to confirm they know what they are doing.
153268

154-
1. Link names
155-
2. Link target and source addresses
156-
3. Link flow control state
157-
4. Session flow control state
158-
5. Number of unconfirmed and unacknowledged messages
269+
GitHub issue: [#12643](https://github.com/rabbitmq/rabbitmq-server/pull/12643)
159270

160-
GitHub issue: [#12670](https://github.com/rabbitmq/rabbitmq-server/pull/12670)
271+
* Feature flags are now enabled using asynchronous requests in the management UI.
272+
This means that feature flags that perform data migrations (which can take some time)
273+
won't block the browser tab.
161274

162-
* The management UI now shows if a feature flag has a migration function (in other words, it may take time to be enabled),
163-
if it is experimental and whether it is supported or not. To enable an experimental feature flag,
164-
a user must to tick checkboxes to confirm they know what they are doing.
275+
GitHub issue: [#12643](https://github.com/rabbitmq/rabbitmq-server/pull/12643)
165276

166-
GitHub issue: [#12643](https://github.com/rabbitmq/rabbitmq-server/pull/12643)
277+
#### Bug Fixes
167278

168-
* Feature flags are now enabled using asynchronous requests in the management UI.
169-
This means that feature flags that perform data migrations (which can take some time)
170-
won't block the browser tab.
279+
* Fixes a false positive that incorrectly reported deprecated feature use, specifically
280+
the use of non-exclusive transient classic queues.
171281

172-
GitHub issue: [#12643](https://github.com/rabbitmq/rabbitmq-server/pull/12643)
282+
GitHub issue: [#12840](https://github.com/rabbitmq/rabbitmq-server/pull/12840)
283+
284+
* When a logged in user's JWT token was refreshed, the user identity displayed in the UI was changed.
285+
286+
GitHub issue: [#12818](https://github.com/rabbitmq/rabbitmq-server/pull/12818)
287+
288+
289+
### Shovel Plugin
290+
291+
#### Bug Fixes
292+
293+
* AMQP 0-9-1 channel exception generator could not handle entity names (say, queue or stream names)
294+
that contained non-ASCII characters.
295+
296+
This affected applications that use passive queue declarations, such as the Shovel plugin.
297+
298+
Contributed by @bpint.
299+
300+
GitHub issue: [#12888](https://github.com/rabbitmq/rabbitmq-server/pull/12888)
173301

174302

175303
### Event Exchange Plugin
@@ -185,9 +313,49 @@ This section is incomplete and will be expanded as 4.1 approaches its release ca
185313
GitHub issue: [#12714](https://github.com/rabbitmq/rabbitmq-server/pull/12714)
186314

187315

316+
### AWS Peer Discovery Plugin
317+
318+
#### Bug Fixes
319+
320+
* Avoids an exception during automatic removal of cluster members that are
321+
no longer returned by peer discovery (an [opt-in feature](https://www.rabbitmq.com/docs/cluster-formation#node-health-checks-and-cleanup)).
322+
323+
GitHub issue: [#12809](https://github.com/rabbitmq/rabbitmq-server/pull/12809)
324+
325+
326+
### Kubernetes Peer Discovery Plugin
327+
328+
#### Bug Fixes
329+
330+
* Avoids an exception during automatic removal of cluster members that are
331+
no longer returned by peer discovery (an [opt-in feature](https://www.rabbitmq.com/docs/cluster-formation#node-health-checks-and-cleanup)).
332+
333+
GitHub issue: [#12809](https://github.com/rabbitmq/rabbitmq-server/pull/12809)
334+
335+
336+
### Consul Peer Discovery Plugin
337+
338+
#### Bug Fixes
339+
340+
* Avoids an exception during automatic removal of cluster members that are
341+
no longer returned by peer discovery (an [opt-in feature](https://www.rabbitmq.com/docs/cluster-formation#node-health-checks-and-cleanup)).
342+
343+
GitHub issue: [#12809](https://github.com/rabbitmq/rabbitmq-server/pull/12809)
344+
345+
346+
### etcd Peer Discovery Plugin
347+
348+
#### Bug Fixes
349+
350+
* Avoids an exception during automatic removal of cluster members that are
351+
no longer returned by peer discovery (an [opt-in feature](https://www.rabbitmq.com/docs/cluster-formation#node-health-checks-and-cleanup)).
352+
353+
GitHub issue: [#12809](https://github.com/rabbitmq/rabbitmq-server/pull/12809)
354+
355+
188356
### Dependency Changes
189357

190-
TBD
358+
* `osiris` was upgraded to [`1.8.5`](https://github.com/rabbitmq/osiris/releases)
191359

192360

193361
## Source Code Archives

0 commit comments

Comments
 (0)