Merge pull request #10313 from JimMoen/fix-cluster-node-selected
fix: running nodes should not include replica nodes
This commit is contained in:
commit
5b10937c8a
|
@ -1,6 +1,6 @@
|
||||||
{application, emqx_conf, [
|
{application, emqx_conf, [
|
||||||
{description, "EMQX configuration management"},
|
{description, "EMQX configuration management"},
|
||||||
{vsn, "0.1.14"},
|
{vsn, "0.1.15"},
|
||||||
{registered, []},
|
{registered, []},
|
||||||
{mod, {emqx_conf_app, []}},
|
{mod, {emqx_conf_app, []}},
|
||||||
{applications, [kernel, stdlib, emqx_ctl]},
|
{applications, [kernel, stdlib, emqx_ctl]},
|
||||||
|
|
|
@ -90,13 +90,13 @@ init_conf() ->
|
||||||
emqx_app:set_init_config_load_done().
|
emqx_app:set_init_config_load_done().
|
||||||
|
|
||||||
cluster_nodes() ->
|
cluster_nodes() ->
|
||||||
maps:get(running_nodes, ekka_cluster:info()) -- [node()].
|
mria_mnesia:running_nodes() -- [node()].
|
||||||
|
|
||||||
copy_override_conf_from_core_node() ->
|
copy_override_conf_from_core_node() ->
|
||||||
case cluster_nodes() of
|
case cluster_nodes() of
|
||||||
%% The first core nodes is self.
|
%% The first core nodes is self.
|
||||||
[] ->
|
[] ->
|
||||||
?SLOG(debug, #{msg => "skip_copy_overide_conf_from_core_node"}),
|
?SLOG(debug, #{msg => "skip_copy_override_conf_from_core_node"}),
|
||||||
{ok, ?DEFAULT_INIT_TXN_ID};
|
{ok, ?DEFAULT_INIT_TXN_ID};
|
||||||
Nodes ->
|
Nodes ->
|
||||||
{Results, Failed} = emqx_conf_proto_v2:get_override_config_file(Nodes),
|
{Results, Failed} = emqx_conf_proto_v2:get_override_config_file(Nodes),
|
||||||
|
@ -130,7 +130,7 @@ copy_override_conf_from_core_node() ->
|
||||||
%% finish the boot sequence and load the
|
%% finish the boot sequence and load the
|
||||||
%% config for other nodes to copy it.
|
%% config for other nodes to copy it.
|
||||||
?SLOG(info, #{
|
?SLOG(info, #{
|
||||||
msg => "skip_copy_overide_conf_from_core_node",
|
msg => "skip_copy_override_conf_from_core_node",
|
||||||
loading_from_disk => true,
|
loading_from_disk => true,
|
||||||
nodes => Nodes,
|
nodes => Nodes,
|
||||||
failed => Failed,
|
failed => Failed,
|
||||||
|
@ -142,7 +142,7 @@ copy_override_conf_from_core_node() ->
|
||||||
Jitter = rand:uniform(2_000),
|
Jitter = rand:uniform(2_000),
|
||||||
Timeout = 10_000 + Jitter,
|
Timeout = 10_000 + Jitter,
|
||||||
?SLOG(info, #{
|
?SLOG(info, #{
|
||||||
msg => "copy_overide_conf_from_core_node_retry",
|
msg => "copy_override_conf_from_core_node_retry",
|
||||||
timeout => Timeout,
|
timeout => Timeout,
|
||||||
nodes => Nodes,
|
nodes => Nodes,
|
||||||
failed => Failed,
|
failed => Failed,
|
||||||
|
@ -155,7 +155,7 @@ copy_override_conf_from_core_node() ->
|
||||||
[{ok, Info} | _] = lists:sort(fun conf_sort/2, Ready),
|
[{ok, Info} | _] = lists:sort(fun conf_sort/2, Ready),
|
||||||
#{node := Node, conf := RawOverrideConf, tnx_id := TnxId} = Info,
|
#{node := Node, conf := RawOverrideConf, tnx_id := TnxId} = Info,
|
||||||
?SLOG(debug, #{
|
?SLOG(debug, #{
|
||||||
msg => "copy_overide_conf_from_core_node_success",
|
msg => "copy_override_conf_from_core_node_success",
|
||||||
node => Node,
|
node => Node,
|
||||||
cluster_override_conf_file => application:get_env(
|
cluster_override_conf_file => application:get_env(
|
||||||
emqx, cluster_override_conf_file
|
emqx, cluster_override_conf_file
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
Ensure that when the core or replicant node starting, the `cluster-override.conf` file is only copied from the core node.
|
||||||
|
Previously, when sorting nodes by startup time, the core node may have copied this file from the replicant node.
|
|
@ -0,0 +1,2 @@
|
||||||
|
确保当 core 或 replicant 节点启动时,仅从 core 节点复制 `cluster-override.conf` 文件。
|
||||||
|
此前按照节点启动时间排序时,core 节点可能从 replicant 节点复制该文件。
|
Loading…
Reference in New Issue