diff options
author | Christophe Romain <christophe.romain@process-one.net> | 2015-11-04 16:24:35 +0100 |
---|---|---|
committer | Christophe Romain <christophe.romain@process-one.net> | 2015-11-04 16:24:35 +0100 |
commit | 341be9b6820d2d2ee0113dce3f66b0d6571fd95f (patch) | |
tree | debe59f56f02704a81bdf5b9a99e5c9b43832946 | |
parent | Add copyright and license to HTTP upload modules (diff) |
Remove supervisor option, disable it for c2s and muc
Diffstat (limited to '')
-rw-r--r-- | configure.ac | 9 | ||||
-rw-r--r-- | rebar.config.script | 2 | ||||
-rw-r--r-- | src/ejabberd_c2s.erl | 13 | ||||
-rw-r--r-- | src/ejabberd_s2s_in.erl | 19 | ||||
-rw-r--r-- | src/ejabberd_s2s_out.erl | 12 | ||||
-rw-r--r-- | src/ejabberd_sup.erl | 8 | ||||
-rw-r--r-- | src/mod_muc.erl | 15 | ||||
-rw-r--r-- | src/mod_muc_room.erl | 25 | ||||
-rw-r--r-- | vars.config.in | 1 |
9 files changed, 14 insertions, 90 deletions
diff --git a/configure.ac b/configure.ac index c7e7bcd4..57b9aa74 100644 --- a/configure.ac +++ b/configure.ac @@ -83,14 +83,6 @@ AC_ARG_ENABLE(roster_gateway_workaround, *) AC_MSG_ERROR(bad value ${enableval} for --enable-roster-gateway-workaround) ;; esac],[roster_gateway_workaround=false]) -AC_ARG_ENABLE(transient_supervisors, -[AC_HELP_STRING([--disable-transient-supervisors], [disable Erlang supervision for transient processes (default: no)])], -[case "${enableval}" in - yes) transient_supervisors=true ;; - no) transient_supervisors=false ;; - *) AC_MSG_ERROR(bad value ${enableval} for --enable-transient_supervisors) ;; -esac],[transient_supervisors=true]) - AC_ARG_ENABLE(full_xml, [AC_HELP_STRING([--enable-full-xml], [use XML features in XMPP stream (ex: CDATA) (default: no, requires XML compliant clients)])], [case "${enableval}" in @@ -256,7 +248,6 @@ fi AC_SUBST(hipe) AC_SUBST(roster_gateway_workaround) -AC_SUBST(transient_supervisors) AC_SUBST(full_xml) AC_SUBST(nif) AC_SUBST(db_type) diff --git a/rebar.config.script b/rebar.config.script index e0a8923c..cdd2a65c 100644 --- a/rebar.config.script +++ b/rebar.config.script @@ -19,8 +19,6 @@ Cfg = case file:consult("vars.config") of Macros = lists:flatmap( fun({roster_gateway_workaround, true}) -> [{d, 'ROSTER_GATEWAY_WORKAROUND'}]; - ({transient_supervisors, false}) -> - [{d, 'NO_TRANSIENT_SUPERVISORS'}]; ({nif, true}) -> [{d, 'NIF'}]; ({db_type, mssql}) -> diff --git a/src/ejabberd_c2s.erl b/src/ejabberd_c2s.erl index 69b46523..57cf5064 100644 --- a/src/ejabberd_c2s.erl +++ b/src/ejabberd_c2s.erl @@ -129,15 +129,6 @@ -endif. -%% Module start with or without supervisor: --ifdef(NO_TRANSIENT_SUPERVISORS). --define(SUPERVISOR_START, ?GEN_FSM:start(ejabberd_c2s, [SockData, Opts], - fsm_limit_opts(Opts) ++ ?FSMOPTS)). --else. --define(SUPERVISOR_START, supervisor:start_child(ejabberd_c2s_sup, - [SockData, Opts])). --endif. - %% This is the timeout to apply between event when starting a new %% session: -define(C2S_OPEN_TIMEOUT, 60000). @@ -201,7 +192,9 @@ %%% API %%%---------------------------------------------------------------------- start(SockData, Opts) -> - ?SUPERVISOR_START. + ?GEN_FSM:start(ejabberd_c2s, + [SockData, Opts], + fsm_limit_opts(Opts) ++ ?FSMOPTS). start_link(SockData, Opts) -> (?GEN_FSM):start_link(ejabberd_c2s, diff --git a/src/ejabberd_s2s_in.erl b/src/ejabberd_s2s_in.erl index d840c315..e655397b 100644 --- a/src/ejabberd_s2s_in.erl +++ b/src/ejabberd_s2s_in.erl @@ -74,21 +74,6 @@ -endif. -%% Module start with or without supervisor: --ifdef(NO_TRANSIENT_SUPERVISORS). - --define(SUPERVISOR_START, - p1_fsm:start(ejabberd_s2s_in, [SockData, Opts], - ?FSMOPTS ++ fsm_limit_opts(Opts))). - --else. - --define(SUPERVISOR_START, - supervisor:start_child(ejabberd_s2s_in_sup, - [SockData, Opts])). - --endif. - -define(STREAM_HEADER(Version), <<"<?xml version='1.0'?><stream:stream " "xmlns:stream='http://etherx.jabber.org/stream" @@ -111,7 +96,9 @@ -define(INVALID_XML_ERR, xml:element_to_binary(?SERR_XML_NOT_WELL_FORMED)). -start(SockData, Opts) -> ?SUPERVISOR_START. +start(SockData, Opts) -> + supervisor:start_child(ejabberd_s2s_in_sup, + [SockData, Opts]). start_link(SockData, Opts) -> p1_fsm:start_link(ejabberd_s2s_in, [SockData, Opts], diff --git a/src/ejabberd_s2s_out.erl b/src/ejabberd_s2s_out.erl index bc815166..73aa10ff 100644 --- a/src/ejabberd_s2s_out.erl +++ b/src/ejabberd_s2s_out.erl @@ -86,15 +86,6 @@ -endif. -%% Module start with or without supervisor: --ifdef(NO_TRANSIENT_SUPERVISORS). --define(SUPERVISOR_START, p1_fsm:start(ejabberd_s2s_out, [From, Host, Type], - fsm_limit_opts() ++ ?FSMOPTS)). --else. --define(SUPERVISOR_START, supervisor:start_child(ejabberd_s2s_out_sup, - [From, Host, Type])). --endif. - -define(FSMTIMEOUT, 30000). %% We do not block on send anymore. @@ -127,7 +118,8 @@ %%% API %%%---------------------------------------------------------------------- start(From, Host, Type) -> - ?SUPERVISOR_START. + supervisor:start_child(ejabberd_s2s_out_sup, + [From, Host, Type]). start_link(From, Host, Type) -> p1_fsm:start_link(ejabberd_s2s_out, [From, Host, Type], diff --git a/src/ejabberd_sup.erl b/src/ejabberd_sup.erl index da25af2c..e8d3ce83 100644 --- a/src/ejabberd_sup.erl +++ b/src/ejabberd_sup.erl @@ -105,13 +105,6 @@ init([]) -> infinity, supervisor, [ejabberd_tmp_sup]}, - C2SSupervisor = - {ejabberd_c2s_sup, - {ejabberd_tmp_sup, start_link, [ejabberd_c2s_sup, ejabberd_c2s]}, - permanent, - infinity, - supervisor, - [ejabberd_tmp_sup]}, S2SInSupervisor = {ejabberd_s2s_in_sup, {ejabberd_tmp_sup, start_link, @@ -170,7 +163,6 @@ init([]) -> Local, Captcha, ReceiverSupervisor, - C2SSupervisor, S2SInSupervisor, S2SOutSupervisor, ServiceSupervisor, diff --git a/src/mod_muc.erl b/src/mod_muc.erl index 05148f8e..890687cd 100644 --- a/src/mod_muc.erl +++ b/src/mod_muc.erl @@ -91,7 +91,6 @@ start_link(Host, Opts) -> [Host, Opts], []). start(Host, Opts) -> - start_supervisor(Host), Proc = gen_mod:get_module_proc(Host, ?PROCNAME), ChildSpec = {Proc, {?MODULE, start_link, [Host, Opts]}, temporary, 1000, worker, [?MODULE]}, @@ -99,7 +98,6 @@ start(Host, Opts) -> stop(Host) -> Rooms = shutdown_rooms(Host), - stop_supervisor(Host), Proc = gen_mod:get_module_proc(Host, ?PROCNAME), gen_server:call(Proc, stop), supervisor:delete_child(ejabberd_sup, Proc), @@ -444,19 +442,6 @@ code_change(_OldVsn, State, _Extra) -> {ok, State}. %%-------------------------------------------------------------------- %%% Internal functions %%-------------------------------------------------------------------- -start_supervisor(Host) -> - Proc = gen_mod:get_module_proc(Host, - ejabberd_mod_muc_sup), - ChildSpec = {Proc, - {ejabberd_tmp_sup, start_link, [Proc, mod_muc_room]}, - permanent, infinity, supervisor, [ejabberd_tmp_sup]}, - supervisor:start_child(ejabberd_sup, ChildSpec). - -stop_supervisor(Host) -> - Proc = gen_mod:get_module_proc(Host, - ejabberd_mod_muc_sup), - supervisor:terminate_child(ejabberd_sup, Proc), - supervisor:delete_child(ejabberd_sup, Proc). do_route(Host, ServerHost, Access, HistorySize, RoomShaper, From, To, Packet, DefRoomOpts) -> diff --git a/src/mod_muc_room.erl b/src/mod_muc_room.erl index cf26bdea..dcf276b8 100644 --- a/src/mod_muc_room.erl +++ b/src/mod_muc_room.erl @@ -70,32 +70,19 @@ -endif. -%% Module start with or without supervisor: --ifdef(NO_TRANSIENT_SUPERVISORS). --define(SUPERVISOR_START, - gen_fsm:start(?MODULE, [Host, ServerHost, Access, Room, HistorySize, - RoomShaper, Creator, Nick, DefRoomOpts], - ?FSMOPTS)). --else. --define(SUPERVISOR_START, - Supervisor = gen_mod:get_module_proc(ServerHost, ejabberd_mod_muc_sup), - supervisor:start_child( - Supervisor, [Host, ServerHost, Access, Room, HistorySize, RoomShaper, - Creator, Nick, DefRoomOpts])). --endif. - %%%---------------------------------------------------------------------- %%% API %%%---------------------------------------------------------------------- start(Host, ServerHost, Access, Room, HistorySize, RoomShaper, Creator, Nick, DefRoomOpts) -> - ?SUPERVISOR_START. + gen_fsm:start(?MODULE, [Host, ServerHost, Access, Room, HistorySize, + RoomShaper, Creator, Nick, DefRoomOpts], + ?FSMOPTS). start(Host, ServerHost, Access, Room, HistorySize, RoomShaper, Opts) -> - Supervisor = gen_mod:get_module_proc(ServerHost, ejabberd_mod_muc_sup), - supervisor:start_child( - Supervisor, [Host, ServerHost, Access, Room, HistorySize, RoomShaper, - Opts]). + gen_fsm:start(?MODULE, [Host, ServerHost, Access, Room, HistorySize, + RoomShaper, Opts], + ?FSMOPTS). start_link(Host, ServerHost, Access, Room, HistorySize, RoomShaper, Creator, Nick, DefRoomOpts) -> diff --git a/vars.config.in b/vars.config.in index 69cc516f..5c37fb97 100644 --- a/vars.config.in +++ b/vars.config.in @@ -8,7 +8,6 @@ %%%------------------------------------------------------------------- %% Macros {roster_gateway_workaround, @roster_gateway_workaround@}. -{transient_supervisors, @transient_supervisors@}. {full_xml, @full_xml@}. {nif, @nif@}. {db_type, @db_type@}. |