summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon MacMullen <simon@rabbitmq.com>2013-01-03 17:03:59 +0000
committerSimon MacMullen <simon@rabbitmq.com>2013-01-03 17:03:59 +0000
commit32b0db675b3b32ed643ca4d551d1bad318379deb (patch)
tree9b83c8b98f273eac4ac8efaa69d72b0603a85331
parentf713c839e78b451f060a1ea784d0f7b3b2e360d2 (diff)
downloadrabbitmq-server-32b0db675b3b32ed643ca4d551d1bad318379deb.tar.gz
API consistency.
-rw-r--r--src/rabbit_amqqueue.erl11
-rw-r--r--src/rabbit_control_main.erl9
2 files changed, 8 insertions, 12 deletions
diff --git a/src/rabbit_amqqueue.erl b/src/rabbit_amqqueue.erl
index 3169948b..35b4fadf 100644
--- a/src/rabbit_amqqueue.erl
+++ b/src/rabbit_amqqueue.erl
@@ -31,7 +31,7 @@
-export([notify_down_all/2, limit_all/3]).
-export([on_node_down/1]).
-export([update/2, store_queue/1, policy_changed/2]).
--export([start_mirroring/1, stop_mirroring/1, sync/2]).
+-export([start_mirroring/1, stop_mirroring/1, sync_mirrors/1]).
%% internal
-export([internal_declare/2, internal_delete/1, run_backing_queue/3,
@@ -173,7 +173,7 @@
(rabbit_types:amqqueue(), rabbit_types:amqqueue()) -> 'ok').
-spec(start_mirroring/1 :: (pid()) -> 'ok').
-spec(stop_mirroring/1 :: (pid()) -> 'ok').
--spec(sync/2 :: (binary(), rabbit_types:vhost()) ->
+-spec(sync_mirrors/1 :: (pid()) ->
'ok' | rabbit_types:error('pending_acks' | 'not_mirrored')).
-endif.
@@ -592,12 +592,7 @@ set_maximum_since_use(QPid, Age) ->
start_mirroring(QPid) -> ok = delegate_cast(QPid, start_mirroring).
stop_mirroring(QPid) -> ok = delegate_cast(QPid, stop_mirroring).
-sync(QNameBin, VHostBin) ->
- QName = rabbit_misc:r(VHostBin, queue, QNameBin),
- case lookup(QName) of
- {ok, #amqqueue{pid = QPid}} -> delegate_call(QPid, sync_mirrors);
- E -> E
- end.
+sync_mirrors(QPid) -> delegate_call(QPid, sync_mirrors).
on_node_down(Node) ->
rabbit_misc:execute_mnesia_tx_with_tail(
diff --git a/src/rabbit_control_main.erl b/src/rabbit_control_main.erl
index 819435ee..24528e32 100644
--- a/src/rabbit_control_main.erl
+++ b/src/rabbit_control_main.erl
@@ -281,11 +281,12 @@ action(forget_cluster_node, Node, [ClusterNodeS], Opts, Inform) ->
rpc_call(Node, rabbit_mnesia, forget_cluster_node,
[ClusterNode, RemoveWhenOffline]);
-action(sync_queue, Node, [Queue], Opts, Inform) ->
+action(sync_queue, Node, [Q], Opts, Inform) ->
VHost = proplists:get_value(?VHOST_OPT, Opts),
- Inform("Synchronising queue \"~s\" in vhost \"~s\"", [Queue, VHost]),
- rpc_call(Node, rabbit_amqqueue, sync,
- [list_to_binary(Queue), list_to_binary(VHost)]);
+ Inform("Synchronising queue \"~s\" in vhost \"~s\"", [Q, VHost]),
+ rpc_call(Node, rabbit_amqqueue, with,
+ [rabbit_misc:r(list_to_binary(VHost), queue, list_to_binary(Q)),
+ fun(#amqqueue{pid = P}) -> rabbit_amqqueue:sync_mirrors(P) end]);
action(wait, Node, [PidFile], _Opts, Inform) ->
Inform("Waiting for ~p", [Node]),