aboutsummaryrefslogtreecommitdiffstats
path: root/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DummyVdsNode.java
diff options
context:
space:
mode:
authorTor Brede Vekterli <vekterli@verizonmedia.com>2019-03-21 14:52:41 +0100
committerTor Brede Vekterli <vekterli@verizonmedia.com>2019-03-21 15:17:33 +0100
commitb84a65296f8b63d7dbc6ad72bf9de7aa724ca4f4 (patch)
treef3ea495507e20126f6eecf7dc7be2141a546800c /clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DummyVdsNode.java
parent9c7c9ceecbb58f1ee82d212a6347bd5ec676490d (diff)
Activation reply processing must inspect actual version returned
Version mismatches in backend do not return explicit RPC errors, so actual vs. desired versions must be checked in order to avoid potentially spurious activation of other versions. Also do some minor code cleanup.
Diffstat (limited to 'clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DummyVdsNode.java')
-rw-r--r--clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DummyVdsNode.java7
1 files changed, 4 insertions, 3 deletions
diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DummyVdsNode.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DummyVdsNode.java
index caa3fbcd6cd..d8994ff52df 100644
--- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DummyVdsNode.java
+++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DummyVdsNode.java
@@ -580,11 +580,12 @@ public class DummyVdsNode {
synchronized(timer) {
int actualVersion = getLatestSystemStateVersion().orElse(0);
req.returnValues().add(new Int32Value(actualVersion));
- if (activateVersion != actualVersion) {
- req.setError(ErrorCode.METHOD_FAILED, "State version mismatch");
- } else {
+ if (activateVersion == actualVersion) {
activatedClusterStateVersion = activateVersion;
timer.notifyAll();
+ } else {
+ log.log(LogLevel.DEBUG, () -> String.format("Dummy node %s: got a mismatching activation (request version %d, " +
+ "actual %d), not marking version as active", this, activateVersion, actualVersion));
}
}
log.log(LogLevel.DEBUG, "Dummy node " + this + ": Activating cluster state version " + activateVersion);