summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTor Brede Vekterli <vekterli@vespa.ai>2024-01-29 13:17:20 +0100
committerTor Brede Vekterli <vekterli@vespa.ai>2024-01-29 13:17:20 +0100
commitc7a0edb4b093520caccd59a4b4021ee163cba059 (patch)
tree3e0e4c64cc8bffbc319a3330564bb8bc01258d04
parente9a8055e83560ba83712419ff3bc6b8a659f0266 (diff)
Use sentinel value for missing buckets rather than throwing
Bucket count should have been pre-verified as present by the caller.
-rw-r--r--clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/NodeStateChangeChecker.java2
1 files changed, 1 insertions, 1 deletions
diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/NodeStateChangeChecker.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/NodeStateChangeChecker.java
index eed8bc7ce92..814cb48c49f 100644
--- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/NodeStateChangeChecker.java
+++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/NodeStateChangeChecker.java
@@ -135,7 +135,7 @@ public class NodeStateChangeChecker {
long lastEntries = metrics.entries.get().getLast();
long lastDocs = metrics.docs.get().getLast();
if (lastEntries != 0) {
- long buckets = metrics.buckets.orElseThrow().getLast();
+ long buckets = metrics.buckets.map(Metrics.Value::getLast).orElse(-1L);
long tombstones = lastEntries - lastDocs; // docs are a subset of entries, so |docs| <= |entries|
return Optional.of(disallow("The storage node stores %d documents and %d tombstones across %d buckets".formatted(lastDocs, tombstones, buckets)));
}