diff options
author | Geir Storli <geirst@yahooinc.com> | 2022-02-24 14:33:49 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-02-24 14:33:49 +0100 |
commit | 88cfafdd9e56d97f021061ad3f460689fda62567 (patch) | |
tree | f8a389014c5e2313019b86fe62bf86eedae3b626 /config-model/src/main/java/com/yahoo | |
parent | 683eb8658cb1c20a3ff98d529b8553f17240e6e3 (diff) | |
parent | 24d719637a8b047021741f517e8b85dfc2e69f33 (diff) |
Merge pull request #21368 from vespa-engine/geirst/more-disk-headroom-for-content-nodes
Give content nodes more headroom when deriving resource limit for disk.
Diffstat (limited to 'config-model/src/main/java/com/yahoo')
-rw-r--r-- | config-model/src/main/java/com/yahoo/vespa/model/content/ClusterResourceLimits.java | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/ClusterResourceLimits.java b/config-model/src/main/java/com/yahoo/vespa/model/content/ClusterResourceLimits.java index 80dd17213f3..58098e09d7e 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/content/ClusterResourceLimits.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/content/ClusterResourceLimits.java @@ -91,8 +91,8 @@ public class ClusterResourceLimits { deriveClusterControllerLimit(ctrlBuilder.getDiskLimit(), nodeBuilder.getDiskLimit(), ctrlBuilder::setDiskLimit); deriveClusterControllerLimit(ctrlBuilder.getMemoryLimit(), nodeBuilder.getMemoryLimit(), ctrlBuilder::setMemoryLimit); - deriveContentNodeLimit(nodeBuilder.getDiskLimit(), ctrlBuilder.getDiskLimit(), nodeBuilder::setDiskLimit); - deriveContentNodeLimit(nodeBuilder.getMemoryLimit(), ctrlBuilder.getMemoryLimit(), nodeBuilder::setMemoryLimit); + deriveContentNodeLimit(nodeBuilder.getDiskLimit(), ctrlBuilder.getDiskLimit(), 0.6, nodeBuilder::setDiskLimit); + deriveContentNodeLimit(nodeBuilder.getMemoryLimit(), ctrlBuilder.getMemoryLimit(), 0.5, nodeBuilder::setMemoryLimit); } private void considerSettingDefaultClusterControllerLimit(Optional<Double> clusterControllerLimit, @@ -117,15 +117,16 @@ public class ClusterResourceLimits { private void deriveContentNodeLimit(Optional<Double> contentNodeLimit, Optional<Double> clusterControllerLimit, + double scaleFactor, Consumer<Double> setter) { if (contentNodeLimit.isEmpty()) { clusterControllerLimit.ifPresent(limit -> - setter.accept(calcContentNodeLimit(limit))); + setter.accept(calcContentNodeLimit(limit, scaleFactor))); } } - private double calcContentNodeLimit(double clusterControllerLimit) { - return clusterControllerLimit + ((1.0 - clusterControllerLimit) / 2); + private double calcContentNodeLimit(double clusterControllerLimit, double scaleFactor) { + return clusterControllerLimit + ((1.0 - clusterControllerLimit) * scaleFactor); } |