diff options
Diffstat (limited to 'config-model')
-rw-r--r-- | config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/NodesSpecification.java | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/NodesSpecification.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/NodesSpecification.java index 6a52ff4f051..ad6eebe1ca5 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/NodesSpecification.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/NodesSpecification.java @@ -60,6 +60,18 @@ public class NodesSpecification { boolean required, boolean canFail, boolean exclusive, Optional<String> dockerImageRepo, Optional<String> combinedId) { + if (max.smallerThan(min)) + throw new IllegalArgumentException("Min resources must be larger or equal to max resources, but " + + max + " is smaller than " + min); + + // Non-scaled resources must be equal + if ( ! min.nodeResources().justNonNumbers().equals(max.nodeResources().justNonNumbers())) + throw new IllegalArgumentException("Min and max resources must have the same non-numeric settings, but " + + "min is " + min + " and max " + max); + if (min.nodeResources().bandwidthGbps() != max.nodeResources().bandwidthGbps()) + throw new IllegalArgumentException("Min and max resources must have the same bandwith, but " + + "min is " + min + " and max " + max); + this.min = min; this.max = max; this.dedicated = dedicated; |