aboutsummaryrefslogtreecommitdiff
path: root/src/zen/cmds/admin_cmd.cpp
diff options
context:
space:
mode:
authorDan Engelbrecht <[email protected]>2023-11-21 16:58:43 +0100
committerGitHub <[email protected]>2023-11-21 16:58:43 +0100
commit669a8869b5414c0e8708dd90b1f4aa297d091887 (patch)
treec81c309cf3013e3129caeefb5c3eaba2aaed6967 /src/zen/cmds/admin_cmd.cpp
parentfixed paths in ue_build_linux/README.md (diff)
downloadarchived-zen-669a8869b5414c0e8708dd90b1f4aa297d091887.tar.xz
archived-zen-669a8869b5414c0e8708dd90b1f4aa297d091887.zip
add command line options for compact block threshold and gc verbose (#557)
- Feature: Added new options to zenserver for GC V2 - `--gc-compactblock-threshold` GCV2 - how much of a compact block should be used to skip compacting the block, default is 90% - `--gc-verbose` GCV2 - enable more verbose output when running a GC pass - Feature: Added new options to `zen gc` command for GC V2 - `--compactblockthreshold` GCV2 - how much of a compact block should be used to skip compacting the block, default is 90% - `--verbose` GCV2 - enable more verbose output when running a GC pass - Feature: Added new parameters for endpoint `admin/gc` (PUT) - `compactblockthreshold` GCV2 - how much of a compact block should be used to skip compacting the block, default is 90% - `verbose` GCV2 - enable more verbose output when running a GC pass
Diffstat (limited to 'src/zen/cmds/admin_cmd.cpp')
-rw-r--r--src/zen/cmds/admin_cmd.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/zen/cmds/admin_cmd.cpp b/src/zen/cmds/admin_cmd.cpp
index b041aa46e..5786ae6c5 100644
--- a/src/zen/cmds/admin_cmd.cpp
+++ b/src/zen/cmds/admin_cmd.cpp
@@ -99,6 +99,15 @@ GcCommand::GcCommand()
.add_option("", "", "usegcv1", "Force use of GC version 1", cxxopts::value(m_ForceUseGCV1)->default_value("false"), "<usegcv2>");
m_Options
.add_option("", "", "usegcv2", "Force use of GC version 2", cxxopts::value(m_ForceUseGCV2)->default_value("false"), "<usegcv2>");
+ m_Options.add_option("",
+ "",
+ "compactblockthreshold",
+ "How much of a compact block should be used to skip compacting the block. 0 - compact only empty eligible blocks, "
+ "100 - compact all non-full eligible blocks.",
+ cxxopts::value(m_CompactBlockThreshold)->default_value("60"),
+ "<compactblockthreshold>");
+ m_Options
+ .add_option("", "", "verbose", "Enable verbose logging for GC", cxxopts::value(m_Verbose)->default_value("false"), "<verbose>");
}
GcCommand::~GcCommand()
@@ -155,6 +164,14 @@ GcCommand::Run(const ZenCliOptions& GlobalOptions, int argc, char** argv)
{
Params.Add({"forceusegcv2", "true"});
}
+ if (m_CompactBlockThreshold)
+ {
+ Params.Add({"compactblockthreshold", fmt::format("{}", m_CompactBlockThreshold)});
+ }
+ if (m_Verbose)
+ {
+ Params.Add({"verbose", "true"});
+ }
cpr::Session Session;
Session.SetHeader(cpr::Header{{"Accept", "application/json"}});