From 3abc9f07c6636968757396cb5bc7eaf6c6e697f6 Mon Sep 17 00:00:00 2001 From: zhongwencool Date: Wed, 24 Aug 2022 11:47:25 +0800 Subject: [PATCH 1/4] fix: fix plugins ct failed on ee --- test/emqx_plugins_SUITE.erl | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/test/emqx_plugins_SUITE.erl b/test/emqx_plugins_SUITE.erl index f3c37afea..57f10f2f0 100644 --- a/test/emqx_plugins_SUITE.erl +++ b/test/emqx_plugins_SUITE.erl @@ -112,8 +112,7 @@ default_plugins() -> {emqx_modules, true}, {emqx_recon, true}, {emqx_retainer, false}, - {emqx_rule_engine, true}, - {emqx_telemetry, true} + {emqx_rule_engine, true} ]. -endif. From a1a3f5198a20861851d4447211da0b6588b15075 Mon Sep 17 00:00:00 2001 From: Thales Macedo Garitezi Date: Wed, 24 Aug 2022 09:19:38 -0300 Subject: [PATCH 2/4] test: attempt to fix flaky shared sub test ``` %%% emqx_shared_sub_SUITE ==> t_local_fallback: FAILED %%% emqx_shared_sub_SUITE ==> {{badmatch,[{share,<<"local_foo/bar">>,{ok,1}}, {share,<<"local_foo/bar">>,{error,no_subscribers}}]}, [{emqx_shared_sub_SUITE,t_local_fallback,1, [{file,"/emqx/test/emqx_shared_sub_SUITE.erl"}, {line,411}]}, {test_server,ts_tc,3,[{file,"test_server.erl"},{line,1783}]}, {test_server,run_test_case_eval1,6,[{file,"test_server.erl"},{line,1292}]}, {test_server,run_test_case_eval,9,[{file,"test_server.erl"},{line,1224}]}]} ``` --- test/emqx_shared_sub_SUITE.erl | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/test/emqx_shared_sub_SUITE.erl b/test/emqx_shared_sub_SUITE.erl index 0eb63dbf0..5e79ee983 100644 --- a/test/emqx_shared_sub_SUITE.erl +++ b/test/emqx_shared_sub_SUITE.erl @@ -353,7 +353,7 @@ t_local(_) -> ok = ensure_group_config(Node, GroupConfig), ok = ensure_group_config(GroupConfig), - Topic = <<"local_foo/bar">>, + Topic = <<"local_foo1/bar">>, ClientId1 = <<"ClientId1">>, ClientId2 = <<"ClientId2">>, @@ -363,8 +363,8 @@ t_local(_) -> {ok, _} = emqtt:connect(ConnPid1), {ok, _} = emqtt:connect(ConnPid2), - emqtt:subscribe(ConnPid1, {<<"$share/local_group/local_foo/bar">>, 0}), - emqtt:subscribe(ConnPid2, {<<"$share/local_group/local_foo/bar">>, 0}), + emqtt:subscribe(ConnPid1, {<<"$share/local_group/", Topic/binary>>, 0}), + emqtt:subscribe(ConnPid2, {<<"$share/local_group/", Topic/binary>>, 0}), ct:sleep(100), @@ -396,7 +396,7 @@ t_local_fallback(_) -> <<"sticky_group">> => sticky }), - Topic = <<"local_foo/bar">>, + Topic = <<"local_foo2/bar">>, ClientId1 = <<"ClientId1">>, ClientId2 = <<"ClientId2">>, Node = start_slave('local_fallback_shared_sub_test19', 11885), @@ -406,12 +406,12 @@ t_local_fallback(_) -> Message1 = emqx_message:make(ClientId1, 0, Topic, <<"hello1">>), Message2 = emqx_message:make(ClientId2, 0, Topic, <<"hello2">>), - emqtt:subscribe(ConnPid1, {<<"$share/local_group_fallback/local_foo/bar">>, 0}), + emqtt:subscribe(ConnPid1, {<<"$share/local_group_fallback/", Topic/binary>>, 0}), - [{share, <<"local_foo/bar">>, {ok, 1}}] = emqx:publish(Message1), + [{share, Topic, {ok, 1}}] = emqx:publish(Message1), {true, UsedSubPid1} = last_message(<<"hello1">>, [ConnPid1]), - [{share, <<"local_foo/bar">>, {ok, 1}}] = rpc:call(Node, emqx, publish, [Message2]), + [{share, Topic, {ok, 1}}] = rpc:call(Node, emqx, publish, [Message2]), {true, UsedSubPid2} = last_message(<<"hello2">>, [ConnPid1]), emqtt:stop(ConnPid1), From b732aa5aa2669368f41f8ec519905fc6f6b0309f Mon Sep 17 00:00:00 2001 From: zhongwencool Date: Thu, 25 Aug 2022 11:07:03 +0800 Subject: [PATCH 3/4] chore: warning default modules/plugins is working --- lib-ce/emqx_modules/src/emqx_modules.app.src | 2 +- lib-ce/emqx_modules/src/emqx_modules.appup.src | 18 ++++++++---------- lib-ce/emqx_modules/src/emqx_modules.erl | 7 ++++--- src/emqx_plugins.erl | 1 + 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/lib-ce/emqx_modules/src/emqx_modules.app.src b/lib-ce/emqx_modules/src/emqx_modules.app.src index 9db13dbc8..055e4c780 100644 --- a/lib-ce/emqx_modules/src/emqx_modules.app.src +++ b/lib-ce/emqx_modules/src/emqx_modules.app.src @@ -1,6 +1,6 @@ {application, emqx_modules, [{description, "EMQ X Module Management"}, - {vsn, "4.3.8"}, + {vsn, "4.3.9"}, {modules, []}, {applications, [kernel,stdlib]}, {mod, {emqx_modules_app, []}}, diff --git a/lib-ce/emqx_modules/src/emqx_modules.appup.src b/lib-ce/emqx_modules/src/emqx_modules.appup.src index 5b8fb4434..e4a41be8c 100644 --- a/lib-ce/emqx_modules/src/emqx_modules.appup.src +++ b/lib-ce/emqx_modules/src/emqx_modules.appup.src @@ -1,11 +1,10 @@ %% -*- mode: erlang -*- %% Unless you know what you are doing, DO NOT edit manually!! {VSN, - [{"4.3.7",[{load_module,emqx_mod_rewrite,brutal_purge,soft_purge,[]}]}, - {"4.3.6",[{load_module,emqx_mod_rewrite,brutal_purge,soft_purge,[]}]}, - {"4.3.5", - [{load_module,emqx_modules,brutal_purge,soft_purge,[]}, - {load_module,emqx_mod_rewrite,brutal_purge,soft_purge,[]}]}, + [{"4.3.8",[{load_module,emqx_modules,brutal_purge,soft_purge,[]}]}, + {<<"4\\.3\\.[5-7]">>, + [{load_module,emqx_mod_rewrite,brutal_purge,soft_purge,[]}, + {load_module,emqx_modules,brutal_purge,soft_purge,[]}]}, {"4.3.4", [{load_module,emqx_modules,brutal_purge,soft_purge,[]}, {load_module,emqx_mod_subscription,brutal_purge,soft_purge,[]}, @@ -32,11 +31,10 @@ {load_module,emqx_mod_api_topic_metrics,brutal_purge,soft_purge,[]}, {load_module,emqx_mod_rewrite,brutal_purge,soft_purge,[]}]}, {<<".*">>,[]}], - [{"4.3.7",[{load_module,emqx_mod_rewrite,brutal_purge,soft_purge,[]}]}, - {"4.3.6",[{load_module,emqx_mod_rewrite,brutal_purge,soft_purge,[]}]}, - {"4.3.5", - [{load_module,emqx_modules,brutal_purge,soft_purge,[]}, - {load_module,emqx_mod_rewrite,brutal_purge,soft_purge,[]}]}, + [{"4.3.8",[{load_module,emqx_modules,brutal_purge,soft_purge,[]}]}, + {<<"4\\.3\\.[5-7]">>, + [{load_module,emqx_mod_rewrite,brutal_purge,soft_purge,[]}, + {load_module,emqx_modules,brutal_purge,soft_purge,[]}]}, {"4.3.4", [{load_module,emqx_modules,brutal_purge,soft_purge,[]}, {load_module,emqx_mod_subscription,brutal_purge,soft_purge,[]}, diff --git a/lib-ce/emqx_modules/src/emqx_modules.erl b/lib-ce/emqx_modules/src/emqx_modules.erl index 7f9b44868..514d9024a 100644 --- a/lib-ce/emqx_modules/src/emqx_modules.erl +++ b/lib-ce/emqx_modules/src/emqx_modules.erl @@ -62,12 +62,13 @@ load(ModuleName) -> %% @doc Creates a `loaded_modules' file with default values if one %% doesn't exist. -spec ensure_loaded_modules_file(file:filename()) -> ok. -ensure_loaded_modules_file(Filepath) -> - case filelib:is_regular(Filepath) of +ensure_loaded_modules_file(FilePath) -> + case filelib:is_regular(FilePath) of true -> ok; false -> - do_ensure_loaded_modules_file(Filepath) + ?LOG(warning, "~s is not found, use the default modules instead", [FilePath]), + do_ensure_loaded_modules_file(FilePath) end. do_ensure_loaded_modules_file(Filepath) -> diff --git a/src/emqx_plugins.erl b/src/emqx_plugins.erl index 39fe41904..ca103520d 100644 --- a/src/emqx_plugins.erl +++ b/src/emqx_plugins.erl @@ -218,6 +218,7 @@ ensure_file(File) -> case filelib:is_file(File) of false -> DefaultPlugins = default_plugins(), + ?LOG(warning, "~s is not found, use the default plugins instead", [File]), write_loaded(DefaultPlugins); true -> ok From 066db0557b7eabed0070f773dff74371d06b0035 Mon Sep 17 00:00:00 2001 From: zhongwencool Date: Thu, 25 Aug 2022 12:17:49 +0800 Subject: [PATCH 4/4] chore: pin gun 1.3.7 --- rebar.config | 1 + 1 file changed, 1 insertion(+) diff --git a/rebar.config b/rebar.config index 074949bbf..03026cacc 100644 --- a/rebar.config +++ b/rebar.config @@ -41,6 +41,7 @@ [ {gpb, "4.11.2"} %% gpb only used to build, but not for release, pin it here to avoid fetching a wrong version due to rebar plugins scattered in all the deps , {redbug, "2.0.7"} , {ehttpc, {git, "https://github.com/emqx/ehttpc", {tag, "0.2.0"}}} + , {gun, {git, "https://github.com/emqx/gun", {tag, "1.3.7"}}} , {eredis_cluster, {git, "https://github.com/emqx/eredis_cluster", {tag, "0.7.3"}}} , {gproc, {git, "https://github.com/uwiger/gproc", {tag, "0.8.0"}}} , {jiffy, {git, "https://github.com/emqx/jiffy", {tag, "1.0.5"}}}