diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2022-01-18 23:15:17 +0100 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2022-01-18 23:26:32 +0100 |
commit | c6e53914584359256e7651d106972eebb5dc49b5 (patch) | |
tree | af78f3ca07a9ab13ed9de541ae4475696a7b67eb | |
parent | ba063a6ca30deee66590efe4ae6e4e9f6ac83b5c (diff) |
Reduce default split size from 32M to 16M.
4 files changed, 10 insertions, 11 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/BucketSplitting.java b/config-model/src/main/java/com/yahoo/vespa/model/content/BucketSplitting.java index 628987d5930..e15c531aa32 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/content/BucketSplitting.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/content/BucketSplitting.java @@ -8,9 +8,9 @@ import com.yahoo.vespa.model.builder.xml.dom.ModelElement; * Represents configuration for bucket splitting. */ public class BucketSplitting implements StorDistributormanagerConfig.Producer { - Integer maxDocuments; - Integer splitSize; - Integer minSplitCount; + private final Integer maxDocuments; + private final Integer splitSize; + private final Integer minSplitCount; public static class Builder { public BucketSplitting build(ModelElement clusterElem) { diff --git a/config-model/src/test/java/com/yahoo/vespa/model/content/DistributorTest.java b/config-model/src/test/java/com/yahoo/vespa/model/content/DistributorTest.java index 90e3aff0c45..d23dca65dd1 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/content/DistributorTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/content/DistributorTest.java @@ -107,7 +107,7 @@ public class DistributorTest { assertEquals(1024, conf.splitcount()); assertEquals(512, conf.joincount()); - assertEquals(33544432, conf.splitsize()); + assertEquals(16772216, conf.splitsize()); assertEquals(16000000, conf.joinsize()); assertEquals(8, conf.minsplitcount()); assertTrue(conf.inlinebucketsplitting()); @@ -138,7 +138,7 @@ public class DistributorTest { assertEquals(1024, conf.splitcount()); assertEquals(512, conf.joincount()); - assertEquals(33544432, conf.splitsize()); + assertEquals(16772216, conf.splitsize()); assertEquals(16000000, conf.joinsize()); assertEquals(14, conf.minsplitcount()); assertTrue(conf.inlinebucketsplitting()); diff --git a/configdefinitions/src/vespa/stor-filestor.def b/configdefinitions/src/vespa/stor-filestor.def index 2b1105803e2..99f79a92c07 100644 --- a/configdefinitions/src/vespa/stor-filestor.def +++ b/configdefinitions/src/vespa/stor-filestor.def @@ -39,9 +39,8 @@ common_merge_chain_optimalization_minimum_size int default=64 restart ## Chunksize to use while merging buckets between nodes. ## -## Default is set to 4 MB. -## Note that this will gradually be increased to reach stor-distributormanager:splitsize which is currently at 32M -bucket_merge_chunk_size int default=33554432 restart +## Should follow stor-distributormanager:splitsize (16MB). +bucket_merge_chunk_size int default=16772216 restart ## When merging, it is possible to send more metadata than needed in order to ## let local nodes in merge decide which entries fits best to add this time diff --git a/storage/src/vespa/storage/config/stor-distributormanager.def b/storage/src/vespa/storage/config/stor-distributormanager.def index dba36d1b73d..a01bd30546e 100644 --- a/storage/src/vespa/storage/config/stor-distributormanager.def +++ b/storage/src/vespa/storage/config/stor-distributormanager.def @@ -5,9 +5,9 @@ namespace=vespa.config.content.core maxpendingidealstateoperations int default=100 ## The total size of unique documents in a bucket before we split it due to -## being too big. By default this is now 32 MB. -splitsize int default=33544432 - +## being too big. By default this is now 16 MB. Should be kept in sync with stor-filestor.def:bucket_merge_chunk_size. +splitsize int default=16772216 + ## The maximum amount of entries in a file before we should attempt to split it. ## A meta data entry in a slotfile currently uses 40 bytes. It is probably ## good to have the split size, such that all meta data entries are normally |