diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2019-09-20 10:32:11 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-09-20 10:32:11 +0200 |
commit | f595dec38a20f39d47c54df4a9c5d44f2a220485 (patch) | |
tree | 7a15a316a6151600d9de181ac9691282a65517a2 /container-search/src/main/java/com/yahoo/search/dispatch/searchcluster/Node.java | |
parent | 7c05ac06eb8d063bab4bd19ca42159a3f51f48b0 (diff) |
Revert "Revert "Bratseth/vip logic take 2""
Diffstat (limited to 'container-search/src/main/java/com/yahoo/search/dispatch/searchcluster/Node.java')
-rw-r--r-- | container-search/src/main/java/com/yahoo/search/dispatch/searchcluster/Node.java | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/dispatch/searchcluster/Node.java b/container-search/src/main/java/com/yahoo/search/dispatch/searchcluster/Node.java index a71ce0354f9..b47f2fefa5b 100644 --- a/container-search/src/main/java/com/yahoo/search/dispatch/searchcluster/Node.java +++ b/container-search/src/main/java/com/yahoo/search/dispatch/searchcluster/Node.java @@ -19,6 +19,7 @@ public class Node { private final int fs4port; final int group; + private final AtomicBoolean statusIsKnown = new AtomicBoolean(false); private final AtomicBoolean working = new AtomicBoolean(true); private final AtomicLong activeDocuments = new AtomicLong(0); @@ -46,11 +47,14 @@ public class Node { public int group() { return group; } public void setWorking(boolean working) { + this.statusIsKnown.lazySet(true); this.working.lazySet(working); } - /** Returns whether this node is currently responding to requests */ - public boolean isWorking() { return working.get(); } + /** Returns whether this node is currently responding to requests, or null if status is not known */ + public Boolean isWorking() { + return statusIsKnown.get() ? working.get() : null; + } /** Updates the active documents on this node */ public void setActiveDocuments(long activeDocuments) { @@ -77,4 +81,5 @@ public class Node { @Override public String toString() { return "search node " + hostname + ":" + fs4port + " in group " + group; } + } |