aboutsummaryrefslogtreecommitdiff
path: root/src/zenremotestore/partialblockrequestmode.cpp
diff options
context:
space:
mode:
authorDan Engelbrecht <[email protected]>2026-02-24 16:10:36 +0100
committerGitHub Enterprise <[email protected]>2026-02-24 16:10:36 +0100
commiteb3079e2ec2969829cbc5b6921575d53df351f0f (patch)
treedb00660bd9132988abf66d43b43ac76d737b3723 /src/zenremotestore/partialblockrequestmode.cpp
parentAdd `zen ui` command (#779) (diff)
downloadzen-eb3079e2ec2969829cbc5b6921575d53df351f0f.tar.xz
zen-eb3079e2ec2969829cbc5b6921575d53df351f0f.zip
use partial blocks for oplog import (#780)
Feature: Add --allow-partial-block-requests to zen oplog-import Improvement: zen oplog-import now uses partial block requests to reduce download size Improvement: Use latency to Cloud Storage host and Zen Cache host when calculating partial block requests
Diffstat (limited to 'src/zenremotestore/partialblockrequestmode.cpp')
-rw-r--r--src/zenremotestore/partialblockrequestmode.cpp27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/zenremotestore/partialblockrequestmode.cpp b/src/zenremotestore/partialblockrequestmode.cpp
new file mode 100644
index 000000000..b3edf515b
--- /dev/null
+++ b/src/zenremotestore/partialblockrequestmode.cpp
@@ -0,0 +1,27 @@
+// Copyright Epic Games, Inc. All Rights Reserved.
+
+#include <zenremotestore/partialblockrequestmode.h>
+
+#include <zencore/string.h>
+
+namespace zen {
+
+EPartialBlockRequestMode
+PartialBlockRequestModeFromString(const std::string_view ModeString)
+{
+ switch (HashStringAsLowerDjb2(ModeString))
+ {
+ case HashStringDjb2("false"):
+ return EPartialBlockRequestMode::Off;
+ case HashStringDjb2("zencacheonly"):
+ return EPartialBlockRequestMode::ZenCacheOnly;
+ case HashStringDjb2("mixed"):
+ return EPartialBlockRequestMode::Mixed;
+ case HashStringDjb2("true"):
+ return EPartialBlockRequestMode::All;
+ default:
+ return EPartialBlockRequestMode::Invalid;
+ }
+}
+
+} // namespace zen