diff options
| author | Michael Klishin <michael@novemberain.com> | 2019-01-16 03:37:05 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-01-16 03:37:05 +0300 |
| commit | 488d55c9885087f706ea5860e4c332403e62f7c6 (patch) | |
| tree | 3cf0d78a222809dfb3296560b03745d27b90775b /test | |
| parent | 46d995d1d9a13f3ba9705bbdaa6dc068814dd03c (diff) | |
| parent | bddfe15cb4ddbcb2c9d2d05ce99bfd5ad6fc03fc (diff) | |
| download | rabbitmq-server-git-488d55c9885087f706ea5860e4c332403e62f7c6.tar.gz | |
Merge pull request #1823 from rabbitmq/delete_quorum_queue_fixes
Improve quorum queue deletion
Diffstat (limited to 'test')
| -rw-r--r-- | test/quorum_queue_SUITE.erl | 28 |
1 files changed, 17 insertions, 11 deletions
diff --git a/test/quorum_queue_SUITE.erl b/test/quorum_queue_SUITE.erl index 0beecf6c79..dcba910a6a 100644 --- a/test/quorum_queue_SUITE.erl +++ b/test/quorum_queue_SUITE.erl @@ -1773,22 +1773,28 @@ cleanup_data_dir(Config) -> declare(Ch, QQ, [{<<"x-queue-type">>, longstr, <<"quorum">>}])), timer:sleep(100), - [{_, UId}] = rpc:call(Server1, ra_directory, list_registered, []), - DataDir = rpc:call(Server1, ra_env, server_data_dir, [UId]), - ?assert(filelib:is_dir(DataDir)), + [{_, UId1}] = rpc:call(Server1, ra_directory, list_registered, []), + [{_, UId2}] = rpc:call(Server2, ra_directory, list_registered, []), + DataDir1 = rpc:call(Server1, ra_env, server_data_dir, [UId1]), + DataDir2 = rpc:call(Server2, ra_env, server_data_dir, [UId2]), + ?assert(filelib:is_dir(DataDir1)), + ?assert(filelib:is_dir(DataDir2)), ok = rabbit_ct_broker_helpers:stop_node(Config, Server2), - ?assertExit({{shutdown, - {connection_closing, {server_initiated_close, 541, _}}}, _}, - amqp_channel:call(Ch, #'queue.delete'{queue = QQ})), - catch amqp_channel:call(Ch, #'queue.delete'{queue = QQ}), - ?assert(filelib:is_dir(DataDir)), + ?assertMatch(#'queue.delete_ok'{}, + amqp_channel:call(Ch, #'queue.delete'{queue = QQ})), + ok = rabbit_ct_broker_helpers:stop_node(Config, Server2), + %% data dir 1 should be force deleted at this point + ?assert(not filelib:is_dir(DataDir1)), + ?assert(filelib:is_dir(DataDir2)), + ok = rabbit_ct_broker_helpers:start_node(Config, Server2), + timer:sleep(2000), ?assertEqual(ok, - rpc:call(Server1, rabbit_quorum_queue, cleanup_data_dir, - [])), - ?assert(not filelib:is_dir(DataDir)). + rpc:call(Server2, rabbit_quorum_queue, cleanup_data_dir, [])), + ?assert(not filelib:is_dir(DataDir2)), + ok. reconnect_consumer_and_publish(Config) -> [Server | _] = Servers = |
