You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pegasus.apache.org by zh...@apache.org on 2022/06/28 02:02:31 UTC
[incubator-pegasus] branch master updated: feat: add a config of periodic_compaction_seconds in rocksdb (#817)
This is an automated email from the ASF dual-hosted git repository.
zhaoliwei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-pegasus.git
The following commit(s) were added to refs/heads/master by this push:
new 6d4d8b6a3 feat: add a config of periodic_compaction_seconds in rocksdb (#817)
6d4d8b6a3 is described below
commit 6d4d8b6a3debd83cf2b326e2d746ed828e950e27
Author: Zhong Chaoqiang <35...@users.noreply.github.com>
AuthorDate: Tue Jun 28 10:02:26 2022 +0800
feat: add a config of periodic_compaction_seconds in rocksdb (#817)
---
src/server/config.ini | 2 ++
src/server/pegasus_server_impl_init.cpp | 6 ++++++
2 files changed, 8 insertions(+)
diff --git a/src/server/config.ini b/src/server/config.ini
index 4c7f5e5d8..14efe890a 100644
--- a/src/server/config.ini
+++ b/src/server/config.ini
@@ -343,6 +343,8 @@
# format_version=5. This provides a smooth path for automatic adoption over time, with an
# option for early opt-in.
rocksdb_format_version = 2
+ # default of periodic_compaction_seconds is disabled
+ rocksdb_periodic_compaction_seconds = 0
# 3000, 30MB, 1000, 30s
rocksdb_multi_get_max_iteration_count = 3000
diff --git a/src/server/pegasus_server_impl_init.cpp b/src/server/pegasus_server_impl_init.cpp
index c1bdc19a8..cf34f04cb 100644
--- a/src/server/pegasus_server_impl_init.cpp
+++ b/src/server/pegasus_server_impl_init.cpp
@@ -586,6 +586,12 @@ pegasus_server_impl::pegasus_server_impl(dsn::replication::replica *r)
_key_ttl_compaction_filter_factory = std::make_shared<KeyWithTTLCompactionFilterFactory>();
_data_cf_opts.compaction_filter_factory = _key_ttl_compaction_filter_factory;
+ _data_cf_opts.periodic_compaction_seconds =
+ dsn_config_get_value_uint64("pegasus.server",
+ "rocksdb_periodic_compaction_seconds",
+ 0,
+ "periodic_compaction_seconds, 0 means no periodic compaction");
+
// get the checkpoint reserve options.
_checkpoint_reserve_min_count_in_config = (uint32_t)dsn_config_get_value_uint64(
"pegasus.server", "checkpoint_reserve_min_count", 2, "checkpoint_reserve_min_count");
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pegasus.apache.org
For additional commands, e-mail: commits-help@pegasus.apache.org