aboutsummaryrefslogtreecommitdiffstats
path: root/node-repository
diff options
context:
space:
mode:
Diffstat (limited to 'node-repository')
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/Node.java8
1 files changed, 5 insertions, 3 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/Node.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/Node.java
index 812befda432..e7a20ff54b3 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/Node.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/Node.java
@@ -432,10 +432,12 @@ public final class Node implements Nodelike {
/** Returns a copy of this node with the current reboot generation set to the given number at the given instant */
public Node withCurrentRebootGeneration(long generation, Instant instant) {
+ if (generation < status.reboot().current())
+ throw new IllegalArgumentException("Cannot set reboot generation to " + generation +
+ ": lower than current generation: " + status.reboot().current());
+
Status newStatus = status().withReboot(status().reboot().withCurrent(generation));
- History newHistory = history();
- if (generation > status().reboot().current())
- newHistory = history.with(new History.Event(History.Event.Type.rebooted, Agent.system, instant));
+ History newHistory = history.with(new History.Event(History.Event.Type.rebooted, Agent.system, instant));
return this.with(newStatus).with(newHistory);
}