diff options
author | Jon Bratseth <bratseth@vespa.ai> | 2023-07-12 01:14:56 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@vespa.ai> | 2023-07-12 01:14:56 +0200 |
commit | 18f1d126e66e67584baa00f9f3c8817be9bdde77 (patch) | |
tree | ced67eb47f4d96ab4916ed4330565dc033722568 | |
parent | 7a8359cda8165694b614b5d12b8335ab388ef07d (diff) |
Simplify
-rw-r--r-- | node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/Preparer.java | 18 |
1 files changed, 2 insertions, 16 deletions
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 25efcabfe8e..734c315e1da 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 @@ -15,6 +15,7 @@ import java.util.ArrayList; import java.util.List; import java.util.ListIterator; import java.util.Optional; +import java.util.stream.Collectors; /** * Performs preparation of node activation changes for an application. @@ -61,7 +62,6 @@ class Preparer { List<Integer> usedIndices = clusterNodes.mapToList(node -> node.allocation().get().membership().index()); NodeIndices indices = new NodeIndices(usedIndices); - List<Node> acceptedNodes = new ArrayList<>(); GroupPreparer.PrepareResult result = groupPreparer.prepare(application, cluster, requestedNodes, @@ -74,11 +74,8 @@ class Preparer { .filter(node -> node.parentHostname().isEmpty() || activeHosts.parentOf(node).isPresent()) .toList(); } - - replace(acceptedNodes, accepted); moveToActiveGroup(surplusNodes, requestedNodes.groups(), cluster.group()); - acceptedNodes.removeAll(surplusNodes); - return acceptedNodes; + return accepted.stream().filter(node -> ! surplusNodes.contains(node)).collect(Collectors.toList()); } /** Prepare a load balancer for given application and cluster */ @@ -114,15 +111,4 @@ class Preparer { } } - /** - * Nodes are immutable so when changing attributes to the node we create a new instance. - * - * This method is used to both add new nodes and replaces old node references with the new references. - */ - private List<Node> replace(List<Node> list, List<Node> changed) { - list.removeAll(changed); - list.addAll(changed); - return list; - } - } |