diff options
Diffstat (limited to 'src/ejabberd_app.erl')
-rw-r--r-- | src/ejabberd_app.erl | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/src/ejabberd_app.erl b/src/ejabberd_app.erl index 214c38b21..b23249aa0 100644 --- a/src/ejabberd_app.erl +++ b/src/ejabberd_app.erl @@ -46,9 +46,9 @@ start(normal, _Args) -> start_apps(), start_elixir_application(), ejabberd:check_app(ejabberd), - ejabberd_mnesia:start(), setup_if_elixir_conf_used(), ejabberd_config:start(), + ejabberd_mnesia:start(), set_settings_from_config(), file_queue_init(), maybe_add_nameservers(), @@ -59,6 +59,7 @@ start(normal, _Args) -> {T2, _} = statistics(wall_clock), ?INFO_MSG("ejabberd ~s is started in the node ~p in ~.2fs", [?VERSION, node(), (T2-T1)/1000]), + lists:foreach(fun erlang:garbage_collect/1, processes()), {ok, SupPid}; Err -> Err @@ -88,12 +89,7 @@ stop(_State) -> %%% connect_nodes() -> - Nodes = ejabberd_config:get_option( - cluster_nodes, - fun(Ns) -> - true = lists:all(fun is_atom/1, Ns), - Ns - end, []), + Nodes = ejabberd_config:get_option(cluster_nodes, []), lists:foreach(fun(Node) -> net_kernel:connect_node(Node) end, Nodes). @@ -141,10 +137,7 @@ delete_pid_file() -> end. set_settings_from_config() -> - Ticktime = ejabberd_config:get_option( - net_ticktime, - opt_type(net_ticktime), - 60), + Ticktime = ejabberd_config:get_option(net_ticktime, 60), net_kernel:set_net_ticktime(Ticktime). file_queue_init() -> @@ -161,6 +154,7 @@ start_apps() -> crypto:start(), ejabberd:start_app(sasl), ejabberd:start_app(ssl), + ejabberd:start_app(p1_utils), ejabberd:start_app(fast_yaml), ejabberd:start_app(fast_tls), ejabberd:start_app(xmpp), |