From 440307081bbff08cbd3c5dd4cc480b8c64582b40 Mon Sep 17 00:00:00 2001 From: Feng Lee Date: Thu, 23 Mar 2017 18:37:04 +0800 Subject: [PATCH] Check if the node is in cluster before remove --- src/emqttd_cluster.erl | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/emqttd_cluster.erl b/src/emqttd_cluster.erl index 7990a5d51..ab40875aa 100644 --- a/src/emqttd_cluster.erl +++ b/src/emqttd_cluster.erl @@ -73,12 +73,14 @@ remove(Node) when Node =:= node() -> {error, {cannot_remove_self, Node}}; remove(Node) -> - case rpc:call(Node, ?MODULE, prepare, []) of + case is_clustered(Node) andalso rpc:call(Node, ?MODULE, prepare, []) of ok -> case emqttd_mnesia:remove_from_cluster(Node) of ok -> rpc:call(Node, ?MODULE, reboot, []); Error -> Error end; + false -> + {error, node_not_in_cluster}; {badrpc, nodedown} -> emqttd_mnesia:remove_from_cluster(Node); {badrpc, Reason} ->