diff options
| -rw-r--r-- | src/rabbit_msg_store.erl | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/rabbit_msg_store.erl b/src/rabbit_msg_store.erl index c21e4bd9da..798e9d655f 100644 --- a/src/rabbit_msg_store.erl +++ b/src/rabbit_msg_store.erl @@ -792,11 +792,12 @@ build_index(Files, State) -> build_index(Left, [], FilesToCompact, State) -> ok = index_delete_by_file(undefined, State), - Offset = case lists:reverse(index_search_by_file(Left, State)) of - [] -> 0; - [#msg_location { offset = MaxOffset, - total_size = TotalSize } | _] -> - MaxOffset + TotalSize + Offset = case index_search_by_file(Left, State) of + [] -> 0; + List -> #msg_location { offset = MaxOffset, + total_size = TotalSize } = + lists:last(List), + MaxOffset + TotalSize end, {Offset, compact(FilesToCompact, %% this never includes the current file State #msstate { current_file = Left })}; |
