diff options
| author | Alexandru Scvortov <alexandru@rabbitmq.com> | 2010-10-04 16:05:48 +0100 |
|---|---|---|
| committer | Alexandru Scvortov <alexandru@rabbitmq.com> | 2010-10-04 16:05:48 +0100 |
| commit | 36c7889582922e11619b5b30518de3f6d926d2dc (patch) | |
| tree | b5bbad3ed4516d81cce9da33b7bf4f4c48e90a07 | |
| parent | c60de7636442a4b00dc3aaf0b0fb85fb5deecd77 (diff) | |
| download | rabbitmq-server-git-36c7889582922e11619b5b30518de3f6d926d2dc.tar.gz | |
refactor
| -rw-r--r-- | src/rabbit_amqqueue_process.erl | 17 | ||||
| -rw-r--r-- | src/rabbit_msg_store.erl | 18 |
2 files changed, 14 insertions, 21 deletions
diff --git a/src/rabbit_amqqueue_process.erl b/src/rabbit_amqqueue_process.erl index 72b9b49dac..ee74b3d24e 100644 --- a/src/rabbit_amqqueue_process.erl +++ b/src/rabbit_amqqueue_process.erl @@ -698,8 +698,8 @@ handle_call(consumers, _From, [{ChPid, ConsumerTag, AckRequired} | Acc] end, [], queue:join(ActiveConsumers, BlockedConsumers)), State); -handle_call({deliver_immediately, Delivery = #delivery{message = Msg}} - , _From, State) -> +handle_call({deliver_immediately, Delivery = #delivery{message = Msg}}, + _From, State) -> %% Synchronous, "immediate" delivery mode %% %% FIXME: Is this correct semantics? @@ -713,13 +713,12 @@ handle_call({deliver_immediately, Delivery = #delivery{message = Msg}} %% just all ready-to-consume queues get the message, with unready %% queues discarding the message? %% - State1 = record_confirm_message(Delivery, State), - {Delivered, State2} = attempt_delivery(Delivery, State1), - State3 = case Delivered of - true -> State2; - false -> confirm_message(Msg#basic_message.guid, State2) - end, - reply(Delivered, State3); + {Delivered, State1} = attempt_delivery(Delivery, + record_confirm_message(Delivery, State)), + reply(Delivered, case Delivered of + true -> State1; + false -> confirm_message(Msg#basic_message.guid, State1) + end); handle_call({deliver, Delivery}, _From, State) -> %% Synchronous, "mandatory" delivery mode diff --git a/src/rabbit_msg_store.erl b/src/rabbit_msg_store.erl index 521c1c0939..ff6ff96cc5 100644 --- a/src/rabbit_msg_store.erl +++ b/src/rabbit_msg_store.erl @@ -849,19 +849,13 @@ internal_sync(State = #msstate { current_file_handle = CurHdl, CGs = dict:fold(fun (_CRef, [], NS) -> NS; (CRef, Guids, NS) -> [{CRef, Guids} | NS] end, [], CTG), - if Syncs =/= [] orelse CGs =/= [] -> ok = file_handle_cache:sync(CurHdl); - true -> ok + if Syncs =:= [] andalso CGs =:= [] -> ok; + true -> file_handle_cache:sync(CurHdl) end, - State2 = case Syncs of - [] -> State1; - _ -> lists:foreach(fun (K) -> K() end, lists:reverse(Syncs)), - State1 #msstate { on_sync = [] } - end, - [begin - Fun = dict:fetch(CRef, CODC), - Fun(Guids) - end || {CRef, Guids} <- CGs], - State2 #msstate { cref_to_guids = dict:new() }. + lists:foreach(fun (K) -> K() end, lists:reverse(Syncs)), + [(dict:fetch(CRef, CODC))(Guids) || {CRef, Guids} <- CGs], + State #msstate { cref_to_guids = dict:new(), + on_sync = [] }. read_message(Guid, From, |
