diff options
author | Andreas Eriksen <andreer@yahoo-inc.com> | 2017-10-26 11:21:54 +0200 |
---|---|---|
committer | Andreas Eriksen <andreer@yahoo-inc.com> | 2017-10-26 11:21:54 +0200 |
commit | 0763e130f59e1bbe2367810f8eb97514ef3d7493 (patch) | |
tree | 4ebb93bb73c93b45c6c1f4a58831c8551e95432c /node-repository | |
parent | d6ae51f8a026ff407926825cfb88b749e6e968ef (diff) |
don't allow nodes with spec divergence to go to dirty
Diffstat (limited to 'node-repository')
-rw-r--r-- | node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepository.java | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepository.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepository.java index 92f52155edf..88daa34d8ca 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepository.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepository.java @@ -386,8 +386,9 @@ public class NodeRepository extends AbstractComponent { Node nodeToDirty = getNode(hostname, Node.State.provisioned, Node.State.failed, Node.State.parked).orElseThrow(() -> new IllegalArgumentException("Could not deallocate " + hostname + ": No such node in the provisioned, failed or parked state")); - if (nodeToDirty.status().hardwareFailureDescription().isPresent()) - throw new IllegalArgumentException("Could not deallocate " + hostname + ": It has a hardware failure"); + if (nodeToDirty.status().hardwareFailureDescription().isPresent() || nodeToDirty.status().hardwareDivergence().isPresent()) + throw new IllegalArgumentException("Could not deallocate " + hostname + ": It has a hardware failure/spec divergence"); + return setDirty(nodeToDirty); } |