diff options
| author | Emile Joubert <emile@rabbitmq.com> | 2012-03-26 11:41:30 +0100 |
|---|---|---|
| committer | Emile Joubert <emile@rabbitmq.com> | 2012-03-26 11:41:30 +0100 |
| commit | f6d9f7d47f7ed534382789ec42612e40d47911e4 (patch) | |
| tree | ddcc04c5384bff2e684c61bf3d3f08dd04a72611 /src | |
| parent | 41c63bda8acf97fa9a6ee4dc8507a962ca913755 (diff) | |
| parent | df44a0dc98e591e1c92863264d925d4f8a3e844f (diff) | |
| download | rabbitmq-server-git-f6d9f7d47f7ed534382789ec42612e40d47911e4.tar.gz | |
Merge heads
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit.erl | 4 | ||||
| -rw-r--r-- | src/rabbit_alarm.erl | 14 |
2 files changed, 11 insertions, 7 deletions
diff --git a/src/rabbit.erl b/src/rabbit.erl index dd5fb89ce4..84a08412c2 100644 --- a/src/rabbit.erl +++ b/src/rabbit.erl @@ -327,7 +327,9 @@ status() -> [{vm_memory_high_watermark, {vm_memory_monitor, get_vm_memory_high_watermark, []}}, {vm_memory_limit, {vm_memory_monitor, - get_memory_limit, []}}]), + get_memory_limit, []}}, + {disk_free_limit, {disk_monitor, + get_disk_free_limit, []}}]), S3 = rabbit_misc:with_exit_handler( fun () -> [] end, fun () -> [{file_descriptors, file_handle_cache:info()}] end), diff --git a/src/rabbit_alarm.erl b/src/rabbit_alarm.erl index d59d37e1e6..d207fe00ef 100644 --- a/src/rabbit_alarm.erl +++ b/src/rabbit_alarm.erl @@ -48,9 +48,10 @@ start() -> {ok, DiskLimit} = application:get_env(disk_free_limit), rabbit_sup:start_restartable_child(rabbit_disk_monitor, [DiskLimit]), - case rabbit_disk_monitor:get_disk_free() of - Number when is_integer(Number) -> ok; - _ -> error_logger:warning_msg("Disabling disk free space monitoring~n"), + case {vm_memory_monitor:get_total_memory(), rabbit_disk_monitor:get_disk_free()} of + {N1, N2} when is_integer(N1), is_integer(N2) -> ok; + _ -> error_logger:warning_msg("Disabling disk free space monitoring " + "on unsupported platform~n"), ok = rabbit_sup:stop_child(rabbit_disk_monitor_sup) end, ok. @@ -103,7 +104,7 @@ handle_event({node_up, Node}, State) -> {ok, State}; handle_event({node_down, Node}, State) -> - {ok, maybe_alert(fun dict_unappend/3, Node, '$all_values', State)}; + {ok, maybe_alert(fun dict_unappend_all/2, Node, [], State)}; handle_event({register, Pid, HighMemMFA}, State) -> {ok, internal_register(Pid, HighMemMFA, State)}; @@ -126,8 +127,9 @@ code_change(_OldVsn, State, _Extra) -> %%---------------------------------------------------------------------------- -dict_unappend(Key, '$all_values', Dict) -> - dict:erase(Key, Dict); +dict_unappend_all(Key, Dict) -> + dict:erase(Key, Dict). + dict_unappend(Key, Val, Dict) -> case lists:delete(Val, dict:fetch(Key, Dict)) of [] -> dict:erase(Key, Dict); |
