From 4a9ba7f8b8ae548dcbb5c4029511d7aea8207025 Mon Sep 17 00:00:00 2001 From: lafirest Date: Wed, 2 Mar 2022 17:06:48 +0800 Subject: [PATCH] fix(retainer): trap exit message --- apps/emqx_retainer/src/emqx_retainer.erl | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/emqx_retainer/src/emqx_retainer.erl b/apps/emqx_retainer/src/emqx_retainer.erl index f55675f88..49cb563e3 100644 --- a/apps/emqx_retainer/src/emqx_retainer.erl +++ b/apps/emqx_retainer/src/emqx_retainer.erl @@ -156,6 +156,7 @@ stats_fun() -> %%-------------------------------------------------------------------- init([]) -> + erlang:process_flag(trap_exit, true), emqx_conf:add_handler([retainer], ?MODULE), State = new_state(), #{enable := Enable} = Cfg = emqx:get_config([retainer]), @@ -209,6 +210,7 @@ handle_info(Info, State) -> {noreply, State}. terminate(_Reason, #{clear_timer := ClearTimer}) -> + emqx_conf:remove_handler([retainer]), _ = stop_timer(ClearTimer), ok.