diff options
author | kjnilsson <knilsson@pivotal.io> | 2021-04-16 11:05:46 +0100 |
---|---|---|
committer | kjnilsson <knilsson@pivotal.io> | 2021-04-16 11:05:46 +0100 |
commit | ac6b4ddc3afba282b690cb52e91e7780f75691db (patch) | |
tree | 99fe9c3e3008645ea537a1fa9c33c63bc50de60e | |
parent | 33e95a03b3f96cf029987ee81a389ce3bfcae074 (diff) | |
download | rabbitmq-server-git-ac6b4ddc3afba282b690cb52e91e7780f75691db.tar.gz |
rabbit_fifo: fix failing tests
That regressed after refactoring how delivery effects are emitted.
-rw-r--r-- | deps/rabbit/src/rabbit_fifo.erl | 12 | ||||
-rw-r--r-- | deps/rabbit/src/rabbit_quorum_queue.erl | 3 |
2 files changed, 10 insertions, 5 deletions
diff --git a/deps/rabbit/src/rabbit_fifo.erl b/deps/rabbit/src/rabbit_fifo.erl index 618dc8f4f9..db43680bae 100644 --- a/deps/rabbit/src/rabbit_fifo.erl +++ b/deps/rabbit/src/rabbit_fifo.erl @@ -1576,7 +1576,7 @@ checkout0(Meta, {success, ConsumerId, MsgId, Msg, State}, Effects, checkout0(_Meta, {Activity, State0}, Effects0, SendAcc) -> Effects1 = case Activity of nochange -> - append_delivery_effects(Effects0, SendAcc); + append_delivery_effects(Effects0, SendAcc); inactive -> [{aux, inactive} | append_delivery_effects(Effects0, SendAcc)] @@ -1649,10 +1649,14 @@ evaluate_memory_limit(Size, when is_integer(Size) -> (Length >= MaxLength) orelse ((Bytes + Size) > MaxBytes). +append_delivery_effects(Effects0, AccMap) when map_size(AccMap) == 0 -> + %% does this ever happen? + Effects0; append_delivery_effects(Effects0, AccMap) -> - maps:fold(fun (C, {InMemMsgs, LogMsgs}, Ef) -> - [delivery_effect(C, lists:reverse(LogMsgs), InMemMsgs) | Ef] - end, Effects0, AccMap). + [{aux, active} | + maps:fold(fun (C, {InMemMsgs, LogMsgs}, Ef) -> + [delivery_effect(C, lists:reverse(LogMsgs), InMemMsgs) | Ef] + end, Effects0, AccMap)]. %% next message is determined as follows: %% First we check if there are are prefex returns diff --git a/deps/rabbit/src/rabbit_quorum_queue.erl b/deps/rabbit/src/rabbit_quorum_queue.erl index 70317cf652..9075ec1df1 100644 --- a/deps/rabbit/src/rabbit_quorum_queue.erl +++ b/deps/rabbit/src/rabbit_quorum_queue.erl @@ -1590,7 +1590,8 @@ notify_decorators(Q) when ?is_amqqueue(Q) -> QPid = amqqueue:get_pid(Q), case ra:local_query(QPid, fun rabbit_fifo:query_notify_decorators_info/1) of {ok, {_, {MaxActivePriority, IsEmpty}}, _} -> - notify_decorators(QName, consumer_state_changed, [MaxActivePriority, IsEmpty]); + notify_decorators(QName, consumer_state_changed, + [MaxActivePriority, IsEmpty]); _ -> ok end. |