summaryrefslogtreecommitdiffstats
path: root/config-model/src/main/java
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@vespa.ai>2023-05-15 20:47:16 +0200
committerJon Bratseth <bratseth@vespa.ai>2023-05-15 20:47:16 +0200
commit9406d9e50a3b0d183ec2d76595679eea41f0129f (patch)
treec75ae3cd85aa29522043ceb1f3f49e80fe6f8f5f /config-model/src/main/java
parentc2a220bed85e7af09f62d34de339b168d9507b87 (diff)
Make all node resource elements optional
Diffstat (limited to 'config-model/src/main/java')
-rw-r--r--config-model/src/main/java/com/yahoo/config/model/provision/InMemoryProvisioner.java11
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/NodesSpecification.java6
2 files changed, 11 insertions, 6 deletions
diff --git a/config-model/src/main/java/com/yahoo/config/model/provision/InMemoryProvisioner.java b/config-model/src/main/java/com/yahoo/config/model/provision/InMemoryProvisioner.java
index 41697e61bf2..4b993f8e244 100644
--- a/config-model/src/main/java/com/yahoo/config/model/provision/InMemoryProvisioner.java
+++ b/config-model/src/main/java/com/yahoo/config/model/provision/InMemoryProvisioner.java
@@ -232,9 +232,14 @@ public class InMemoryProvisioner implements HostProvisioner {
}
// Minimal capacity policies
- private NodeResources decideResources(NodeResources requestedResources) {
- if (requestedResources.isUnspecified()) return defaultNodeResources;
- return requestedResources;
+ private NodeResources decideResources(NodeResources resources) {
+ if (resources.vcpuIsUnspecified())
+ resources = resources.withVcpu(defaultNodeResources.vcpu());
+ if (resources.memoryGbIsUnspecified())
+ resources = resources.withMemoryGb(defaultNodeResources.memoryGb());
+ if (resources.diskGbIsUnspecified())
+ resources = resources.withDiskGb(defaultNodeResources.diskGb());
+ return resources;
}
private List<HostSpec> allocateHostGroup(ClusterSpec clusterGroup, NodeResources requestedResourcesOrUnspecified,
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 c968e31325a..e70c555a366 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
@@ -307,9 +307,9 @@ public class NodesSpecification {
}
private static Pair<NodeResources, NodeResources> nodeResourcesFromResourcesElement(ModelElement element) {
- Pair<Double, Double> vcpu = toRange(element.requiredStringAttribute("vcpu"), .0, Double::parseDouble);
- Pair<Double, Double> memory = toRange(element.requiredStringAttribute("memory"), .0, s -> parseGbAmount(s, "B"));
- Pair<Double, Double> disk = toRange(element.requiredStringAttribute("disk"), .0, s -> parseGbAmount(s, "B"));
+ Pair<Double, Double> vcpu = toRange(element.stringAttribute("vcpu"), .0, Double::parseDouble);
+ Pair<Double, Double> memory = toRange(element.stringAttribute("memory"), .0, s -> parseGbAmount(s, "B"));
+ Pair<Double, Double> disk = toRange(element.stringAttribute("disk"), .0, s -> parseGbAmount(s, "B"));
Pair<Double, Double> bandwith = toRange(element.stringAttribute("bandwidth"), .3, s -> parseGbAmount(s, "BPS"));
NodeResources.DiskSpeed diskSpeed = parseOptionalDiskSpeed(element.stringAttribute("disk-speed"));
NodeResources.StorageType storageType = parseOptionalStorageType(element.stringAttribute("storage-type"));