diff options
| author | Simon MacMullen <simon@rabbitmq.com> | 2014-10-27 14:58:14 +0000 |
|---|---|---|
| committer | Simon MacMullen <simon@rabbitmq.com> | 2014-10-27 14:58:14 +0000 |
| commit | e427d70bb7aee380eaa1a6c48c02eca246b41b50 (patch) | |
| tree | 77f12229b53433e4ad9018a9cde9199361b39f09 /src | |
| parent | a6499ee71ec42b73961a52a32b03358e97ce3d37 (diff) | |
| download | rabbitmq-server-git-e427d70bb7aee380eaa1a6c48c02eca246b41b50.tar.gz | |
Explain what we are doing and why.
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_epmd_monitor.erl | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/rabbit_epmd_monitor.erl b/src/rabbit_epmd_monitor.erl index d5e9cfc94d..261554921a 100644 --- a/src/rabbit_epmd_monitor.erl +++ b/src/rabbit_epmd_monitor.erl @@ -37,11 +37,23 @@ -endif. %%---------------------------------------------------------------------------- +%% It's possible for epmd to be killed out from underneath us. If that +%% happens, then obviously clustering and rabbitmqctl stop +%% working. This process checks up on epmd and restarts it / +%% re-registers us with it if it has gone away. +%% +%% How could epmd be killed? +%% +%% 1) The most popular way for this to happen is when running as a +%% Windows service. The user starts rabbitmqctl first, and this starts +%% epmd under the user's account. When they log out epmd is killed. +%% +%% 2) Some packagings of (non-RabbitMQ?) Erlang apps might do "killall +%% epmd" as a shutdown or uninstall step. +%% ---------------------------------------------------------------------------- start_link() -> gen_server:start_link({local, ?SERVER}, ?MODULE, [], []). -%%---------------------------------------------------------------------------- - init([]) -> {Me, Host} = rabbit_nodes:parts(node()), Mod = net_kernel:epmd_module(), |
