This is an automated email from the ASF dual-hosted git repository. jackietien pushed a commit to branch caLastOpt in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit e268f85ff7eb0ccadf6b77007f5b9ca8f82a2c66 Author: JackieTien97 <[email protected]> AuthorDate: Thu May 11 14:34:20 2023 +0800 correct metric --- .../org/apache/iotdb/db/engine/cache/BloomFilterCache.java | 2 +- .../org/apache/iotdb/db/engine/cache/CacheHitRatioMonitor.java | 2 +- .../apache/iotdb/db/engine/cache/TimeSeriesMetadataCache.java | 10 +--------- .../iotdb/db/mpp/metric/TimeSeriesMetadataCacheMetrics.java | 2 +- 4 files changed, 4 insertions(+), 12 deletions(-) diff --git a/server/src/main/java/org/apache/iotdb/db/engine/cache/BloomFilterCache.java b/server/src/main/java/org/apache/iotdb/db/engine/cache/BloomFilterCache.java index 3980bdf6a62..fd97084c18a 100644 --- a/server/src/main/java/org/apache/iotdb/db/engine/cache/BloomFilterCache.java +++ b/server/src/main/java/org/apache/iotdb/db/engine/cache/BloomFilterCache.java @@ -105,7 +105,7 @@ public class BloomFilterCache { return bloomFilter; } - public double calculateChunkHitRatio() { + public double calculateHitRatio() { return lruCache.stats().hitRate(); } diff --git a/server/src/main/java/org/apache/iotdb/db/engine/cache/CacheHitRatioMonitor.java b/server/src/main/java/org/apache/iotdb/db/engine/cache/CacheHitRatioMonitor.java index c320c26eb73..85baa29c2c2 100644 --- a/server/src/main/java/org/apache/iotdb/db/engine/cache/CacheHitRatioMonitor.java +++ b/server/src/main/java/org/apache/iotdb/db/engine/cache/CacheHitRatioMonitor.java @@ -107,7 +107,7 @@ public class CacheHitRatioMonitor implements CacheHitRatioMonitorMXBean, IServic @Override public double getBloomFilterHitRatio() { - return BloomFilterCache.getInstance().calculateChunkHitRatio(); + return BloomFilterCache.getInstance().calculateHitRatio(); } @Override diff --git a/server/src/main/java/org/apache/iotdb/db/engine/cache/TimeSeriesMetadataCache.java b/server/src/main/java/org/apache/iotdb/db/engine/cache/TimeSeriesMetadataCache.java index 6091af75fde..296e373dbfc 100644 --- a/server/src/main/java/org/apache/iotdb/db/engine/cache/TimeSeriesMetadataCache.java +++ b/server/src/main/java/org/apache/iotdb/db/engine/cache/TimeSeriesMetadataCache.java @@ -74,9 +74,6 @@ public class TimeSeriesMetadataCache { private final AtomicLong entryAverageSize = new AtomicLong(0); - private final AtomicLong bloomFilterRequestCount = new AtomicLong(0L); - private final AtomicLong bloomFilterPreventCount = new AtomicLong(0L); - private final Map<String, WeakReference<String>> devices = Collections.synchronizedMap(new WeakHashMap<>()); private static final String SEPARATOR = "$"; @@ -168,9 +165,7 @@ public class TimeSeriesMetadataCache { BloomFilterCache.getInstance() .get(new BloomFilterCache.BloomFilterCacheKey(key.filePath), debug); if (bloomFilter != null) { - bloomFilterRequestCount.incrementAndGet(); if (!bloomFilter.contains(path.getFullPath())) { - bloomFilterPreventCount.incrementAndGet(); if (debug) { DEBUG_LOGGER.info("TimeSeries meta data {} is filter by bloomFilter!", key); } @@ -239,10 +234,7 @@ public class TimeSeriesMetadataCache { } public double calculateBloomFilterHitRatio() { - if (bloomFilterRequestCount.get() == 0L) { - return 1.0d; - } - return bloomFilterPreventCount.get() * 100.0d / bloomFilterRequestCount.get(); + return BloomFilterCache.getInstance().calculateHitRatio(); } /** clear LRUCache. */ diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/metric/TimeSeriesMetadataCacheMetrics.java b/server/src/main/java/org/apache/iotdb/db/mpp/metric/TimeSeriesMetadataCacheMetrics.java index 07d9b7f57bb..965ed5483e4 100644 --- a/server/src/main/java/org/apache/iotdb/db/mpp/metric/TimeSeriesMetadataCacheMetrics.java +++ b/server/src/main/java/org/apache/iotdb/db/mpp/metric/TimeSeriesMetadataCacheMetrics.java @@ -43,7 +43,7 @@ public class TimeSeriesMetadataCacheMetrics implements IMetricSet { Metric.CACHE_HIT.toString(), MetricLevel.IMPORTANT, timeSeriesMetadataCache, - l -> (long) timeSeriesMetadataCache.calculateTimeSeriesMetadataHitRatio(), + TimeSeriesMetadataCache::calculateTimeSeriesMetadataHitRatio, Tag.NAME.toString(), "timeSeriesMeta"); metricService.createAutoGauge(
