@@ -266,7 +266,8 @@ start_cluster(Q) ->
266
266
#{nodes => [LeaderNode | FollowerNodes ]}),
267
267
268
268
Versions = [V || {ok , V } <- erpc :multicall (FollowerNodes ,
269
- rabbit_fifo , version , [])],
269
+ rabbit_fifo , version , [],
270
+ ? RPC_TIMEOUT )],
270
271
MinVersion = lists :min ([rabbit_fifo :version () | Versions ]),
271
272
272
273
rabbit_log :debug (" Will start up to ~w replicas for quorum queue ~ts with "
@@ -583,6 +584,7 @@ handle_tick(QName,
583
584
fun () ->
584
585
try
585
586
{ok , Q } = rabbit_amqqueue :lookup (QName ),
587
+ ok = repair_leader_record (Q , Name ),
586
588
Reductions = reductions (Name ),
587
589
rabbit_core_metrics :queue_stats (QName , NumReadyMsgs ,
588
590
NumCheckedOut , NumMessages ,
@@ -636,12 +638,12 @@ handle_tick(QName,
636
638
end }
637
639
| Infos0 ],
638
640
rabbit_core_metrics :queue_stats (QName , Infos ),
639
- ok = repair_leader_record (Q , Name ),
640
641
case repair_amqqueue_nodes (Q ) of
641
642
ok ->
642
643
ok ;
643
644
repaired ->
644
- rabbit_log :debug (" Repaired quorum queue ~ts amqqueue record" , [rabbit_misc :rs (QName )])
645
+ rabbit_log :debug (" Repaired quorum queue ~ts amqqueue record" ,
646
+ [rabbit_misc :rs (QName )])
645
647
end ,
646
648
ExpectedNodes = rabbit_nodes :list_members (),
647
649
case Nodes -- ExpectedNodes of
@@ -1763,8 +1765,9 @@ i(leader, Q) -> leader(Q);
1763
1765
i (open_files , Q ) when ? is_amqqueue (Q ) ->
1764
1766
{Name , _ } = amqqueue :get_pid (Q ),
1765
1767
Nodes = get_connected_nodes (Q ),
1766
- {Data , _ } = rpc :multicall (Nodes , ? MODULE , open_files , [Name ]),
1767
- lists :flatten (Data );
1768
+ [Info || {ok , {_ , _ } = Info } <-
1769
+ erpc :multicall (Nodes , ? MODULE , open_files ,
1770
+ [Name ], ? RPC_TIMEOUT )];
1768
1771
i (single_active_consumer_pid , Q ) when ? is_amqqueue (Q ) ->
1769
1772
QPid = amqqueue :get_pid (Q ),
1770
1773
case ra :local_query (QPid , fun rabbit_fifo :query_single_active_consumer /1 ) of
@@ -1883,7 +1886,8 @@ online(Q) when ?is_amqqueue(Q) ->
1883
1886
Nodes = get_connected_nodes (Q ),
1884
1887
{Name , _ } = amqqueue :get_pid (Q ),
1885
1888
[node (Pid ) || {ok , Pid } <-
1886
- erpc :multicall (Nodes , erlang , whereis , [Name ]),
1889
+ erpc :multicall (Nodes , erlang , whereis ,
1890
+ [Name ], ? RPC_TIMEOUT ),
1887
1891
is_pid (Pid )].
1888
1892
1889
1893
format (Q , Ctx ) when ? is_amqqueue (Q ) ->
0 commit comments