summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDaniil Fedotov <dfedotov@pivotal.io>2017-02-23 16:20:23 +0000
committerDaniil Fedotov <dfedotov@pivotal.io>2017-02-23 16:20:23 +0000
commita8997349d1affc03e72c98bab1200463a2aa0569 (patch)
tree1b2c0cb25c6f5125660d3fd966d2a7a1601eb8ac /src
parentff83a7471c40746e59473153a3a0c5bfdc7350ba (diff)
downloadrabbitmq-server-git-a8997349d1affc03e72c98bab1200463a2aa0569.tar.gz
Rename msg_store_index:delete_by_file to index_cleanup_undefined_file
The `delete_by_file` function is used only once with `undefined` parameter. For key-value store implementations (e.g. eleveldb) it's much easier to implement, than maintaining a filename index. ETS index also can be optimised.
Diffstat (limited to 'src')
-rw-r--r--src/rabbit_msg_store.erl6
-rw-r--r--src/rabbit_msg_store_ets_index.erl6
2 files changed, 6 insertions, 6 deletions
diff --git a/src/rabbit_msg_store.erl b/src/rabbit_msg_store.erl
index d5c0031944..4fa9ac26cf 100644
--- a/src/rabbit_msg_store.erl
+++ b/src/rabbit_msg_store.erl
@@ -1537,9 +1537,9 @@ index_update_fields(Key, Updates, #msstate { index_module = Index,
index_delete(Key, #msstate { index_module = Index, index_state = State }) ->
Index:delete(Key, State).
-index_delete_by_file(File, #msstate { index_module = Index,
+index_cleanup_undefined_file(#msstate { index_module = Index,
index_state = State }) ->
- Index:delete_by_file(File, State).
+ Index:cleanup_undefined_file(State).
%%----------------------------------------------------------------------------
%% shutdown and recovery
@@ -1730,7 +1730,7 @@ build_index(Gatherer, Left, [],
empty ->
unlink(Gatherer),
ok = gatherer:stop(Gatherer),
- ok = index_delete_by_file(undefined, State),
+ ok = index_cleanup_undefined_file(State),
Offset = case ets:lookup(FileSummaryEts, Left) of
[] -> 0;
[#file_summary { file_size = FileSize }] -> FileSize
diff --git a/src/rabbit_msg_store_ets_index.erl b/src/rabbit_msg_store_ets_index.erl
index 0e8b7174e2..4195be4fe9 100644
--- a/src/rabbit_msg_store_ets_index.erl
+++ b/src/rabbit_msg_store_ets_index.erl
@@ -22,7 +22,7 @@
-export([new/1, recover/1,
lookup/2, insert/2, update/2, update_fields/3, delete/2,
- delete_object/2, delete_by_file/2, terminate/1]).
+ delete_object/2, cleanup_undefined_file/1, terminate/1]).
-define(MSG_LOC_NAME, rabbit_msg_store_ets_index).
-define(FILENAME, "msg_store_index.ets").
@@ -68,8 +68,8 @@ delete_object(Obj, State) ->
true = ets:delete_object(State #state.table, Obj),
ok.
-delete_by_file(File, State) ->
- MatchHead = #msg_location { file = File, _ = '_' },
+cleanup_undefined_file(State) ->
+ MatchHead = #msg_location { file = undefined, _ = '_' },
ets:select_delete(State #state.table, [{MatchHead, [], [true]}]),
ok.