From 80b7d50628a8f6aa152e9fe9f121e667b8450bd7 Mon Sep 17 00:00:00 2001 From: Evgeny Khramtsov Date: Thu, 6 Jun 2019 21:26:50 +0300 Subject: [PATCH] Use system_time/1 instead of monotonic_time/1 The value of monotonic_time/1 may differ significantly between nodes in a cluster due to different erlang:time_offset/0 values. Thanks to Christoph Scholz for spotting this --- src/mod_muc.erl | 2 +- src/mod_muc_room.erl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mod_muc.erl b/src/mod_muc.erl index a3447b281..e546a94a9 100644 --- a/src/mod_muc.erl +++ b/src/mod_muc.erl @@ -744,7 +744,7 @@ get_room_disco_item({Name, Host, Pid}, {get_disco_item, Filter, JID, Lang}) -> RoomJID = jid:make(Name, Host), Timeout = 100, - Time = erlang:monotonic_time(millisecond), + Time = erlang:system_time(millisecond), Query1 = {get_disco_item, Filter, JID, Lang, Time+Timeout}, try p1_fsm:sync_send_all_state_event(Pid, Query1, Timeout) of {item, Desc} -> diff --git a/src/mod_muc_room.erl b/src/mod_muc_room.erl index 2d3865120..79b94e74d 100644 --- a/src/mod_muc_room.erl +++ b/src/mod_muc_room.erl @@ -521,7 +521,7 @@ handle_sync_event({get_disco_item, Filter, JID, Lang, Time}, _From, StateName, S false -> false end, - CurrentTime = erlang:monotonic_time(millisecond), + CurrentTime = erlang:system_time(millisecond), if CurrentTime < Time -> {reply, Reply, StateName, StateData}; true ->