diff options
| author | Matthew Sackman <matthew@rabbitmq.com> | 2011-02-28 18:09:01 +0000 |
|---|---|---|
| committer | Matthew Sackman <matthew@rabbitmq.com> | 2011-02-28 18:09:01 +0000 |
| commit | 7768d11214271ced5f957b4fcf3b3b6a966d8cd3 (patch) | |
| tree | 0d29343c6f90dedc6e9036a32633caf88b4ea6a2 /src | |
| parent | fd8bffd2df83e0d58ba36a323466a417d38f7c4d (diff) | |
| download | rabbitmq-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.erl | 13 |
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, |
