Add badtcp clause to handle gen_rpc (#2314)
This commit is contained in:
parent
901bbdedd6
commit
29f4faa7dd
|
@ -21,10 +21,30 @@
|
||||||
-define(RPC, gen_rpc).
|
-define(RPC, gen_rpc).
|
||||||
|
|
||||||
call(Node, Mod, Fun, Args) ->
|
call(Node, Mod, Fun, Args) ->
|
||||||
?RPC:call(Node, Mod, Fun, Args).
|
filter_result(?RPC:call(Node, Mod, Fun, Args)).
|
||||||
|
|
||||||
multicall(Nodes, Mod, Fun, Args) ->
|
multicall(Nodes, Mod, Fun, Args) ->
|
||||||
?RPC:multicall(Nodes, Mod, Fun, Args).
|
filter_results(?RPC:multicall(Nodes, Mod, Fun, Args)).
|
||||||
|
|
||||||
cast(Node, Mod, Fun, Args) ->
|
cast(Node, Mod, Fun, Args) ->
|
||||||
?RPC:cast(Node, Mod, Fun, Args).
|
filter_result(?RPC:cast(Node, Mod, Fun, Args)).
|
||||||
|
|
||||||
|
filter_result(Delivery) ->
|
||||||
|
case Delivery of
|
||||||
|
{badrpc, Reason} -> {badrpc, Reason};
|
||||||
|
{badtcp, Reason} -> {badrpc, Reason};
|
||||||
|
Delivery1 -> Delivery1
|
||||||
|
end.
|
||||||
|
|
||||||
|
filter_results(Deliverys) ->
|
||||||
|
filter_results(Deliverys, []).
|
||||||
|
|
||||||
|
filter_results([], Acc) ->
|
||||||
|
Acc;
|
||||||
|
filter_results([Delivery | WaitDelivery], Acc) ->
|
||||||
|
case Delivery of
|
||||||
|
{badrpc, Reason} -> [{badrpc, Reason} | Acc], filter_results(WaitDelivery, Acc);
|
||||||
|
{badtcp, Reason} -> [{badrpc, Reason} | Acc], filter_results(WaitDelivery, Acc);
|
||||||
|
Delivery1 -> [Delivery1 | Acc], filter_results(WaitDelivery, Acc)
|
||||||
|
end.
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue