summaryrefslogtreecommitdiffstats
path: root/node-repository
diff options
context:
space:
mode:
authorValerij Fredriksen <freva@users.noreply.github.com>2020-05-28 23:00:13 +0200
committerGitHub <noreply@github.com>2020-05-28 23:00:13 +0200
commitc8a86f27e15c78f6bb1b97d0dd30a1ecace0077b (patch)
treeec7b9e6ab9e98ba61d8a9878d2b89545459dd0f1 /node-repository
parentdf731e25b35496ab4aada70d4c15bd6f704ea74b (diff)
parentda3bafc2b3609153a2c3c12c29c3f7ed0615691a (diff)
Merge pull request #13425 from vespa-engine/bratseth/use-real-forecast-in-initial
Use real resource forecast in initial deployment
Diffstat (limited to 'node-repository')
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/AllocatableClusterResources.java6
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeRepositoryProvisioner.java4
-rw-r--r--node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/DynamicDockerProvisionTest.java4
3 files changed, 9 insertions, 5 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/AllocatableClusterResources.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/AllocatableClusterResources.java
index 84f0b962d34..59dbe4bb8d4 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/AllocatableClusterResources.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/AllocatableClusterResources.java
@@ -32,10 +32,12 @@ public class AllocatableClusterResources {
private final double fulfilment;
/** Fake allocatable resources from requested capacity */
- public AllocatableClusterResources(ClusterResources requested, ClusterSpec.Type clusterType) {
+ public AllocatableClusterResources(ClusterResources requested,
+ ClusterSpec.Type clusterType,
+ NodeRepository nodeRepository) {
this.nodes = requested.nodes();
this.groups = requested.groups();
- this.realResources = requested.nodeResources(); // we don't know
+ this.realResources = nodeRepository.resourcesCalculator().requestToReal(requested.nodeResources());
this.advertisedResources = requested.nodeResources();
this.clusterType = clusterType;
this.fulfilment = 1;
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeRepositoryProvisioner.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeRepositoryProvisioner.java
index 3ddfb646cf3..59fca955a68 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeRepositoryProvisioner.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeRepositoryProvisioner.java
@@ -159,7 +159,9 @@ public class NodeRepositoryProvisioner implements Provisioner {
.not().removable()
.asList();
AllocatableClusterResources currentResources =
- nodes.isEmpty() ? new AllocatableClusterResources(requested.minResources(), clusterSpec.type()) // new deployment: Use min
+ nodes.isEmpty() ? new AllocatableClusterResources(requested.minResources(),
+ clusterSpec.type(),
+ nodeRepository) // new deployment: Use min
: new AllocatableClusterResources(nodes, nodeRepository);
return within(Limits.of(requested), clusterSpec.isExclusive(), currentResources);
}
diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/DynamicDockerProvisionTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/DynamicDockerProvisionTest.java
index ea0d78e3015..25387a2746c 100644
--- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/DynamicDockerProvisionTest.java
+++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/DynamicDockerProvisionTest.java
@@ -192,14 +192,14 @@ public class DynamicDockerProvisionTest {
tester.activate(app1, cluster1, Capacity.from(resources(2, 1, 2, 20, 40),
resources(4, 1, 2, 20, 40)));
tester.assertNodes("Allocation specifies memory in the advertised amount",
- 3, 1, 2, 20, 40,
+ 2, 1, 2, 20, 40,
app1, cluster1);
// Redeploy the same
tester.activate(app1, cluster1, Capacity.from(resources(2, 1, 2, 20, 40),
resources(4, 1, 2, 20, 40)));
tester.assertNodes("Allocation specifies memory in the advertised amount",
- 3, 1, 2, 20, 40,
+ 2, 1, 2, 20, 40,
app1, cluster1);
}