aboutsummaryrefslogtreecommitdiffstats
path: root/node-repository/src/test/java/com/yahoo/vespa/hosted/provision
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@gmail.com>2023-03-01 14:26:52 +0100
committerJon Bratseth <bratseth@gmail.com>2023-03-01 14:26:52 +0100
commit871c58d69fdec8705675fd55993e562ff04a044a (patch)
tree5bafccaa2d0c75300cc339a8086791ded6098bcc /node-repository/src/test/java/com/yahoo/vespa/hosted/provision
parent31db1c671fac8e34f098f9d6d9797c2c1e05d433 (diff)
Record UP events also when not having been down
Diffstat (limited to 'node-repository/src/test/java/com/yahoo/vespa/hosted/provision')
-rw-r--r--node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailerTest.java13
1 files changed, 11 insertions, 2 deletions
diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailerTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailerTest.java
index 54062e966f1..491485b78fc 100644
--- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailerTest.java
+++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailerTest.java
@@ -199,6 +199,11 @@ public class NodeFailerTest {
@Test
public void node_failing() {
NodeFailTester tester = NodeFailTester.withTwoApplications(6);
+ String downHost1 = tester.nodeRepository.nodes().list(Node.State.active).owner(NodeFailTester.app1).asList().get(1).hostname();
+ String downHost2 = tester.nodeRepository.nodes().list(Node.State.active).owner(NodeFailTester.app2).asList().get(3).hostname();
+ // No liveness evidence yet:
+ assertFalse(tester.nodeRepository.nodes().node(downHost1).get().isDown());
+ assertFalse(tester.nodeRepository.nodes().node(downHost1).get().isUp());
// For a day all nodes work so nothing happens
for (int minutes = 0; minutes < 24 * 60; minutes +=5 ) {
@@ -208,10 +213,10 @@ public class NodeFailerTest {
assertEquals(0, tester.deployer.redeployments);
assertEquals(8, tester.nodeRepository.nodes().list(Node.State.active).nodeType(NodeType.tenant).size());
assertEquals(0, tester.nodeRepository.nodes().list(Node.State.failed).nodeType(NodeType.tenant).size());
+ assertFalse(tester.nodeRepository.nodes().node(downHost1).get().isDown());
+ assertTrue(tester.nodeRepository.nodes().node(downHost1).get().isUp());
}
- String downHost1 = tester.nodeRepository.nodes().list(Node.State.active).owner(NodeFailTester.app1).asList().get(1).hostname();
- String downHost2 = tester.nodeRepository.nodes().list(Node.State.active).owner(NodeFailTester.app2).asList().get(3).hostname();
tester.serviceMonitor.setHostDown(downHost1);
tester.serviceMonitor.setHostDown(downHost2);
// nothing happens the first 45 minutes
@@ -221,12 +226,16 @@ public class NodeFailerTest {
assertEquals(0, tester.deployer.redeployments);
assertEquals(8, tester.nodeRepository.nodes().list(Node.State.active).nodeType(NodeType.tenant).size());
assertEquals(0, tester.nodeRepository.nodes().list(Node.State.failed).nodeType(NodeType.tenant).size());
+ assertTrue(tester.nodeRepository.nodes().node(downHost1).get().isDown());
+ assertFalse(tester.nodeRepository.nodes().node(downHost1).get().isUp());
}
tester.serviceMonitor.setHostUp(downHost1);
// downHost2 should now be failed and replaced, but not downHost1
tester.clock.advance(Duration.ofDays(1));
tester.runMaintainers();
+ assertFalse(tester.nodeRepository.nodes().node(downHost1).get().isDown());
+ assertTrue(tester.nodeRepository.nodes().node(downHost1).get().isUp());
assertEquals(1, tester.deployer.redeployments);
assertEquals(8, tester.nodeRepository.nodes().list(Node.State.active).nodeType(NodeType.tenant).size());
assertEquals(1, tester.nodeRepository.nodes().list(Node.State.failed).nodeType(NodeType.tenant).size());