diff options
| author | Tony Garnock-Jones <tonyg@lshift.net> | 2010-04-06 09:54:32 +1200 |
|---|---|---|
| committer | Tony Garnock-Jones <tonyg@lshift.net> | 2010-04-06 09:54:32 +1200 |
| commit | 62859413de673f6ce2278ca3e9b9e82d2c640946 (patch) | |
| tree | 2976985c9a310fcc31035677c75f6d9c46fbc5b6 | |
| parent | f318a056c0c6999fe5d9d853440f4a49e92530b3 (diff) | |
| download | rabbitmq-server-git-62859413de673f6ce2278ca3e9b9e82d2c640946.tar.gz | |
Create persister_max_wrap_entries configuration variable.
| -rw-r--r-- | ebin/rabbit_app.in | 1 | ||||
| -rw-r--r-- | src/rabbit_persister.erl | 17 |
2 files changed, 10 insertions, 8 deletions
diff --git a/ebin/rabbit_app.in b/ebin/rabbit_app.in index 3616fcbf6c..aaffcc326e 100644 --- a/ebin/rabbit_app.in +++ b/ebin/rabbit_app.in @@ -18,6 +18,7 @@ {ssl_listeners, []}, {ssl_options, []}, {vm_memory_high_watermark, 0.4}, + {persister_max_wrap_entries, 500}, {default_user, <<"guest">>}, {default_pass, <<"guest">>}, {default_vhost, <<"/">>}, diff --git a/src/rabbit_persister.erl b/src/rabbit_persister.erl index 019d2a269d..34b0192219 100644 --- a/src/rabbit_persister.erl +++ b/src/rabbit_persister.erl @@ -51,8 +51,6 @@ -define(HIBERNATE_AFTER, 10000). --define(MAX_WRAP_ENTRIES, 500). - -define(PERSISTER_LOG_FORMAT_VERSION, {2, 4}). -record(pstate, {log_handle, entry_count, deadline, @@ -282,12 +280,15 @@ take_snapshot_and_save_old(LogHandle, Snapshot) -> maybe_take_snapshot(Force, State = #pstate{entry_count = EntryCount, log_handle = LH, - snapshot = Snapshot}) - when Force orelse EntryCount >= ?MAX_WRAP_ENTRIES -> - ok = take_snapshot(LH, Snapshot), - State#pstate{entry_count = 0}; -maybe_take_snapshot(_Force, State) -> - State. + snapshot = Snapshot}) -> + {ok, MaxWrapEntries} = application:get_env(persister_max_wrap_entries), + if + Force orelse EntryCount >= MaxWrapEntries -> + ok = take_snapshot(LH, Snapshot), + State#pstate{entry_count = 0}; + true -> + State + end. later_ms(DeltaMilliSec) -> {MegaSec, Sec, MicroSec} = now(), |
