Skip to content

Commit dda1c50

Browse files
committed
Require feature flag message_containers
as it is required for Native AMQP 1.0 in 4.0. Remove compatibility code.
1 parent 3486206 commit dda1c50

19 files changed

+62
-430
lines changed

deps/rabbit/BUILD.bazel

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -542,14 +542,6 @@ rabbitmq_integration_suite(
542542
size = "medium",
543543
)
544544

545-
rabbitmq_integration_suite(
546-
name = "message_containers_SUITE",
547-
size = "medium",
548-
additional_beam = [
549-
":test_queue_utils_beam",
550-
],
551-
)
552-
553545
rabbitmq_integration_suite(
554546
name = "metrics_SUITE",
555547
size = "medium",

deps/rabbit/app.bzl

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2092,15 +2092,7 @@ def test_suite_beam_files(name = "test_suite_beam_files"):
20922092
erlc_opts = "//:test_erlc_opts",
20932093
deps = ["//deps/amqp_client:erlang_app", "//deps/rabbitmq_ct_helpers:erlang_app"],
20942094
)
2095-
erlang_bytecode(
2096-
name = "message_containers_SUITE_beam_files",
2097-
testonly = True,
2098-
srcs = ["test/message_containers_SUITE.erl"],
2099-
outs = ["test/message_containers_SUITE.beam"],
2100-
app_name = "rabbit",
2101-
erlc_opts = "//:test_erlc_opts",
2102-
deps = ["//deps/amqp_client:erlang_app"],
2103-
)
2095+
21042096
erlang_bytecode(
21052097
name = "metadata_store_clustering_SUITE_beam_files",
21062098
testonly = True,

deps/rabbit/src/mc_amqpl.erl

Lines changed: 6 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
-export([
2525
message/3,
2626
message/4,
27-
message/5,
2827
from_basic_message/1,
2928
to_091/2,
3029
from_091/2
@@ -457,16 +456,13 @@ protocol_state(Content0, Anns) ->
457456
message(ExchangeName, RoutingKey, Content) ->
458457
message(ExchangeName, RoutingKey, Content, #{}).
459458

459+
%% helper for creating message container from messages received from AMQP legacy
460460
-spec message(rabbit_types:exchange_name(), rabbit_types:routing_key(), #content{}, map()) ->
461461
{ok, mc:state()} | {error, Reason :: any()}.
462-
message(XName, RoutingKey, Content, Anns) ->
463-
message(XName, RoutingKey, Content, Anns,
464-
rabbit_feature_flags:is_enabled(message_containers)).
465-
466-
%% helper for creating message container from messages received from
467-
%% AMQP legacy
468-
message(#resource{name = ExchangeNameBin}, RoutingKey,
469-
#content{properties = Props} = Content, Anns, true)
462+
message(#resource{name = ExchangeNameBin},
463+
RoutingKey,
464+
#content{properties = Props} = Content,
465+
Anns)
470466
when is_binary(RoutingKey) andalso
471467
is_map(Anns) ->
472468
case rabbit_basic:header_routes(Props#'P_basic'.headers) of
@@ -477,19 +473,6 @@ message(#resource{name = ExchangeNameBin}, RoutingKey,
477473
rabbit_basic:strip_bcc_header(Content),
478474
Anns#{?ANN_ROUTING_KEYS => [RoutingKey | HeaderRoutes],
479475
?ANN_EXCHANGE => ExchangeNameBin})}
480-
end;
481-
message(#resource{} = XName, RoutingKey,
482-
#content{} = Content, Anns, false) ->
483-
case rabbit_basic:message(XName, RoutingKey, Content) of
484-
{ok, Msg} ->
485-
case Anns of
486-
#{id := Id} ->
487-
{ok, Msg#basic_message{id = Id}};
488-
_ ->
489-
{ok, Msg}
490-
end;
491-
{error, _} = Error ->
492-
Error
493476
end.
494477

495478
from_basic_message(#basic_message{content = Content,
@@ -502,7 +485,7 @@ from_basic_message(#basic_message{content = Content,
502485
_ ->
503486
#{id => Id}
504487
end,
505-
{ok, Msg} = message(Ex, RKey, prepare(read, Content), Anns, true),
488+
{ok, Msg} = message(Ex, RKey, prepare(read, Content), Anns),
506489
Msg.
507490

508491
%% Internal

deps/rabbit/src/rabbit_core_ff.erl

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -123,9 +123,7 @@
123123
-rabbit_feature_flag(
124124
{message_containers,
125125
#{desc => "Message containers.",
126-
%%TODO Once lower version node in mixed versions is bumped to 3.13,
127-
%% make 'required' for upgrading AMQP 1.0 from 3.13 to 4.0
128-
stability => stable,
126+
stability => required,
129127
depends_on => [feature_flags_v2]
130128
}}).
131129

deps/rabbit/test/amqp_client_SUITE.erl

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2216,12 +2216,7 @@ target_classic_queue_down(Config) ->
22162216
ok = amqp10_client:close_connection(Connection).
22172217

22182218
async_notify_settled_classic_queue(Config) ->
2219-
%% TODO Bump old version in mixed version tests to 3.13.x,
2220-
%% require ff message_containers and always run this test case.
2221-
case rabbit_ct_broker_helpers:enable_feature_flag(Config, message_containers) of
2222-
ok -> async_notify(settled, <<"classic">>, Config);
2223-
{skip, _} = Skip -> Skip
2224-
end.
2219+
async_notify(settled, <<"classic">>, Config).
22252220

22262221
async_notify_settled_quorum_queue(Config) ->
22272222
async_notify(settled, <<"quorum">>, Config).
@@ -2402,12 +2397,7 @@ link_flow_control(Config) ->
24022397
ok = amqp10_client:close_connection(Connection).
24032398

24042399
classic_queue_on_old_node(Config) ->
2405-
%% TODO Bump old version in mixed version tests to 3.13.x,
2406-
%% require ff message_containers and always run this test case.
2407-
case rabbit_ct_broker_helpers:enable_feature_flag(Config, message_containers) of
2408-
ok -> queue_and_client_different_nodes(1, 0, <<"classic">>, Config);
2409-
{skip, _} = Skip -> Skip
2410-
end.
2400+
queue_and_client_different_nodes(1, 0, <<"classic">>, Config).
24112401

24122402
classic_queue_on_new_node(Config) ->
24132403
queue_and_client_different_nodes(0, 1, <<"classic">>, Config).

deps/rabbit/test/dead_lettering_SUITE.erl

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -155,22 +155,15 @@ init_per_group(Group, Config) ->
155155
case lists:member({group, Group}, all()) of
156156
true ->
157157
ClusterSize = 3,
158-
Config1 = rabbit_ct_helpers:set_config(Config, [
159-
{rmq_nodename_suffix, Group},
160-
{rmq_nodes_count, ClusterSize}
161-
]),
162-
Config2 = rabbit_ct_helpers:run_steps(
163-
Config1,
164-
rabbit_ct_broker_helpers:setup_steps() ++
165-
rabbit_ct_client_helpers:setup_steps()),
166-
case Config2 of
167-
{skip, _} ->
168-
Config2;
169-
_ ->
170-
_ = rabbit_ct_broker_helpers:enable_feature_flag(Config2,
171-
message_containers),
172-
Config2
173-
end;
158+
Config1 = rabbit_ct_helpers:set_config(
159+
Config, [
160+
{rmq_nodename_suffix, Group},
161+
{rmq_nodes_count, ClusterSize}
162+
]),
163+
rabbit_ct_helpers:run_steps(
164+
Config1,
165+
rabbit_ct_broker_helpers:setup_steps() ++
166+
rabbit_ct_client_helpers:setup_steps());
174167
false ->
175168
rabbit_ct_helpers:run_steps(Config, [])
176169
end.

deps/rabbit/test/dynamic_ha_SUITE.erl

Lines changed: 8 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -108,28 +108,14 @@ init_per_testcase(Testcase, Config) ->
108108
rabbit_ct_helpers:testcase_started(Config, Testcase),
109109
ClusterSize = ?config(rmq_nodes_count, Config),
110110
TestNumber = rabbit_ct_helpers:testcase_number(Config, ?MODULE, Testcase),
111-
Config1 = rabbit_ct_helpers:set_config(Config, [
112-
{rmq_nodename_suffix, Testcase},
113-
{tcp_ports_base, {skip_n_nodes, TestNumber * ClusterSize}}
114-
]),
115-
Config2 = rabbit_ct_helpers:run_steps(Config1,
116-
rabbit_ct_broker_helpers:setup_steps() ++
117-
rabbit_ct_client_helpers:setup_steps()),
118-
case Config2 of
119-
{skip, _} ->
120-
Config2;
121-
_ ->
122-
case Testcase of
123-
change_cluster ->
124-
%% do not enable message_containers feature flag as it will
125-
%% stop nodes in mixed versions joining later
126-
ok;
127-
_ ->
128-
_ = rabbit_ct_broker_helpers:enable_feature_flag(
129-
Config2, message_containers)
130-
end,
131-
Config2
132-
end.
111+
Config1 = rabbit_ct_helpers:set_config(
112+
Config, [
113+
{rmq_nodename_suffix, Testcase},
114+
{tcp_ports_base, {skip_n_nodes, TestNumber * ClusterSize}}
115+
]),
116+
rabbit_ct_helpers:run_steps(Config1,
117+
rabbit_ct_broker_helpers:setup_steps() ++
118+
rabbit_ct_client_helpers:setup_steps()).
133119

134120
end_per_testcase(Testcase, Config) ->
135121
Config1 = rabbit_ct_helpers:run_steps(Config,

deps/rabbit/test/dynamic_qq_SUITE.erl

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -81,17 +81,10 @@ init_per_testcase(Testcase, Config) ->
8181
{queue_args, [{<<"x-queue-type">>, longstr, <<"quorum">>},
8282
{<<"x-quorum-initial-group-size">>, long, 3}]}
8383
]),
84-
Config2 = rabbit_ct_helpers:run_steps(
85-
Config1,
86-
rabbit_ct_broker_helpers:setup_steps() ++
87-
rabbit_ct_client_helpers:setup_steps()),
88-
case Config2 of
89-
{skip, _} ->
90-
Config2;
91-
_ ->
92-
_ = rabbit_ct_broker_helpers:enable_feature_flag(Config2, message_containers),
93-
Config2
94-
end
84+
rabbit_ct_helpers:run_steps(
85+
Config1,
86+
rabbit_ct_broker_helpers:setup_steps() ++
87+
rabbit_ct_client_helpers:setup_steps())
9588
end.
9689

9790
end_per_testcase(Testcase, Config) ->

deps/rabbit/test/eager_sync_SUITE.erl

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -64,21 +64,21 @@ init_per_testcase(Testcase, Config) ->
6464
rabbit_ct_helpers:testcase_started(Config, Testcase),
6565
ClusterSize = 3,
6666
TestNumber = rabbit_ct_helpers:testcase_number(Config, ?MODULE, Testcase),
67-
Config1 = rabbit_ct_helpers:set_config(Config, [
68-
{rmq_nodes_count, ClusterSize},
69-
{rmq_nodes_clustered, true},
70-
{rmq_nodename_suffix, Testcase},
71-
{tcp_ports_base, {skip_n_nodes, TestNumber * ClusterSize}}
72-
]),
73-
Config2 = rabbit_ct_helpers:run_steps(
74-
Config1,
75-
rabbit_ct_broker_helpers:setup_steps() ++
76-
rabbit_ct_client_helpers:setup_steps() ++ [
77-
fun rabbit_ct_broker_helpers:set_ha_policy_two_pos/1,
78-
fun rabbit_ct_broker_helpers:set_ha_policy_two_pos_batch_sync/1
79-
]),
80-
_ = rabbit_ct_broker_helpers:enable_feature_flag(Config2, message_containers),
81-
Config2.
67+
Config1 = rabbit_ct_helpers:set_config(
68+
Config, [
69+
{rmq_nodes_count, ClusterSize},
70+
{rmq_nodes_clustered, true},
71+
{rmq_nodename_suffix, Testcase},
72+
{tcp_ports_base, {skip_n_nodes, TestNumber * ClusterSize}}
73+
]),
74+
rabbit_ct_helpers:run_steps(
75+
Config1,
76+
rabbit_ct_broker_helpers:setup_steps() ++
77+
rabbit_ct_client_helpers:setup_steps() ++
78+
[
79+
fun rabbit_ct_broker_helpers:set_ha_policy_two_pos/1,
80+
fun rabbit_ct_broker_helpers:set_ha_policy_two_pos_batch_sync/1
81+
]).
8282

8383
end_per_testcase(Testcase, Config) ->
8484
Config1 = rabbit_ct_helpers:run_steps(Config,

deps/rabbit/test/mc_unit_SUITE.erl

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -371,7 +371,7 @@ amqpl_cc_amqp_bin_amqpl(_Config) ->
371371
Content = #content{properties = Props,
372372
payload_fragments_rev = [<<"data">>]},
373373
X = rabbit_misc:r(<<"/">>, exchange, <<"exch">>),
374-
{ok, Msg} = mc_amqpl:message(X, <<"apple">>, Content, #{}, true),
374+
{ok, Msg} = mc_amqpl:message(X, <<"apple">>, Content, #{}),
375375

376376
RoutingKeys = [<<"apple">>, <<"q1">>, <<"q2">>],
377377
?assertEqual(RoutingKeys, mc:routing_keys(Msg)),
@@ -663,11 +663,12 @@ amqp_amqpl_amqp_bodies(_Config) ->
663663
Ex = #resource{virtual_host = <<"/">>,
664664
kind = exchange,
665665
name = <<"ex">>},
666-
{ok, LegacyMsg} = mc_amqpl:message(Ex, <<"rkey">>,
666+
{ok, LegacyMsg} = mc_amqpl:message(Ex,
667+
<<"rkey">>,
667668
#content{payload_fragments_rev =
668669
lists:reverse(EncodedPayload),
669670
properties = Props},
670-
#{}, true),
671+
#{}),
671672

672673
AmqpMsg = mc:convert(mc_amqp, LegacyMsg),
673674
%% drop any non body sections

0 commit comments

Comments
 (0)