diff options
| -rw-r--r-- | src/rabbit_vhost_sup_wrapper.erl | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/rabbit_vhost_sup_wrapper.erl b/src/rabbit_vhost_sup_wrapper.erl index 8e23389bb9..4ae68cdd75 100644 --- a/src/rabbit_vhost_sup_wrapper.erl +++ b/src/rabbit_vhost_sup_wrapper.erl @@ -29,7 +29,12 @@ start_link(VHost) -> %% Using supervisor, because supervisor2 does not stop a started child when %% another one fails to start. Bug? - supervisor:start_link(?MODULE, [VHost]). + case rabbit_vhost_sup_sup:get_vhost_sup(VHost) of + {ok, Pid} -> + {error, {already_started, Pid}}; + {error, _} -> + supervisor:start_link(?MODULE, [VHost]) + end. init([VHost]) -> %% 2 restarts in 5 minutes. One per message store. |
