diff options
| -rw-r--r-- | src/rabbit.erl | 3 | ||||
| -rw-r--r-- | src/rabbit_control_main.erl | 6 |
2 files changed, 6 insertions, 3 deletions
diff --git a/src/rabbit.erl b/src/rabbit.erl index 4a9ae6ba76..8e3601da3b 100644 --- a/src/rabbit.erl +++ b/src/rabbit.erl @@ -450,7 +450,8 @@ stop() -> stop_and_halt() -> try - stop() + stop(), + exit(whoops_something_went_wrong) %% TODO REMOVE THIS QA ONLY catch Type:Reason -> rabbit_log:error("Error trying to stop RabbitMQ: ~p:~p", [Type, Reason]), erlang:error({Type, Reason}) diff --git a/src/rabbit_control_main.erl b/src/rabbit_control_main.erl index d220ab3802..c30c9b8f45 100644 --- a/src/rabbit_control_main.erl +++ b/src/rabbit_control_main.erl @@ -285,8 +285,8 @@ shutdown_node_and_wait_pid_to_stop(Node, Pid, Inform) -> "RabbitMQ node ~p running at PID ~s successfully shut down", [Node, Pid]), Res; - {error, Err} -> - {error, {error_during_shutdown, Err}}; + {badrpc, {'EXIT', RpcErr}} -> + {error, {error_during_shutdown, RpcErr}}; _ -> Res end. @@ -295,6 +295,8 @@ action(shutdown, Node, [], _Opts, Inform) -> case rpc:call(Node, os, getpid, []) of Pid when is_list(Pid) -> shutdown_node_and_wait_pid_to_stop(Node, Pid, Inform); + {badrpc, {'EXIT', RpcErr}} -> + {error, {error_during_shutdown, RpcErr}}; Error -> Error end; |
