summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMatthew Sackman <matthew@rabbitmq.com>2011-02-28 18:09:01 +0000
committerMatthew Sackman <matthew@rabbitmq.com>2011-02-28 18:09:01 +0000
commit7768d11214271ced5f957b4fcf3b3b6a966d8cd3 (patch)
tree0d29343c6f90dedc6e9036a32633caf88b4ea6a2 /src
parentfd8bffd2df83e0d58ba36a323466a417d38f7c4d (diff)
downloadrabbitmq-server-git-7768d11214271ced5f957b4fcf3b3b6a966d8cd3.tar.gz
confirms still don't work... but it needs sleep to fix this.
Diffstat (limited to 'src')
-rw-r--r--src/rabbit_mirror_queue_slave.erl13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/rabbit_mirror_queue_slave.erl b/src/rabbit_mirror_queue_slave.erl
index 396e3c3592..df9a28f4a3 100644
--- a/src/rabbit_mirror_queue_slave.erl
+++ b/src/rabbit_mirror_queue_slave.erl
@@ -328,7 +328,7 @@ record_confirm_or_confirm(
dict:store(Guid, {ChPid, MsgSeqNo}, GTC);
record_confirm_or_confirm(#delivery { sender = ChPid, msg_seq_no = MsgSeqNo },
_Q, GTC) ->
- ok = rabbit_channel:confirm(ChPid, MsgSeqNo),
+ ok = rabbit_channel:confirm(ChPid, [MsgSeqNo]),
GTC.
confirm_messages(Guids, State = #state { guid_to_channel = GTC }) ->
@@ -502,14 +502,13 @@ process_instruction(
{true, AckRequired} ->
{AckTag, BQS1} = BQ:publish_delivered(AckRequired, Msg, MsgProps,
ChPid, BQS),
- {GA1, GTC3} =
- case AckRequired of
- true -> {dict:store(Guid, AckTag, GA), GTC1};
- false -> {GA, confirm_messages([Guid], GTC1)}
- end,
+ GA1 = case AckRequired of
+ true -> dict:store(Guid, AckTag, GA);
+ false -> GA
+ end,
State1 #state { backing_queue_state = BQS1,
guid_ack = GA1,
- guid_to_channel = GTC3 }
+ guid_to_channel = GTC1 }
end};
process_instruction({set_length, Length},
State = #state { backing_queue = BQ,