diff options
| author | Matthias Radestock <matthias@rabbitmq.com> | 2011-03-14 19:28:47 +0000 |
|---|---|---|
| committer | Matthias Radestock <matthias@rabbitmq.com> | 2011-03-14 19:28:47 +0000 |
| commit | 819b5c1624a4f8b07eafb4c382e25e3153c37dfa (patch) | |
| tree | a2f85e2af35d0e0a6217d3f2f5b782a414f9ee2a | |
| parent | 25575df4c3626944935c4d1e11c2f66ce1fe7d7f (diff) | |
| parent | 3dac2900967aa2a6f9e78164f29ec4ece06d60e4 (diff) | |
| download | rabbitmq-server-git-819b5c1624a4f8b07eafb4c382e25e3153c37dfa.tar.gz | |
merge bug23946 into default
| -rw-r--r-- | src/rabbit_msg_store.erl | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/src/rabbit_msg_store.erl b/src/rabbit_msg_store.erl index 7cc499d1c5..a08bbd708e 100644 --- a/src/rabbit_msg_store.erl +++ b/src/rabbit_msg_store.erl @@ -646,6 +646,15 @@ init([Server, BaseDir, ClientRefs, StartupFunState]) -> {ok, FileSizeLimit} = application:get_env(msg_store_file_size_limit), + {ok, GCPid} = rabbit_msg_store_gc:start_link( + #gc_state { dir = Dir, + index_module = IndexModule, + index_state = IndexState, + file_summary_ets = FileSummaryEts, + file_handles_ets = FileHandlesEts, + msg_store = self() + }), + State = #msstate { dir = Dir, index_module = IndexModule, index_state = IndexState, @@ -657,7 +666,7 @@ init([Server, BaseDir, ClientRefs, StartupFunState]) -> sum_valid_data = 0, sum_file_size = 0, pending_gc_completion = orddict:new(), - gc_pid = undefined, + gc_pid = GCPid, file_handles_ets = FileHandlesEts, file_summary_ets = FileSummaryEts, dedup_cache_ets = DedupCacheEts, @@ -680,17 +689,7 @@ init([Server, BaseDir, ClientRefs, StartupFunState]) -> {ok, Offset} = file_handle_cache:position(CurHdl, Offset), ok = file_handle_cache:truncate(CurHdl), - {ok, GCPid} = rabbit_msg_store_gc:start_link( - #gc_state { dir = Dir, - index_module = IndexModule, - index_state = IndexState, - file_summary_ets = FileSummaryEts, - file_handles_ets = FileHandlesEts, - msg_store = self() - }), - - {ok, maybe_compact( - State1 #msstate { current_file_handle = CurHdl, gc_pid = GCPid }), + {ok, maybe_compact(State1 #msstate { current_file_handle = CurHdl }), hibernate, {backoff, ?HIBERNATE_AFTER_MIN, ?HIBERNATE_AFTER_MIN, ?DESIRED_HIBERNATE}}. |
