Merge pull request #12843 from zhongwencool/fix-replica-node-leave
fix: clean self node's cluster commit when leave cluster
This commit is contained in:
commit
027d1d9c7a
|
@ -224,6 +224,7 @@ reset() -> gen_server:call(?MODULE, reset).
|
||||||
status() ->
|
status() ->
|
||||||
transaction(fun ?MODULE:trans_status/0, []).
|
transaction(fun ?MODULE:trans_status/0, []).
|
||||||
|
|
||||||
|
%% DO NOT delete this on_leave_clean/0, It's use when rpc before v560.
|
||||||
on_leave_clean() ->
|
on_leave_clean() ->
|
||||||
on_leave_clean(node()).
|
on_leave_clean(node()).
|
||||||
|
|
||||||
|
@ -367,7 +368,7 @@ handle_call({fast_forward_to_commit, ToTnxId}, _From, State) ->
|
||||||
NodeId = do_fast_forward_to_commit(ToTnxId, State),
|
NodeId = do_fast_forward_to_commit(ToTnxId, State),
|
||||||
{reply, NodeId, State, catch_up(State)};
|
{reply, NodeId, State, catch_up(State)};
|
||||||
handle_call(on_leave, _From, State) ->
|
handle_call(on_leave, _From, State) ->
|
||||||
{atomic, ok} = transaction(fun ?MODULE:on_leave_clean/0, []),
|
{atomic, ok} = transaction(fun ?MODULE:on_leave_clean/1, [node()]),
|
||||||
{reply, ok, State#{is_leaving := true}};
|
{reply, ok, State#{is_leaving := true}};
|
||||||
handle_call(_, _From, State) ->
|
handle_call(_, _From, State) ->
|
||||||
{reply, ok, State, catch_up(State)}.
|
{reply, ok, State, catch_up(State)}.
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{application, emqx_conf, [
|
{application, emqx_conf, [
|
||||||
{description, "EMQX configuration management"},
|
{description, "EMQX configuration management"},
|
||||||
{vsn, "0.1.35"},
|
{vsn, "0.1.36"},
|
||||||
{registered, []},
|
{registered, []},
|
||||||
{mod, {emqx_conf_app, []}},
|
{mod, {emqx_conf_app, []}},
|
||||||
{applications, [kernel, stdlib]},
|
{applications, [kernel, stdlib]},
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
Fixed `cluster_rpc_commit` transaction ID cleanup procedure after `cluster leave` on replicant nodes.
|
||||||
|
Previously, the transaction id of the core node would be deleted prematurely, blocking configuration updates on the core node.
|
Loading…
Reference in New Issue