From d3bc32dc3597b1b6c1401810c12743c402fdd5a4 Mon Sep 17 00:00:00 2001 From: Thales Macedo Garitezi Date: Wed, 8 May 2024 09:05:03 -0300 Subject: [PATCH] fix(message validation): don't call `emqx_conf:update` during boot `load/0` and `unload/0` shouldn't call cluster operations. --- .../src/emqx_message_validation.erl | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/apps/emqx_message_validation/src/emqx_message_validation.erl b/apps/emqx_message_validation/src/emqx_message_validation.erl index d268bd344..694e7f891 100644 --- a/apps/emqx_message_validation/src/emqx_message_validation.erl +++ b/apps/emqx_message_validation/src/emqx_message_validation.erl @@ -69,10 +69,22 @@ remove_handler() -> ok. load() -> - lists:foreach(fun insert/1, emqx:get_config(?VALIDATIONS_CONF_PATH, [])). + Validations = emqx:get_config(?VALIDATIONS_CONF_PATH, []), + lists:foreach( + fun({Pos, Validation}) -> + ok = emqx_message_validation_registry:insert(Pos, Validation) + end, + lists:enumerate(Validations) + ). unload() -> - lists:foreach(fun delete/1, emqx:get_config(?VALIDATIONS_CONF_PATH, [])). + Validations = emqx:get_config(?VALIDATIONS_CONF_PATH, []), + lists:foreach( + fun(Validation) -> + ok = emqx_message_validation_registry:delete(Validation) + end, + Validations + ). -spec list() -> [validation()]. list() ->