summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Radestock <matthias@rabbitmq.com>2010-08-20 18:47:22 +0100
committerMatthias Radestock <matthias@rabbitmq.com>2010-08-20 18:47:22 +0100
commit1dde9bfdec985cf693f3162fa77d94480a68ec0c (patch)
treefac2449da9486fe035045b4bdba68862398baa47
parentee64ec5fc7008dcbbf54e1c0fa2d6eca1ab0bdd0 (diff)
parent61ba0737222114c4b0034f6b225cb0f4b4b1f1b3 (diff)
downloadrabbitmq-server-1dde9bfdec985cf693f3162fa77d94480a68ec0c.tar.gz
merge bug23152 into default
-rw-r--r--src/rabbit_msg_store.erl5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/rabbit_msg_store.erl b/src/rabbit_msg_store.erl
index 5bc1f9d5..207ddcb8 100644
--- a/src/rabbit_msg_store.erl
+++ b/src/rabbit_msg_store.erl
@@ -317,7 +317,7 @@ start_link(Server, Dir, ClientRefs, StartupFunState) ->
write(Server, Guid, Msg,
CState = #client_msstate { cur_file_cache_ets = CurFileCacheEts }) ->
ok = update_msg_cache(CurFileCacheEts, Guid, Msg),
- {gen_server2:cast(Server, {write, Guid, Msg}), CState}.
+ {gen_server2:cast(Server, {write, Guid}), CState}.
read(Server, Guid,
CState = #client_msstate { dedup_cache_ets = DedupCacheEts,
@@ -611,7 +611,7 @@ handle_call({delete_client, CRef}, _From,
reply(ok,
State #msstate { client_refs = sets:del_element(CRef, ClientRefs) }).
-handle_cast({write, Guid, Msg},
+handle_cast({write, Guid},
State = #msstate { current_file_handle = CurHdl,
current_file = CurFile,
sum_valid_data = SumValid,
@@ -619,6 +619,7 @@ handle_cast({write, Guid, Msg},
file_summary_ets = FileSummaryEts,
cur_file_cache_ets = CurFileCacheEts }) ->
true = 0 =< ets:update_counter(CurFileCacheEts, Guid, {3, -1}),
+ [{Guid, Msg, _CacheRefCount}] = ets:lookup(CurFileCacheEts, Guid),
case index_lookup(Guid, State) of
not_found ->
%% New message, lots to do