summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon MacMullen <simon@rabbitmq.com>2013-03-06 15:45:47 +0000
committerSimon MacMullen <simon@rabbitmq.com>2013-03-06 15:45:47 +0000
commit2e55dc4d5db9f4c782c96e16a0769bd9e86d9f1b (patch)
treeb3c135df6dea45b40eae875b3d1b31be39b5f29d
parentfebba0f6d331e91226eba91586a7889796e4ea1d (diff)
downloadrabbitmq-server-bug25358.tar.gz
Register the process name to make sure we only have one running at a time.bug25358
-rw-r--r--src/rabbit_node_monitor.erl3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/rabbit_node_monitor.erl b/src/rabbit_node_monitor.erl
index 55b078c3..47c753e3 100644
--- a/src/rabbit_node_monitor.erl
+++ b/src/rabbit_node_monitor.erl
@@ -312,6 +312,9 @@ await_cluster_recovery() ->
%% If our group leader is inside an application we are about
%% to stop, application:stop/1 does not return.
group_leader(whereis(init), self()),
+ %% Ensure only one restarting process at a time, will
+ %% exit(badarg) (harmlessly) if one is already running
+ register(rabbit_restarting_process, self()),
rabbit:stop(),
wait_for_cluster_recovery(Nodes)
end).