summaryrefslogtreecommitdiff
path: root/src/rabbit.erl
diff options
context:
space:
mode:
authorMarek Majkowski <majek@lshift.net>2009-09-16 14:42:17 +0100
committerMarek Majkowski <majek@lshift.net>2009-09-16 14:42:17 +0100
commit44b553f111c613b76ff21f372ff919bf7514435d (patch)
tree6b0fb0b82825b03424e5bfa457545b16f783368d /src/rabbit.erl
parent5d2bd75617efc5b70a96650b4b9cf93fe51224c2 (diff)
downloadrabbitmq-server-git-44b553f111c613b76ff21f372ff919bf7514435d.tar.gz
new memsup code
Diffstat (limited to 'src/rabbit.erl')
-rw-r--r--src/rabbit.erl15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/rabbit.erl b/src/rabbit.erl
index ef1e004996..875021aa6c 100644
--- a/src/rabbit.erl
+++ b/src/rabbit.erl
@@ -136,8 +136,12 @@ start(normal, []) ->
ok = rabbit_binary_generator:
check_empty_content_body_frame_size(),
- {ok, MemoryAlarms} = application:get_env(memory_alarms),
- ok = rabbit_alarm:start(MemoryAlarms),
+ ok = rabbit_alarm:start(),
+ case application:get_env(memory_high_watermark) of
+ {ok, false} -> ok;
+ {ok, off} -> ok;
+ {ok, Float} -> start_child(rabbit_memguard, [Float])
+ end,
ok = rabbit_amqqueue:start(),
@@ -252,6 +256,13 @@ start_child(Mod) ->
transient, 100, worker, [Mod]}),
ok.
+start_child(Mod, Args) ->
+ {ok,_} = supervisor:start_child(rabbit_sup,
+ {Mod, {Mod, start_link, Args},
+ transient, 100, worker, [Mod]}),
+ ok.
+
+
ensure_working_log_handlers() ->
Handlers = gen_event:which_handlers(error_logger),
ok = ensure_working_log_handler(error_logger_file_h,