From ee97cf8e33fc7ccaea76027bc7ba59a5323d4762 Mon Sep 17 00:00:00 2001 From: Serge Tupchii Date: Fri, 21 Jul 2023 12:17:47 +0300 Subject: [PATCH] fix(emqx_modules): ignore already_existed/not_found errors for added/removed topic metrics --- apps/emqx_modules/src/emqx_modules_conf.erl | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/apps/emqx_modules/src/emqx_modules_conf.erl b/apps/emqx_modules/src/emqx_modules_conf.erl index e5604280d..ebe9b83df 100644 --- a/apps/emqx_modules/src/emqx_modules_conf.erl +++ b/apps/emqx_modules/src/emqx_modules_conf.erl @@ -168,10 +168,11 @@ post_config_update(_, _UpdateReq, NewConfig, OldConfig, _AppEnvs) -> } = emqx_utils:diff_lists(NewConfig, OldConfig, fun(#{topic := T}) -> T end), Deregistered = [emqx_topic_metrics:deregister(T) || #{topic := T} <- Removed], Registered = [emqx_topic_metrics:register(T) || #{topic := T} <- Added], - Errs = [Res || Res <- Registered ++ Deregistered, Res =/= ok], - case Errs of + DeregisteredErrs = [Res || Res <- Deregistered, Res =/= ok, Res =/= {error, topic_not_found}], + RegisteredErrs = [Res || Res <- Registered, Res =/= ok, Res =/= {error, already_existed}], + case DeregisteredErrs ++ RegisteredErrs of [] -> ok; - _ -> {error, Errs} + Errs -> {error, Errs} end. %%--------------------------------------------------------------------