This is an automated email from the ASF dual-hosted git repository.
jiangtian pushed a commit to branch dev/1.3
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/dev/1.3 by this push:
new be828108388 Fixed the calculation error of schema cache (#16818)
(#16822)
be828108388 is described below
commit be828108388842d6aef553fccbbe15d7e015223d
Author: Caideyipi <[email protected]>
AuthorDate: Thu Nov 27 14:19:26 2025 +0800
Fixed the calculation error of schema cache (#16818) (#16822)
* ff
* back-roll
---
.../db/queryengine/plan/analyze/cache/schema/DeviceLastCache.java | 3 +--
.../queryengine/plan/analyze/cache/schema/DeviceNormalSchema.java | 8 ++++++--
2 files changed, 7 insertions(+), 4 deletions(-)
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/cache/schema/DeviceLastCache.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/cache/schema/DeviceLastCache.java
index a2f7696b6df..36fc39c3286 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/cache/schema/DeviceLastCache.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/cache/schema/DeviceLastCache.java
@@ -104,8 +104,7 @@ public class DeviceLastCache {
}
if (Objects.isNull(tvPair)) {
diff.addAndGet(
- (int) RamUsageEstimator.sizeOf(measurement)
- + (int) RamUsageEstimator.HASHTABLE_RAM_BYTES_PER_ENTRY);
+ (int) RamUsageEstimator.sizeOf(measurement) +
getTVPairEntrySize(newPair));
return newPair;
}
return tvPair;
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/cache/schema/DeviceNormalSchema.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/cache/schema/DeviceNormalSchema.java
index cfad9c9e45e..5ce2ca06fcd 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/cache/schema/DeviceNormalSchema.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/cache/schema/DeviceNormalSchema.java
@@ -88,7 +88,10 @@ public class DeviceNormalSchema implements IDeviceSchema {
final SchemaCacheEntry putEntry = new SchemaCacheEntry(schema, tagMap);
final SchemaCacheEntry cachedEntry = measurementMap.put(measurement,
putEntry);
return Objects.isNull(cachedEntry)
- ? (int) (RamUsageEstimator.sizeOf(measurement) +
SchemaCacheEntry.estimateSize(putEntry))
+ ? (int)
+ (RamUsageEstimator.sizeOf(measurement)
+ + SchemaCacheEntry.estimateSize(putEntry)
+ + RamUsageEstimator.HASHTABLE_RAM_BYTES_PER_ENTRY)
: SchemaCacheEntry.estimateSize(putEntry) -
SchemaCacheEntry.estimateSize(cachedEntry);
}
@@ -101,7 +104,8 @@ public class DeviceNormalSchema implements IDeviceSchema {
entry ->
Math.toIntExact(
RamUsageEstimator.sizeOf(entry.getKey())
- + SchemaCacheEntry.estimateSize(entry.getValue())))
+ + SchemaCacheEntry.estimateSize(entry.getValue())
+ + RamUsageEstimator.HASHTABLE_RAM_BYTES_PER_ENTRY))
.reduce(0, Integer::sum);
}
}