summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorkjnilsson <knilsson@pivotal.io>2019-02-25 17:11:16 +0000
committerkjnilsson <knilsson@pivotal.io>2019-02-25 17:11:16 +0000
commit0ec29e0519d80405c6bc5dcf5f3c92ff001e4928 (patch)
treef3eeb497d8158b3e47d1aeab93ed8315dc0c2571 /src
parentfecd996a4b2d0b79fbe2f870ed48f7299a59b56e (diff)
downloadrabbitmq-server-git-0ec29e0519d80405c6bc5dcf5f3c92ff001e4928.tar.gz
Introduce new dlx reason for delivery limit
Called `delivery_limit` [#163513253]
Diffstat (limited to 'src')
-rw-r--r--src/rabbit_dead_letter.erl2
-rw-r--r--src/rabbit_fifo.erl5
2 files changed, 4 insertions, 3 deletions
diff --git a/src/rabbit_dead_letter.erl b/src/rabbit_dead_letter.erl
index e26ea8297b..7b8cffb6fa 100644
--- a/src/rabbit_dead_letter.erl
+++ b/src/rabbit_dead_letter.erl
@@ -23,7 +23,7 @@
%%----------------------------------------------------------------------------
--type reason() :: 'expired' | 'rejected' | 'maxlen'.
+-type reason() :: 'expired' | 'rejected' | 'maxlen' | delivery_limit.
%%----------------------------------------------------------------------------
diff --git a/src/rabbit_fifo.erl b/src/rabbit_fifo.erl
index 863375671b..b06d34e83a 100644
--- a/src/rabbit_fifo.erl
+++ b/src/rabbit_fifo.erl
@@ -824,7 +824,7 @@ drop_head(#?MODULE{ra_indexes = Indexes0} = State0, Effects0) ->
Indexes = rabbit_fifo_index:delete(RaftIdxToDrop, Indexes0),
Bytes = message_size(Msg),
State = add_bytes_drop(Bytes, State1#?MODULE{ra_indexes = Indexes}),
- Effects = dead_letter_effects(maxlen, maps:put(none, FullMsg, #{}),
+ Effects = dead_letter_effects(maxlen, #{none => FullMsg},
State, Effects0),
{State, Effects};
{{'$prefix_msg', #{size := Bytes}}, State1} ->
@@ -1074,7 +1074,8 @@ return_one(MsgNum, {RaftId, {Header0, RawMsg}},
case maps:get(delivery_count, Header) of
DeliveryCount when DeliveryCount > DeliveryLimit ->
DlMsg = {MsgNum, Msg},
- Effects = dead_letter_effects(rejected, maps:put(none, DlMsg, #{}),
+ Effects = dead_letter_effects(delivery_limit,
+ #{none => DlMsg},
State0, Effects0),
Checked = Con#consumer.checked_out,
{State1, Effects1} = complete(ConsumerId, [RaftId], 1, Con, Checked,