Skip to content

Commit 2815c71

Browse files
committed
Skip test assertion
Not only are quorum queues wrongly implemented, but also classic queues when draining in 3.13. Like quorum queues, classsic queues reply with a send_drained event before delivering the message(s). Therefore, we have to skip the drain test in such mixed version clusters where the leader runs on the old (3.13.1) node. The new 4.0 implementation with credit API v2 fixes this bug.
1 parent 65c8456 commit 2815c71

File tree

2 files changed

+6
-7
lines changed

2 files changed

+6
-7
lines changed

deps/rabbit/src/rabbit_amqp_session.erl

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2090,7 +2090,6 @@ process_credit_reply_sync(
20902090
{queue_event,
20912091
QName,
20922092
{send_credit_reply, Avail}}} ->
2093-
%% Convert to credit_api_v2 action.
20942093
Action = {credit_reply_v1, Ctag, Credit, Avail, false},
20952094
handle_queue_actions([Action], State)
20962095
after ?CREDIT_REPLY_TIMEOUT ->

deps/rabbit/test/amqp_client_SUITE.erl

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2465,12 +2465,8 @@ queue_and_client_different_nodes(QueueLeaderNode, ClientNode, QueueType, Config)
24652465
true,
24662466
accepted),
24672467

2468-
CreditApiV2 = rpc(Config, rabbit_feature_flags, is_enabled, [credit_api_v2]),
2469-
case QueueType =:= <<"quorum">> andalso not CreditApiV2 of
2468+
case rpc(Config, rabbit_feature_flags, is_enabled, [credit_api_v2]) of
24702469
true ->
2471-
ct:pal("Quorum queues in credit API v1 have a known bug that they "
2472-
"reply with send_drained before delivering the message.");
2473-
false ->
24742470
%% Send another message and drain.
24752471
Tag = <<"tag">>,
24762472
Body = <<"body">>,
@@ -2482,7 +2478,11 @@ queue_and_client_different_nodes(QueueLeaderNode, ClientNode, QueueType, Config)
24822478
receive {amqp10_event, {link, Receiver, credit_exhausted}} -> ok
24832479
after 5000 -> ct:fail("expected credit_exhausted")
24842480
end,
2485-
ok = amqp10_client:accept_msg(Receiver, Msg)
2481+
ok = amqp10_client:accept_msg(Receiver, Msg);
2482+
false ->
2483+
ct:pal("Both quorum queues and classic queues in credit API v1
2484+
have a known bug that they reply with send_drained
2485+
before delivering the message.")
24862486
end,
24872487

24882488
ExpectedReadyMsgs = 0,

0 commit comments

Comments
 (0)