You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ja...@apache.org on 2021/11/08 11:58:52 UTC

[iotdb] 01/01: [IOTDB-1726] Correct the calculation of TimeSeriesMetadataCacheKey and ChunkMetadata

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

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

commit 988a3c9d0c4ee040f9db4877f0b5308736178c9e
Author: JackieTien97 <Ja...@foxmail.com>
AuthorDate: Mon Nov 8 19:58:12 2021 +0800

    [IOTDB-1726] Correct the calculation of TimeSeriesMetadataCacheKey and ChunkMetadata
---
 .../java/org/apache/iotdb/db/engine/cache/TimeSeriesMetadataCache.java | 2 ++
 .../main/java/org/apache/iotdb/tsfile/file/metadata/ChunkMetadata.java | 3 ++-
 2 files changed, 4 insertions(+), 1 deletion(-)

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 247474b..81c14c8 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
@@ -91,6 +91,8 @@ public class TimeSeriesMetadataCache {
                             (RamUsageEstimator.shallowSizeOf(key)
                                 + RamUsageEstimator.sizeOf(key.device)
                                 + RamUsageEstimator.sizeOf(key.measurement)
+                                + RamUsageEstimator.sizeOf(key.tsFilePrefixPath)
+                                + RamUsageEstimator.sizeOf(key.tsFileVersion)
                                 + RamUsageEstimator.shallowSizeOf(value)
                                 + RamUsageEstimator.sizeOf(value.getMeasurementId())
                                 + RamUsageEstimator.shallowSizeOf(value.getStatistics())
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/ChunkMetadata.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/ChunkMetadata.java
index 1683c8d..2fa9bca 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/ChunkMetadata.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/ChunkMetadata.java
@@ -69,7 +69,7 @@ public class ChunkMetadata implements Accountable, IChunkMetadata {
 
   private long ramSize;
 
-  private static final int CHUNK_METADATA_FIXED_RAM_SIZE = 80;
+  private static final int CHUNK_METADATA_FIXED_RAM_SIZE = 93;
 
   // used for SeriesReader to indicate whether it is a seq/unseq timeseries metadata
   private boolean isSeq = true;
@@ -278,6 +278,7 @@ public class ChunkMetadata implements Accountable, IChunkMetadata {
 
   public long calculateRamSize() {
     return CHUNK_METADATA_FIXED_RAM_SIZE
+        + RamUsageEstimator.sizeOf(tsFilePrefixPath)
         + RamUsageEstimator.sizeOf(measurementUid)
         + statistics.calculateRamSize();
   }