diff options
| author | Matthias Radestock <matthias@lshift.net> | 2010-05-19 13:36:13 +0100 |
|---|---|---|
| committer | Matthias Radestock <matthias@lshift.net> | 2010-05-19 13:36:13 +0100 |
| commit | 204a8cd94600e5dc9011b01b5f4f67cd7ad791a9 (patch) | |
| tree | abef44e808473833802bdda6c9da6cda7a90d037 | |
| parent | d5816a10609d2a20de494b10e58cc03c8e276685 (diff) | |
| download | rabbitmq-server-git-204a8cd94600e5dc9011b01b5f4f67cd7ad791a9.tar.gz | |
refactor
| -rw-r--r-- | src/rabbit_queue_index.erl | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/src/rabbit_queue_index.erl b/src/rabbit_queue_index.erl index 32ada56931..acd13a0640 100644 --- a/src/rabbit_queue_index.erl +++ b/src/rabbit_queue_index.erl @@ -590,23 +590,18 @@ flush_journal(State = #qistate { dirty_count = 0 }) -> flush_journal(State = #qistate { segments = Segments }) -> Segments1 = segment_fold( - fun (_Seg, #segment { journal_entries = JEntries, - unacked = UnackedCount } = Segment, - SegmentsN) -> - case UnackedCount of - 0 -> ok = delete_segment(Segment), - SegmentsN; - _ -> segment_store( - append_journal_to_segment(Segment, JEntries), - SegmentsN) - end + fun (_Seg, #segment { unacked = 0 } = Segment, SegmentsN) -> + ok = delete_segment(Segment), + SegmentsN; + (_Seg, #segment {} = Segment, SegmentsN) -> + segment_store(append_journal_to_segment(Segment), SegmentsN) end, segments_new(), Segments), {JournalHdl, State1} = get_journal_handle(State #qistate { segments = Segments1 }), ok = file_handle_cache:clear(JournalHdl), State1 #qistate { dirty_count = 0 }. -append_journal_to_segment(Segment, JEntries) -> +append_journal_to_segment(#segment { journal_entries = JEntries } = Segment) -> case array:sparse_size(JEntries) of 0 -> Segment; _ -> {Hdl, Segment1} = get_segment_handle(Segment), |
