Handle {ongoing_change_to, NewValue} responses from net_kernel:set_net_ticktime/2

See rabbitmq/rabbitmq-server#1524 and rabbitmq/rabbitmq-server#1522 for details.
This commit is contained in:
Michael Klishin 2018-02-22 20:14:35 +03:00
parent b0ef541275
commit 75e2f71562
1 changed files with 8 additions and 2 deletions

View File

@ -1172,8 +1172,14 @@ rpc_call(Node, Mod, Fun, Args) ->
rpc_call(Node, Mod, Fun, Args, Timeout) ->
case rpc:call(Node, net_kernel, get_net_ticktime, [], Timeout) of
{badrpc, _} = E -> E;
Time -> _ = net_kernel:set_net_ticktime(Time, 0),
rpc:call(Node, Mod, Fun, Args, Timeout)
ignored ->
rpc:call(Node, Mod, Fun, Args, Timeout);
{ongoing_change_to, NewValue} ->
_ = net_kernel:set_net_ticktime(NewValue, 0),
rpc:call(Node, Mod, Fun, Args, Timeout);
Time ->
_ = net_kernel:set_net_ticktime(Time, 0),
rpc:call(Node, Mod, Fun, Args, Timeout)
end.
guess_number_of_cpu_cores() ->