Skip to content

Commit

Permalink
Merge pull request rabbitmq#11361 from rabbitmq/mergify/bp/v3.13.x/pr…
Browse files Browse the repository at this point in the history
…-11278

QQs: check if schema database record needs an update on tick (backport rabbitmq#11278)
  • Loading branch information
michaelklishin authored Jun 4, 2024
2 parents e7f47b7 + 70460a5 commit 0f0c2fd
Showing 1 changed file with 8 additions and 2 deletions.
10 changes: 8 additions & 2 deletions deps/rabbit/src/rabbit_quorum_queue.erl
Original file line number Diff line number Diff line change
Expand Up @@ -551,6 +551,12 @@ handle_tick(QName,
| info(Q, Keys)],
rabbit_core_metrics:queue_stats(QName, Infos),
ok = repair_leader_record(Q, Self),
case repair_amqqueue_nodes(Q) of
ok ->
ok;
repaired ->
rabbit_log:debug("Repaired quorum queue ~ts amqqueue record", [rabbit_misc:rs(QName)])
end,
ExpectedNodes = rabbit_nodes:list_members(),
case Nodes -- ExpectedNodes of
[] ->
Expand Down Expand Up @@ -603,8 +609,8 @@ repair_amqqueue_nodes(QName = #resource{}) ->
repair_amqqueue_nodes(Q0);
repair_amqqueue_nodes(Q0) ->
QName = amqqueue:get_name(Q0),
Leader = amqqueue:get_pid(Q0),
{ok, Members, _} = ra:members(Leader),
{Name, _} = amqqueue:get_pid(Q0),
Members = ra_leaderboard:lookup_members(Name),
RaNodes = [N || {_, N} <- Members],
#{nodes := Nodes} = amqqueue:get_type_state(Q0),
case lists:sort(RaNodes) =:= lists:sort(Nodes) of
Expand Down

0 comments on commit 0f0c2fd

Please sign in to comment.