diff options
| author | Michael Klishin <michael@clojurewerkz.org> | 2016-06-08 02:54:24 +0300 |
|---|---|---|
| committer | Michael Klishin <michael@clojurewerkz.org> | 2016-06-08 02:54:24 +0300 |
| commit | d59ac4c4700e370a8bb27864fdcd15cc5dcece19 (patch) | |
| tree | b90fbea77ea8f9f0e275b5877bceb655e332d38b /src | |
| parent | 734be9304f1855ee2042d3924c62991ea33eb3d3 (diff) | |
| download | rabbitmq-server-git-d59ac4c4700e370a8bb27864fdcd15cc5dcece19.tar.gz | |
Extract rabbit_mirror_queue_misc:sync_queue/1 and cancel_sync_queue/1
Having these functions outside of rabbit_control_main makes
it possible to use them in other tools, e.g. an alternative CLI
implementation.
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_control_main.erl | 8 | ||||
| -rw-r--r-- | src/rabbit_mirror_queue_misc.erl | 12 |
2 files changed, 14 insertions, 6 deletions
diff --git a/src/rabbit_control_main.erl b/src/rabbit_control_main.erl index 2df4fd96c0..271ca4484e 100644 --- a/src/rabbit_control_main.erl +++ b/src/rabbit_control_main.erl @@ -675,14 +675,10 @@ action(list_consumers, Node, _Args, Opts, Inform, Timeout) -> format_parse_error({_Line, Mod, Err}) -> lists:flatten(Mod:format_error(Err)). sync_queue(Q) -> - rabbit_amqqueue:with( - Q, fun(#amqqueue{pid = QPid}) -> rabbit_amqqueue:sync_mirrors(QPid) end). + rabbit_mirror_queue_misc:sync_queue(Q). cancel_sync_queue(Q) -> - rabbit_amqqueue:with( - Q, fun(#amqqueue{pid = QPid}) -> - rabbit_amqqueue:cancel_sync_mirrors(QPid) - end). + rabbit_mirror_queue_misc:cancel_sync_queue(Q). purge_queue(Q) -> rabbit_amqqueue:with( diff --git a/src/rabbit_mirror_queue_misc.erl b/src/rabbit_mirror_queue_misc.erl index 849efa3611..fad20711aa 100644 --- a/src/rabbit_mirror_queue_misc.erl +++ b/src/rabbit_mirror_queue_misc.erl @@ -24,6 +24,8 @@ maybe_auto_sync/1, maybe_drop_master_after_sync/1, sync_batch_size/1, log_info/3, log_warning/3]). +-export([sync_queue/1, cancel_sync_queue/1]). + %% for testing only -export([module/1]). @@ -364,6 +366,16 @@ maybe_auto_sync(Q = #amqqueue{pid = QPid}) -> ok end. +sync_queue(Q) -> + rabbit_amqqueue:with( + Q, fun(#amqqueue{pid = QPid}) -> rabbit_amqqueue:sync_mirrors(QPid) end). + +cancel_sync_queue(Q) -> + rabbit_amqqueue:with( + Q, fun(#amqqueue{pid = QPid}) -> + rabbit_amqqueue:cancel_sync_mirrors(QPid) + end). + sync_batch_size(#amqqueue{} = Q) -> case policy(<<"ha-sync-batch-size">>, Q) of none -> %% we need this case because none > 1 == true |
