diff options
-rw-r--r-- | config-model/src/main/java/com/yahoo/vespa/model/search/NodeFlavorTuning.java | 7 | ||||
-rw-r--r-- | config-model/src/test/java/com/yahoo/vespa/model/search/NodeFlavorTuningTest.java | 10 |
2 files changed, 17 insertions, 0 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/search/NodeFlavorTuning.java b/config-model/src/main/java/com/yahoo/vespa/model/search/NodeFlavorTuning.java index 6cfd52cc232..5f552f119c5 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/search/NodeFlavorTuning.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/search/NodeFlavorTuning.java @@ -30,6 +30,7 @@ public class NodeFlavorTuning implements ProtonConfig.Producer { tuneDocumentStoreNumThreads(builder.background); tuneFlushStrategyMemoryLimits(builder.flush.memory); tuneFlushStrategyTlsSize(builder.flush.memory); + tuneSummaryReadIo(builder.summary.read); } private void setHwInfo(ProtonConfig.Builder builder) { @@ -72,4 +73,10 @@ public class NodeFlavorTuning implements ProtonConfig.Producer { builder.maxtlssize(tlsSizeBytes); } + private void tuneSummaryReadIo(ProtonConfig.Summary.Read.Builder builder) { + if (nodeFlavor.hasFastDisk()) { + builder.io(ProtonConfig.Summary.Read.Io.DIRECTIO); + } + } + } diff --git a/config-model/src/test/java/com/yahoo/vespa/model/search/NodeFlavorTuningTest.java b/config-model/src/test/java/com/yahoo/vespa/model/search/NodeFlavorTuningTest.java index 75f6abb2542..04ae3de3707 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/search/NodeFlavorTuningTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/search/NodeFlavorTuningTest.java @@ -87,6 +87,12 @@ public class NodeFlavorTuningTest { assertFlushStrategyTlsSize(100 * GB, 24000); } + @Test + public void require_that_summary_read_io_is_set_based_on_disk() { + assertSummaryReadIo(ProtonConfig.Summary.Read.Io.DIRECTIO, true); + assertSummaryReadIo(ProtonConfig.Summary.Read.Io.MMAP, false); + } + private static void assertDocumentStoreMaxFileSize(long expFileSizeBytes, int memoryGb) { assertEquals(expFileSizeBytes, configFromMemorySetting(memoryGb).summary().log().maxfilesize()); } @@ -104,6 +110,10 @@ public class NodeFlavorTuningTest { assertEquals(expTlsSizeBytes, configFromDiskSetting(diskGb).flush().memory().maxtlssize()); } + private static void assertSummaryReadIo(ProtonConfig.Summary.Read.Io.Enum expValue, boolean fastDisk) { + assertEquals(expValue, configFromDiskSetting(fastDisk).summary().read().io()); + } + private static ProtonConfig configFromDiskSetting(boolean fastDisk) { return getConfig(new FlavorsConfig.Flavor.Builder(). fastDisk(fastDisk)); |