diff options
| author | Alexandru Scvortov <alexandru@rabbitmq.com> | 2010-12-20 16:18:38 +0000 |
|---|---|---|
| committer | Alexandru Scvortov <alexandru@rabbitmq.com> | 2010-12-20 16:18:38 +0000 |
| commit | 1b4821894340f77603412ce88855ae15e852a4b0 (patch) | |
| tree | ec991c6f00b4855352a8892e3abaa0b84325be0c /src | |
| parent | 6ec37ddd63b1222debfd473e9abb84417806bd35 (diff) | |
| download | rabbitmq-server-git-1b4821894340f77603412ce88855ae15e852a4b0.tar.gz | |
the msg_store is now responsible for confirming messages
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_amqqueue_process.erl | 4 | ||||
| -rw-r--r-- | src/rabbit_variable_queue.erl | 6 |
2 files changed, 3 insertions, 7 deletions
diff --git a/src/rabbit_amqqueue_process.erl b/src/rabbit_amqqueue_process.erl index 7ba26e5f8f..0e756d02e4 100644 --- a/src/rabbit_amqqueue_process.erl +++ b/src/rabbit_amqqueue_process.erl @@ -1016,8 +1016,8 @@ handle_cast({ack, Txn, AckTags, ChPid}, case Txn of none -> ChAckTags1 = subtract_acks(ChAckTags, AckTags), NewC = C#cr{acktags = ChAckTags1}, - NewState = ack_by_acktags(AckTags, State), - {NewC, NewState}; + {_AckdGuids, BQS1} = BQ:ack(AckTags, BQS), + {NewC, State#q{backing_queue_state = BQS1}}; _ -> BQS1 = BQ:tx_ack(Txn, AckTags, BQS), {C#cr{txn = Txn}, State#q{backing_queue_state = BQS1}} diff --git a/src/rabbit_variable_queue.erl b/src/rabbit_variable_queue.erl index 85216dfc97..6264255bcd 100644 --- a/src/rabbit_variable_queue.erl +++ b/src/rabbit_variable_queue.erl @@ -656,11 +656,7 @@ internal_fetch(AckRequired, MsgStatus = #msg_status { ack(AckTags, State) -> {Guids, State1} = ack(fun msg_store_remove/3, - fun ({_IsPersistent, Guid, _MsgProps}, State1) -> - remove_confirms(gb_sets:singleton(Guid), State1); - (#msg_status{msg = #basic_message { guid = Guid }}, State1) -> - remove_confirms(gb_sets:singleton(Guid), State1) - end, + fun (_, State0) -> State0 end, AckTags, State), {Guids, a(State1)}. |
