summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon MacMullen <simon@rabbitmq.com>2014-08-12 12:20:18 +0100
committerSimon MacMullen <simon@rabbitmq.com>2014-08-12 12:20:18 +0100
commit959a65ae92e47ba2fae416278fefb1cec330c61b (patch)
tree933997a08241d59e0bd7ca83ca6de60b03b1d4c6
parent4a5c8c62b4e674120805f4da45a992455595c603 (diff)
downloadrabbitmq-server-959a65ae92e47ba2fae416278fefb1cec330c61b.tar.gz
Reactor - extract common fail case.
-rw-r--r--src/rabbit_mnesia.erl30
1 files changed, 13 insertions, 17 deletions
diff --git a/src/rabbit_mnesia.erl b/src/rabbit_mnesia.erl
index 484bff8c..a499686f 100644
--- a/src/rabbit_mnesia.erl
+++ b/src/rabbit_mnesia.erl
@@ -796,25 +796,21 @@ is_virgin_node() ->
find_auto_cluster_node([]) ->
none;
find_auto_cluster_node([Node | Nodes]) ->
+ Fail = fun (Fmt, Args) ->
+ rabbit_log:warning(
+ "Could not auto-cluster with ~s: " ++ Fmt, [Node | Args]),
+ find_auto_cluster_node(Nodes)
+ end,
case rpc:call(Node, rabbit_mnesia, node_info, []) of
- {badrpc, _} = Reason ->
- rabbit_log:warning("Could not auto-cluster with ~s: ~p~n~s~n",
- [Node, Reason,rabbit_nodes:diagnostics([Node])]),
- find_auto_cluster_node(Nodes);
+ {badrpc, _} = Reason -> Diag = rabbit_nodes:diagnostics([Node]),
+ Fail("~p~n~s~n", [Reason, Diag]);
%% old delegate hash check
- {_OTP, Rabbit, _Hash, _} ->
- rabbit_log:warning(
- "Could not auto-cluster with ~s version ~s~n",
- [Node, Rabbit]),
- find_auto_cluster_node(Nodes);
- {OTP, Rabbit, _} ->
- case check_consistency(OTP, Rabbit) of
- {error, _} -> rabbit_log:warning(
- "Could not auto-cluster with ~s versions ~p~n",
- [Node, {OTP, Rabbit}]),
- find_auto_cluster_node(Nodes);
- ok -> {ok, Node}
- end
+ {_OTP, Rabbit, _Hash, _} -> Fail("version ~s~n", [Rabbit]);
+ {OTP, Rabbit, _} -> case check_consistency(OTP, Rabbit) of
+ {error, _} -> Fail("versions ~p~n",
+ [{OTP, Rabbit}]);
+ ok -> {ok, Node}
+ end
end.
is_only_clustered_disc_node() ->