From f78c30c9ff26414a63962cf52b529dec65e24309 Mon Sep 17 00:00:00 2001 From: "Zaiming (Stone) Shi" Date: Fri, 16 Feb 2024 13:49:05 +0100 Subject: [PATCH] test: reduce false warning messages in test logs --- apps/emqx/src/emqx_config_handler.erl | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/apps/emqx/src/emqx_config_handler.erl b/apps/emqx/src/emqx_config_handler.erl index 4cc5b2908..c20a74a5b 100644 --- a/apps/emqx/src/emqx_config_handler.erl +++ b/apps/emqx/src/emqx_config_handler.erl @@ -675,9 +675,19 @@ merge_to_override_config(RawConf, Opts) -> maps:merge(UpgradedOldConf, RawConf). upgrade_conf(Conf) -> + ConfigLoader = emqx_app:get_config_loader(), + %% ensure module loaded + _ = ConfigLoader:module_info(), + case erlang:function_exported(ConfigLoader, schema_module, 0) of + true -> + try_upgrade_conf(apply(ConfigLoader, schema_module, []), Conf); + false -> + %% this happens during emqx app standalone test + Conf + end. + +try_upgrade_conf(SchemaModule, Conf) -> try - ConfLoader = emqx_app:get_config_loader(), - SchemaModule = apply(ConfLoader, schema_module, []), apply(SchemaModule, upgrade_raw_conf, [Conf]) catch ErrorType:Reason:Stack ->