Skip to content

Commit e2ffa13

Browse files
committed
Require all feature flags introduced before 3.11.1
RabbitMQ 3.12 requires feature flag feature_flags_v2 which got introduced in 3.11.0 (see #6810). Therefore, we can mark all feature flags that got introduced in 3.11.0 or before 3.11.0 as required because users will have to upgrade to 3.11.x first, before upgrading to 3.12.x The advantage of marking these feature flags as required is that we can start deleting any compatibliy code for these feature flags, similarly as done in #5215 This list shows when a given feature flag was first introduced: classic_mirrored_queue_version 3.11.0 stream_single_active_consumer 3.11.0 direct_exchange_routing_v2 3.11.0 listener_records_in_ets 3.11.0 tracking_records_in_ets 3.11.0 empty_basic_get_metric 3.8.10 drop_unroutable_metric 3.8.10
1 parent 8b88e45 commit e2ffa13

File tree

2 files changed

+14
-7
lines changed

2 files changed

+14
-7
lines changed

deps/rabbit/src/rabbit_core_ff.erl

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@
2020
-rabbit_feature_flag(
2121
{classic_mirrored_queue_version,
2222
#{desc => "Support setting version for classic mirrored queues",
23-
stability => stable
23+
%%TODO remove compatibility code
24+
stability => required
2425
}}).
2526

2627
-rabbit_feature_flag(
@@ -68,7 +69,8 @@
6869
{stream_single_active_consumer,
6970
#{desc => "Single active consumer for streams",
7071
doc_url => "https://www.rabbitmq.com/stream.html",
71-
stability => stable,
72+
%%TODO remove compatibility code
73+
stability => required,
7274
depends_on => [stream_queue]
7375
}}).
7476

@@ -81,15 +83,17 @@
8183
-rabbit_feature_flag(
8284
{direct_exchange_routing_v2,
8385
#{desc => "v2 direct exchange routing implementation",
84-
stability => stable,
86+
%%TODO remove compatibility code
87+
stability => required,
8588
depends_on => [feature_flags_v2, implicit_default_bindings],
8689
callbacks => #{enable => {?MODULE, direct_exchange_routing_v2_enable}}
8790
}}).
8891

8992
-rabbit_feature_flag(
9093
{listener_records_in_ets,
9194
#{desc => "Store listener records in ETS instead of Mnesia",
92-
stability => stable,
95+
%%TODO remove compatibility code
96+
stability => required,
9397
depends_on => [feature_flags_v2],
9498
callbacks => #{enable =>
9599
{?MODULE, listener_records_in_ets_enable},
@@ -100,7 +104,8 @@
100104
-rabbit_feature_flag(
101105
{tracking_records_in_ets,
102106
#{desc => "Store tracking records in ETS instead of Mnesia",
103-
stability => stable,
107+
%%TODO remove compatibility code
108+
stability => required,
104109
depends_on => [feature_flags_v2],
105110
callbacks => #{enable =>
106111
{?MODULE, tracking_records_in_ets_enable},

deps/rabbitmq_management_agent/src/rabbit_mgmt_ff.erl

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,13 @@
1010
-rabbit_feature_flag(
1111
{empty_basic_get_metric,
1212
#{desc => "Count AMQP `basic.get` on empty queues in stats",
13-
stability => stable
13+
%%TODO remove compatibility code
14+
stability => required
1415
}}).
1516

1617
-rabbit_feature_flag(
1718
{drop_unroutable_metric,
1819
#{desc => "Count unroutable publishes to be dropped in stats",
19-
stability => stable
20+
%%TODO remove compatibility code
21+
stability => required
2022
}}).

0 commit comments

Comments
 (0)