aboutsummaryrefslogtreecommitdiffstats
path: root/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/RetiringOsUpgrader.java
diff options
context:
space:
mode:
Diffstat (limited to 'node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/RetiringOsUpgrader.java')
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/RetiringOsUpgrader.java14
1 files changed, 7 insertions, 7 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/RetiringOsUpgrader.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/RetiringOsUpgrader.java
index de4915d60aa..ccb7f40b0de 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/RetiringOsUpgrader.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/RetiringOsUpgrader.java
@@ -47,16 +47,16 @@ public class RetiringOsUpgrader extends OsUpgrader {
/** Returns nodes that are candidates for upgrade */
private NodeList candidates(Instant instant, OsVersionTarget target, NodeList allNodes) {
- NodeList activeNodes = allNodes.state(Node.State.active).nodeType(target.nodeType());
+ NodeList nodes = allNodes.state(Node.State.active, Node.State.provisioned).nodeType(target.nodeType());
if (softRebuild) {
// Retire only hosts which do not have a replaceable root disk
- activeNodes = activeNodes.not().replaceableRootDisk();
+ nodes = nodes.not().replaceableRootDisk();
}
- return activeNodes.not().deprovisioning()
- .osVersionIsBefore(target.version())
- .matching(node -> canUpgradeAt(instant, node))
- .byIncreasingOsVersion()
- .first(upgradeSlots(target, activeNodes.deprovisioning()));
+ return nodes.not().deprovisioning()
+ .not().onOsVersion(target.version())
+ .matching(node -> canUpgradeAt(instant, node))
+ .byIncreasingOsVersion()
+ .first(upgradeSlots(target, nodes.deprovisioning()));
}
/** Upgrade given host by retiring and deprovisioning it */