Skip to content

Instantly share code, notes, and snippets.

@boorad
Created August 14, 2009 18:28
Show Gist options
  • Save boorad/168000 to your computer and use it in GitHub Desktop.
Save boorad/168000 to your computer and use it in GitHub Desktop.
check_nodes() ->
ErlangNodes = lists:usort([node() | erlang:nodes()]),
{ok, MemNodeList} = membership2:nodes(),
MemNodes = lists:usort(MemNodeList),
{ok, PMap} = partitions(),
{PMapNodeList, _PMapPartList} = lists:unzip(PMap),
PMapNodes = lists:usort(PMapNodeList),
case ErlangNodes =:= MemNodes andalso
ErlangNodes =:= PMapNodes andalso
MemNodes =:= PMapNodes of
true -> true;
_ ->
Msg = "Node Lists do not match.~n"
"Erlang Nodes : ~p~n"
"Membership Nodes : ~p~n"
"PMap Nodes : ~p~n",
Lst = [ErlangNodes, MemNodes, PMapNodes],
?LOG_ERROR(Msg, Lst),
io:format(Msg, Lst),
false
end.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment