diff options
| author | kjnilsson <knilsson@pivotal.io> | 2019-12-12 15:17:18 +0000 |
|---|---|---|
| committer | kjnilsson <knilsson@pivotal.io> | 2019-12-12 15:17:18 +0000 |
| commit | bdede1ae94a28a2855bb1701872d2c7a56dcc6d3 (patch) | |
| tree | 9227a37c823501db3d636cd284ba0fccf2ce69bd | |
| parent | 2962cad98247c9fdd11315742293a44eece7e598 (diff) | |
| download | rabbitmq-server-git-bdede1ae94a28a2855bb1701872d2c7a56dcc6d3.tar.gz | |
Ensure list_local_quorum_queues works
on both follower and leader nodes.
| -rw-r--r-- | src/rabbit_amqqueue.erl | 6 | ||||
| -rw-r--r-- | test/quorum_queue_SUITE.erl | 8 |
2 files changed, 7 insertions, 7 deletions
diff --git a/src/rabbit_amqqueue.erl b/src/rabbit_amqqueue.erl index b3ae071b7b..6227a5bbfa 100644 --- a/src/rabbit_amqqueue.erl +++ b/src/rabbit_amqqueue.erl @@ -1006,15 +1006,13 @@ list_by_type(Type) -> list_local_quorum_queue_names() -> [ amqqueue:get_name(Q) || Q <- list_by_type(quorum), amqqueue:get_state(Q) =/= crashed, - lists:member(node(), get_quorum_nodes(Q)), - is_local_to_node(amqqueue:get_pid(Q), node())]. + lists:member(node(), get_quorum_nodes(Q))]. -spec list_local_quorum_queues() -> [amqqueue:amqqueue()]. list_local_quorum_queues() -> [ Q || Q <- list_by_type(quorum), amqqueue:get_state(Q) =/= crashed, - lists:member(node(), get_quorum_nodes(Q)), - is_local_to_node(amqqueue:get_pid(Q), node())]. + lists:member(node(), get_quorum_nodes(Q))]. -spec list_local_leaders() -> [amqqueue:amqqueue()]. list_local_leaders() -> diff --git a/test/quorum_queue_SUITE.erl b/test/quorum_queue_SUITE.erl index eff5e7c5ce..808d4470aa 100644 --- a/test/quorum_queue_SUITE.erl +++ b/test/quorum_queue_SUITE.erl @@ -1395,14 +1395,16 @@ delete_member_not_a_member(Config) -> %% their quorum. See rabbitmq/rabbitmq-cli#389 for background. node_removal_is_quorum_critical(Config) -> - [Server | _] = rabbit_ct_broker_helpers:get_node_configs(Config, nodename), + [Server | _] = Servers = rabbit_ct_broker_helpers:get_node_configs(Config, nodename), Ch = rabbit_ct_client_helpers:open_channel(Config, Server), QName = ?config(queue_name, Config), ?assertEqual({'queue.declare_ok', QName, 0, 0}, declare(Ch, QName, [{<<"x-queue-type">>, longstr, <<"quorum">>}])), timer:sleep(100), - Qs = rpc:call(Server, rabbit_quorum_queue, list_with_minimum_quorum, []), - ?assertEqual([QName], queue_names(Qs)). + [begin + Qs = rpc:call(S, rabbit_quorum_queue, list_with_minimum_quorum, []), + ?assertEqual([QName], queue_names(Qs)) + end || S <- Servers]. node_removal_is_not_quorum_critical(Config) -> [Server | _] = rabbit_ct_broker_helpers:get_node_configs(Config, nodename), |
