From 39883bdab1800ebdaa235f4cd53a6b1e115dfdb9 Mon Sep 17 00:00:00 2001 From: Zaiming Shi Date: Wed, 11 Nov 2020 14:04:39 +0100 Subject: [PATCH] fix(emqx_retainer): Dialyzer warnings --- apps/emqx_retainer/src/emqx_retainer.erl | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/apps/emqx_retainer/src/emqx_retainer.erl b/apps/emqx_retainer/src/emqx_retainer.erl index 3d8206077..75c75e2a2 100644 --- a/apps/emqx_retainer/src/emqx_retainer.erl +++ b/apps/emqx_retainer/src/emqx_retainer.erl @@ -56,8 +56,9 @@ %%-------------------------------------------------------------------- load(Env) -> - emqx:hook('session.subscribed', fun ?MODULE:on_session_subscribed/3, []), - emqx:hook('message.publish', fun ?MODULE:on_message_publish/2, [Env]). + _ = emqx:hook('session.subscribed', fun ?MODULE:on_session_subscribed/3, []), + _ = emqx:hook('message.publish', fun ?MODULE:on_message_publish/2, [Env]), + ok. unload() -> emqx:unhook('message.publish', fun ?MODULE:on_message_publish/2), @@ -169,15 +170,17 @@ handle_info(stats, State = #state{stats_fun = StatsFun}) -> {noreply, State, hibernate}; handle_info(expire, State) -> - expire_messages(), + ok = expire_messages(), {noreply, State, hibernate}; handle_info(Info, State) -> ?LOG(error, "Unexpected info: ~p", [Info]), {noreply, State}. -terminate(_Reason, _State = #state{stats_timer = TRef1, expiry_timer = TRef2}) -> - timer:cancel(TRef1), timer:cancel(TRef2). +terminate(_Reason, #state{stats_timer = TRef1, expiry_timer = TRef2} = State) -> + _ = timer:cancel(TRef1), + _ = timer:cancel(TRef2), + ok. code_change(_OldVsn, State, _Extra) -> {ok, State}. @@ -248,11 +251,12 @@ expire_messages() -> NowMs = erlang:system_time(millisecond), MsHd = #retained{topic = '$1', msg = '_', expiry_time = '$3'}, Ms = [{MsHd, [{'=/=','$3',0}, {'<','$3',NowMs}], ['$1']}], - mnesia:transaction( + {atomic, _} = mnesia:transaction( fun() -> Keys = mnesia:select(?TAB, Ms, write), lists:foreach(fun(Key) -> mnesia:delete({?TAB, Key}) end, Keys) - end). + end), + ok. -spec(read_messages(emqx_types:topic()) -> [emqx_types:message()]).