diff options
author | Jon Bratseth <bratseth@oath.com> | 2021-06-03 16:16:04 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-06-03 16:16:04 +0200 |
commit | 25c0545e41367018abed8a3173c04b7e4a8257c1 (patch) | |
tree | 9338c06254203479e18148a75aa832ed0ab38b02 /node-repository/src/main/java/com | |
parent | fc1427f521a261532de8787238f9895a60a6404a (diff) | |
parent | 557fb6e1e59cb4e2e3ab2c50db82a12f349b49b8 (diff) |
Merge pull request #18108 from vespa-engine/bratseth/unspecified-resources
Bratseth/unspecified resources
Diffstat (limited to 'node-repository/src/main/java/com')
-rw-r--r-- | node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/Limits.java | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/Limits.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/Limits.java index 3dcaec63448..cafea4b0eaf 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/Limits.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/Limits.java @@ -60,12 +60,11 @@ public class Limits { } public Limits fullySpecified(ClusterSpec.Type type, NodeRepository nodeRepository) { - if (this.isEmpty()) return this; - CapacityPolicies capacityPolicies = new CapacityPolicies(nodeRepository); - var specifiedMin = min.with(min.nodeResources().isUnspecified() ? - capacityPolicies.defaultNodeResources(type) : min.nodeResources()); - var specifiedMax = max.with(max.nodeResources().isUnspecified() ? - capacityPolicies.defaultNodeResources(type) : max.nodeResources()); + if (this.isEmpty()) throw new IllegalStateException("Unspecified limits can not be made fully specified"); + + var defaultResources = new CapacityPolicies(nodeRepository).defaultNodeResources(type); + var specifiedMin = min.nodeResources().isUnspecified() ? min.with(defaultResources) : min; + var specifiedMax = max.nodeResources().isUnspecified() ? max.with(defaultResources) : max; return new Limits(specifiedMin, specifiedMax); } |