This is an automated email from the ASF dual-hosted git repository.

hui pushed a commit to branch QueryMetrics
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 4c6dd00e32f7677f832d52dfe3158e02392f02bb
Author: Minghui Liu <[email protected]>
AuthorDate: Wed Dec 7 09:35:38 2022 +0800

    fix
---
 .../apache/iotdb/db/engine/cache/TimeSeriesMetadataCache.java    | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

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 c9610d3354..b3ad5d379b 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
@@ -140,15 +140,17 @@ public class TimeSeriesMetadataCache {
     TimeseriesMetadata timeseriesMetadata = lruCache.getIfPresent(key);
 
     if (timeseriesMetadata == null) {
-      long startTime = System.nanoTime();
       if (debug) {
         DEBUG_LOGGER.info(
             "Cache miss: {}.{} in file: {}", key.device, key.measurement, 
key.filePath);
         DEBUG_LOGGER.info("Device: {}, all sensors: {}", key.device, 
allSensors);
       }
+
       // allow for the parallelism of different devices
       synchronized (
           devices.computeIfAbsent(key.device + SEPARATOR + key.filePath, 
WeakReference::new)) {
+        long startTime = System.nanoTime();
+
         // double check
         timeseriesMetadata = lruCache.getIfPresent(key);
         if (timeseriesMetadata == null) {
@@ -183,9 +185,10 @@ public class TimeSeriesMetadataCache {
             }
           }
         }
+
+        QueryStatistics.getInstance()
+                .addCost(TIME_SERIES_METADATA_CACHE_MISS, System.nanoTime() - 
startTime);
       }
-      QueryStatistics.getInstance()
-          .addCost(TIME_SERIES_METADATA_CACHE_MISS, System.nanoTime() - 
startTime);
     }
     if (timeseriesMetadata == null) {
       if (debug) {

Reply via email to