diff options
author | Tor Brede Vekterli <vekterli@vespa.ai> | 2024-01-26 13:01:46 +0100 |
---|---|---|
committer | Tor Brede Vekterli <vekterli@vespa.ai> | 2024-01-26 14:31:37 +0100 |
commit | ac1f180cb7524da83bb4fbd18933b73c087cf4b6 (patch) | |
tree | 343eb81e069fcec1f9e10f71ad6bffd060976ce3 /metrics | |
parent | 8dc79844053124419d3f217e904f3473483b9da2 (diff) |
Use stored entry count rather than bucket count for (dis-)allowing permanent node down edge
The stored entry count encompasses both visible documents and
tombstones. Using this count rather than bucket count avoids any
issues where a node only containing empty buckets (i.e. no actual
data) is prohibited from being marked as permanently down.
Entry count is cross-checked with the visible document count;
if the former is zero, the latter should always be zero as well.
Since entry/doc counts were only recently introduced as part of
the HostInfo payload, we have to handle the case where these do
not exist. If entry count is not present, the decision to allow
or disallow the transition falls back to the bucket count check.
Diffstat (limited to 'metrics')
-rw-r--r-- | metrics/src/main/java/ai/vespa/metrics/StorageMetrics.java | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/metrics/src/main/java/ai/vespa/metrics/StorageMetrics.java b/metrics/src/main/java/ai/vespa/metrics/StorageMetrics.java index dd8c2a2a1af..4d91cc1d989 100644 --- a/metrics/src/main/java/ai/vespa/metrics/StorageMetrics.java +++ b/metrics/src/main/java/ai/vespa/metrics/StorageMetrics.java @@ -152,6 +152,7 @@ public enum StorageMetrics implements VespaMetrics { VDS_DATASTORED_BUCKET_SPACE_BUCKET_DB_MEMORY_USAGE_ONHOLD_BYTES("vds.datastored.bucket_space.bucket_db.memory_usage.onhold_bytes", Unit.BYTE, "The number of bytes on hold"), VDS_DATASTORED_BUCKET_SPACE_BUCKET_DB_MEMORY_USAGE_USED_BYTES("vds.datastored.bucket_space.bucket_db.memory_usage.used_bytes", Unit.BYTE, "The number of used bytes (<= allocated_bytes)"), VDS_DATASTORED_BUCKET_SPACE_BUCKETS_TOTAL("vds.datastored.bucket_space.buckets_total", Unit.BUCKET, "Total number buckets present in the bucket space (ready + not ready)"), + VDS_DATASTORED_BUCKET_SPACE_ENTRIES("vds.datastored.bucket_space.entries", Unit.DOCUMENT, "Number of entries (documents + tombstones) stored in the bucket space"), VDS_DATASTORED_BUCKET_SPACE_BYTES("vds.datastored.bucket_space.bytes", Unit.BYTE, "Bytes stored across all documents in the bucket space"), VDS_DATASTORED_BUCKET_SPACE_DOCS("vds.datastored.bucket_space.docs", Unit.DOCUMENT, "Documents stored in the bucket space"), VDS_DATASTORED_BUCKET_SPACE_READY_BUCKETS("vds.datastored.bucket_space.ready_buckets", Unit.BUCKET, "Number of ready buckets in the bucket space"), |