aboutsummaryrefslogtreecommitdiffstats
path: root/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/OsUpgrader.java
diff options
context:
space:
mode:
Diffstat (limited to 'node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/OsUpgrader.java')
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/OsUpgrader.java5
1 files changed, 3 insertions, 2 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/OsUpgrader.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/OsUpgrader.java
index 5def863113c..f8becd31792 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/OsUpgrader.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/os/OsUpgrader.java
@@ -43,9 +43,10 @@ public abstract class OsUpgrader {
return Math.max(0, max - upgrading);
}
- /** Returns whether node can upgrade at given instant */
+ /** Returns whether node can change version at given instant */
final boolean canUpgradeAt(Instant instant, Node node) {
- return node.history().age(instant).compareTo(gracePeriod()) > 0;
+ return node.status().osVersion().downgrading() || // Fast-track downgrades
+ node.history().age(instant).compareTo(gracePeriod()) > 0;
}
/** The duration this leaves new nodes alone before scheduling any upgrade */