summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorMichael Klishin <michael@novemberain.com>2016-06-28 16:19:29 +0300
committerGitHub <noreply@github.com>2016-06-28 16:19:29 +0300
commitb655d4cef1a835aed5f8b7be6095a6ce4bf88529 (patch)
treec8f7686184c79bfa23585d7dd24b05643166d01a /test
parent16851f9ea5f727e6bf219def5816e394a8b7819c (diff)
parente0051b72b1e6926ab8e023dec86d9b15833cc064 (diff)
downloadrabbitmq-server-git-b655d4cef1a835aed5f8b7be6095a6ce4bf88529.tar.gz
Merge pull request #865 from rabbitmq/rabbitmq-server-863
Stop pending slaves on restart
Diffstat (limited to 'test')
-rw-r--r--test/priority_queue_SUITE.erl33
1 files changed, 32 insertions, 1 deletions
diff --git a/test/priority_queue_SUITE.erl b/test/priority_queue_SUITE.erl
index 46fafd89f7..39ed3af69a 100644
--- a/test/priority_queue_SUITE.erl
+++ b/test/priority_queue_SUITE.erl
@@ -49,7 +49,8 @@ groups() ->
{cluster_size_3, [], [
mirror_queue_auto_ack,
mirror_fast_reset_policy,
- mirror_reset_policy
+ mirror_reset_policy,
+ mirror_stop_pending_slaves
]}
].
@@ -523,6 +524,36 @@ mirror_reset_policy(Config, Wait) ->
rabbit_ct_client_helpers:close_connection(Conn),
passed.
+mirror_stop_pending_slaves(Config) ->
+ A = rabbit_ct_broker_helpers:get_node_config(Config, 0, nodename),
+ B = rabbit_ct_broker_helpers:get_node_config(Config, 1, nodename),
+ C = rabbit_ct_broker_helpers:get_node_config(Config, 2, nodename),
+
+ [ok = rabbit_ct_broker_helpers:rpc(
+ Config, Nodename, application, set_env, [rabbit, slave_wait_timeout, 0]) || Nodename <- [A, B, C]],
+
+ {Conn, Ch} = rabbit_ct_client_helpers:open_connection_and_channel(Config, A),
+ Q = <<"mirror_stop_pending_slaves-queue">>,
+ declare(Ch, Q, 5),
+ publish_many(Ch, Q, 20000),
+
+ [begin
+ rabbit_ct_broker_helpers:set_ha_policy(
+ Config, A, <<"^mirror_stop_pending_slaves-queue$">>, <<"all">>,
+ [{<<"ha-sync-mode">>, <<"automatic">>}]),
+ wait_for_sync(Config, A, rabbit_misc:r(<<"/">>, queue, Q), 2),
+ rabbit_ct_broker_helpers:clear_policy(
+ Config, A, <<"^mirror_stop_pending_slaves-queue$">>)
+ end || _ <- lists:seq(1, 15)],
+
+ delete(Ch, Q),
+
+ [ok = rabbit_ct_broker_helpers:rpc(
+ Config, Nodename, application, set_env, [rabbit, slave_wait_timeout, 15000]) || Nodename <- [A, B, C]],
+
+ rabbit_ct_client_helpers:close_connection(Conn),
+ passed.
+
%%----------------------------------------------------------------------------
declare(Ch, Q, Args) when is_list(Args) ->