aboutsummaryrefslogtreecommitdiffstats
path: root/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/RebuildingOsUpgrader.java
diff options
context:
space:
mode:
Diffstat (limited to 'node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/RebuildingOsUpgrader.java')
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/RebuildingOsUpgrader.java12
1 files changed, 6 insertions, 6 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/RebuildingOsUpgrader.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/RebuildingOsUpgrader.java
index e0affaae666..805793b41a4 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/RebuildingOsUpgrader.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/RebuildingOsUpgrader.java
@@ -66,13 +66,13 @@ public class RebuildingOsUpgrader extends OsUpgrader {
.statefulClusters());
// Rebuild hosts not containing stateful clusters with retiring nodes, up to rebuild limit
- NodeList activeHosts = hostsOfTargetType.state(Node.State.active);
- int rebuildLimit = upgradeSlots(target, activeHosts.rebuilding(softRebuild));
+ NodeList hosts = hostsOfTargetType.state(Node.State.active, Node.State.provisioned);
+ int rebuildLimit = upgradeSlots(target, hosts.rebuilding(softRebuild));
List<Node> hostsToRebuild = new ArrayList<>(rebuildLimit);
- NodeList candidates = activeHosts.not().rebuilding(softRebuild)
- .osVersionIsBefore(target.version())
- .matching(node -> canUpgradeAt(now, node))
- .byIncreasingOsVersion();
+ NodeList candidates = hosts.not().rebuilding(softRebuild)
+ .not().onOsVersion(target.version())
+ .matching(node -> canUpgradeAt(now, node))
+ .byIncreasingOsVersion();
for (Node host : candidates) {
if (hostsToRebuild.size() == rebuildLimit) break;
Set<ClusterId> clustersOnHost = activeNodes.childrenOf(host).statefulClusters();