diff options
| author | Matthias Radestock <matthias@rabbitmq.com> | 2012-09-17 16:14:41 +0100 |
|---|---|---|
| committer | Matthias Radestock <matthias@rabbitmq.com> | 2012-09-17 16:14:41 +0100 |
| commit | 681b4c8c2c685ef6576bd53a815ff43a2e9dea42 (patch) | |
| tree | 4e258544b39f386f71af5441a6bbb1a65f13d0a6 /src | |
| parent | a1962c7aac97c259c82c5336ce081f2626cbc3e9 (diff) | |
| download | rabbitmq-server-git-681b4c8c2c685ef6576bd53a815ff43a2e9dea42.tar.gz | |
ensure that slaves confirm messages when ttl=0
Fixed in the simplest possible, rather than most efficient, way - by
removing an optimisation.
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_amqqueue_process.erl | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/src/rabbit_amqqueue_process.erl b/src/rabbit_amqqueue_process.erl index 20ba457465..e647627cd9 100644 --- a/src/rabbit_amqqueue_process.erl +++ b/src/rabbit_amqqueue_process.erl @@ -560,18 +560,15 @@ attempt_delivery(#delivery{sender = SenderPid, message = Message}, Confirm, end. deliver_or_enqueue(Delivery = #delivery{message = Message, - msg_seq_no = MsgSeqNo, sender = SenderPid}, State) -> Confirm = should_confirm_message(Delivery, State), case attempt_delivery(Delivery, Confirm, State) of {true, State1} -> maybe_record_confirm_message(Confirm, State1); - %% the next two are optimisations + %% the next one is an optimisations + %% TODO: optimise the Confirm =/= never case too {false, State1 = #q{ttl = 0, dlx = undefined}} when Confirm == never -> discard_delivery(Delivery, State1); - {false, State1 = #q{ttl = 0, dlx = undefined}} -> - rabbit_misc:confirm_to_sender(SenderPid, [MsgSeqNo]), - discard_delivery(Delivery, State1); {false, State1} -> State2 = #q{backing_queue = BQ, backing_queue_state = BQS} = maybe_record_confirm_message(Confirm, State1), |
