Skip to content

Commit 1f53f1b

Browse files
committed
rabbit_stream_queue_SUITE: Use node 2 as the cluster seed node
... in `add_replica/1`. [Why] In mixed-version testing, node 2 is the old one usually. Therefore, it might not be able to join the new nodes (node 1 and 3).
1 parent 801c15f commit 1f53f1b

File tree

1 file changed

+25
-27
lines changed

1 file changed

+25
-27
lines changed

deps/rabbit/test/rabbit_stream_queue_SUITE.erl

Lines changed: 25 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -540,50 +540,48 @@ add_replica(Config) ->
540540
QQuorum = <<Q/binary, "_quorum">>,
541541

542542
?assertEqual({'queue.declare_ok', Q, 0, 0},
543-
declare(Config, Server0, Q, [{<<"x-queue-type">>, longstr, <<"stream">>}])),
543+
declare(Config, Server1, Q, [{<<"x-queue-type">>, longstr, <<"stream">>}])),
544544
?assertEqual({'queue.declare_ok', QClassic, 0, 0},
545-
declare(Config, Server0, QClassic, [{<<"x-queue-type">>, longstr, <<"classic">>}])),
545+
declare(Config, Server1, QClassic, [{<<"x-queue-type">>, longstr, <<"classic">>}])),
546546
?assertEqual({'queue.declare_ok', QQuorum, 0, 0},
547-
declare(Config, Server0, QQuorum, [{<<"x-queue-type">>, longstr, <<"quorum">>}])),
547+
declare(Config, Server1, QQuorum, [{<<"x-queue-type">>, longstr, <<"quorum">>}])),
548548

549549
%% Not a member of the cluster, what would happen?
550550
?assertEqual({error, node_not_running},
551-
rpc:call(Server0, rabbit_stream_queue, add_replica,
552-
[<<"/">>, Q, Server1])),
551+
rpc:call(Server1, rabbit_stream_queue, add_replica,
552+
[<<"/">>, Q, Server0])),
553553
?assertEqual({error, classic_queue_not_supported},
554-
rpc:call(Server0, rabbit_stream_queue, add_replica,
555-
[<<"/">>, QClassic, Server1])),
554+
rpc:call(Server1, rabbit_stream_queue, add_replica,
555+
[<<"/">>, QClassic, Server0])),
556556
?assertEqual({error, quorum_queue_not_supported},
557-
rpc:call(Server0, rabbit_stream_queue, add_replica,
558-
[<<"/">>, QQuorum, Server1])),
557+
rpc:call(Server1, rabbit_stream_queue, add_replica,
558+
[<<"/">>, QQuorum, Server0])),
559559

560-
ok = rabbit_control_helper:command(stop_app, Server1),
561-
ok = rabbit_control_helper:command(join_cluster, Server1, [atom_to_list(Server0)], []),
562-
rabbit_control_helper:command(start_app, Server1),
560+
Config1 = rabbit_ct_broker_helpers:cluster_nodes(
561+
Config, Server1, [Server0]),
563562
timer:sleep(1000),
564563
?assertEqual({error, classic_queue_not_supported},
565-
rpc:call(Server0, rabbit_stream_queue, add_replica,
566-
[<<"/">>, QClassic, Server1])),
564+
rpc:call(Server1, rabbit_stream_queue, add_replica,
565+
[<<"/">>, QClassic, Server0])),
567566
?assertEqual({error, quorum_queue_not_supported},
568-
rpc:call(Server0, rabbit_stream_queue, add_replica,
569-
[<<"/">>, QQuorum, Server1])),
567+
rpc:call(Server1, rabbit_stream_queue, add_replica,
568+
[<<"/">>, QQuorum, Server0])),
570569
?assertEqual(ok,
571-
rpc:call(Server0, rabbit_stream_queue, add_replica,
572-
[<<"/">>, Q, Server1])),
570+
rpc:call(Server1, rabbit_stream_queue, add_replica,
571+
[<<"/">>, Q, Server0])),
573572
%% replicas must be recorded on the state, and if we publish messages then they must
574573
%% be stored on disk
575-
check_leader_and_replicas(Config, [Server0, Server1]),
574+
check_leader_and_replicas(Config1, [Server1, Server0]),
576575
%% And if we try again? Idempotent
577-
?assertEqual(ok, rpc:call(Server0, rabbit_stream_queue, add_replica,
578-
[<<"/">>, Q, Server1])),
576+
?assertEqual(ok, rpc:call(Server1, rabbit_stream_queue, add_replica,
577+
[<<"/">>, Q, Server0])),
579578
%% Add another node
580-
ok = rabbit_control_helper:command(stop_app, Server2),
581-
ok = rabbit_control_helper:command(join_cluster, Server2, [atom_to_list(Server0)], []),
582-
rabbit_control_helper:command(start_app, Server2),
583-
?assertEqual(ok, rpc:call(Server0, rabbit_stream_queue, add_replica,
579+
Config2 = rabbit_ct_broker_helpers:cluster_nodes(
580+
Config1, Server1, [Server2]),
581+
?assertEqual(ok, rpc:call(Server1, rabbit_stream_queue, add_replica,
584582
[<<"/">>, Q, Server2])),
585-
check_leader_and_replicas(Config, [Server0, Server1, Server2]),
586-
rabbit_ct_broker_helpers:rpc(Config, 0, ?MODULE, delete_testcase_queue, [Q]).
583+
check_leader_and_replicas(Config2, [Server0, Server1, Server2]),
584+
rabbit_ct_broker_helpers:rpc(Config2, Server1, ?MODULE, delete_testcase_queue, [Q]).
587585

588586
delete_replica(Config) ->
589587
[Server0, Server1, Server2] =

0 commit comments

Comments
 (0)