Check a node of a migrating process (EJABS-1908)

This commit is contained in:
Evgeniy Khramtsov
2012-09-27 12:34:26 +10:00
parent f0c745b916
commit 083dfe01ea
3 changed files with 12 additions and 6 deletions
+4 -2
View File
@@ -221,8 +221,10 @@ stop_or_detach(FsmRef) ->
end.
migrate(FsmRef, Node, After) ->
erlang:send_after(After, FsmRef, {migrate, Node}).
migrate(FsmRef, Node, After) when node(FsmRef) == node() ->
erlang:send_after(After, FsmRef, {migrate, Node});
migrate(_FsmRef, _Node, _After) ->
ok.
migrate_shutdown(FsmRef, Node, After) ->
FsmRef ! {migrate_shutdown, Node, After}.
+4 -2
View File
@@ -117,8 +117,10 @@ start_link(StateName, StateData) ->
(?GEN_FSM):start_link(?MODULE, [StateName, StateData],
?FSMOPTS).
migrate(FsmRef, Node, After) ->
erlang:send_after(After, FsmRef, {migrate, Node}).
migrate(FsmRef, Node, After) when node(FsmRef) == node() ->
erlang:send_after(After, FsmRef, {migrate, Node});
migrate(_FsmRef, _Node, _After) ->
ok.
moderate_room_history(FsmRef, Nick) ->
(?GEN_FSM):sync_send_all_state_event(FsmRef,
+4 -2
View File
@@ -206,8 +206,10 @@ sockname(_Socket) -> {ok, {{0, 0, 0, 0}, 0}}.
peername({http_bind, _FsmRef, IP}) -> {ok, IP}.
migrate(FsmRef, Node, After) ->
erlang:send_after(After, FsmRef, {migrate, Node}).
migrate(FsmRef, Node, After) when node(FsmRef) == node() ->
erlang:send_after(After, FsmRef, {migrate, Node});
migrate(_FsmRef, _Node, _After) ->
ok.
process_request(Data, IP, Type) ->
Opts1 = ejabberd_c2s_config:get_c2s_limits(),