aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@vespa.ai>2023-07-12 10:44:18 +0200
committerJon Bratseth <bratseth@vespa.ai>2023-07-12 10:44:18 +0200
commit20a4805e4289db5914a7d846467e5b8c5f55f122 (patch)
tree1c954057b4719b30ccc57a066668ff5909f015d3
parenta73e7075523aaf2c9fd999da72fc42edc58466e5 (diff)
Simplify
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeRepositoryProvisioner.java1
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/Preparer.java16
2 files changed, 8 insertions, 9 deletions
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 ebaa8a1b9c4..43b8cd08989 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
@@ -238,6 +238,7 @@ public class NodeRepositoryProvisioner implements Provisioner {
}
private List<HostSpec> asSortedHosts(List<Node> nodes, NodeResources requestedResources) {
+ nodes = new ArrayList<>(nodes);
nodes.sort(Comparator.comparingInt(node -> node.allocation().get().membership().index()));
List<HostSpec> hosts = new ArrayList<>(nodes.size());
for (Node node : nodes) {
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/Preparer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/Preparer.java
index d30323063cb..0617eaff9d9 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/Preparer.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/Preparer.java
@@ -30,14 +30,14 @@ class Preparer {
}
/** Prepare all required resources for the given application and cluster */
- public List<Node> prepare(ApplicationId application, ClusterSpec cluster, NodeSpec requestedNodes) {
+ public List<Node> prepare(ApplicationId application, ClusterSpec cluster, NodeSpec requested) {
try {
- var nodes = prepareNodes(application, cluster, requestedNodes);
- prepareLoadBalancer(application, cluster, requestedNodes);
+ var nodes = prepareNodes(application, cluster, requested);
+ prepareLoadBalancer(application, cluster, requested);
return nodes;
}
catch (NodeAllocationException e) {
- throw new NodeAllocationException("Could not satisfy " + requestedNodes +
+ throw new NodeAllocationException("Could not satisfy " + requested +
" in " + application + " " + cluster, e,
e.retryable());
}
@@ -52,14 +52,12 @@ class Preparer {
// but it may not change the set of active nodes, as the active nodes must stay in sync with the
// active config model which is changed on activate
private List<Node> prepareNodes(ApplicationId application, ClusterSpec cluster, NodeSpec requested) {
- LockedNodeList allNodes = groupPreparer.createUnlockedNodeList();
- List<Node> accepted = groupPreparer.prepare(application, cluster, requested, allNodes);
- return new ArrayList<>(accepted);
+ return groupPreparer.prepare(application, cluster, requested, groupPreparer.createUnlockedNodeList());
}
/** Prepare a load balancer for given application and cluster */
- public void prepareLoadBalancer(ApplicationId application, ClusterSpec cluster, NodeSpec requestedNodes) {
- loadBalancerProvisioner.ifPresent(provisioner -> provisioner.prepare(application, cluster, requestedNodes));
+ public void prepareLoadBalancer(ApplicationId application, ClusterSpec cluster, NodeSpec requested) {
+ loadBalancerProvisioner.ifPresent(provisioner -> provisioner.prepare(application, cluster, requested));
}
}