This is an automated email from the ASF dual-hosted git repository.
shuwenwei pushed a commit to branch table_disk_usage_statistics_with_cache
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to
refs/heads/table_disk_usage_statistics_with_cache by this push:
new d641d1005d0 throw exception
d641d1005d0 is described below
commit d641d1005d0816a3fe76030679f871b0fecc2854
Author: shuwenwei <[email protected]>
AuthorDate: Thu Jan 22 11:49:18 2026 +0800
throw exception
---
.../dataregion/utils/tableDiskUsageCache/TableDiskUsageCache.java | 6 +++++-
.../utils/tableDiskUsageCache/TableDiskUsageCacheReader.java | 2 +-
.../tableDiskUsageCache/object/IObjectTableSizeCacheReader.java | 4 +++-
3 files changed, 9 insertions(+), 3 deletions(-)
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/utils/tableDiskUsageCache/TableDiskUsageCache.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/utils/tableDiskUsageCache/TableDiskUsageCache.java
index 981b7bef4d8..081d5d116e7 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/utils/tableDiskUsageCache/TableDiskUsageCache.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/utils/tableDiskUsageCache/TableDiskUsageCache.java
@@ -56,6 +56,7 @@ public class TableDiskUsageCache {
try {
while (!Thread.currentThread().isInterrupted()) {
try {
+ checkAndMaySyncObjectDeltaToFile();
Operation operation = queue.poll(10, TimeUnit.MILLISECONDS);
if (operation == null) {
checkAndMayCloseIdleWriter();
@@ -74,6 +75,8 @@ public class TableDiskUsageCache {
}
}
+ protected void checkAndMaySyncObjectDeltaToFile() {}
+
protected void checkAndMayCompact(long maxRunTime) {
long startTime = System.currentTimeMillis();
for (DataRegionTableSizeCacheWriter writer : writerMap.values()) {
@@ -262,7 +265,8 @@ public class TableDiskUsageCache {
public void apply(TableDiskUsageCache tableDiskUsageCache) throws
IOException {
tableDiskUsageCache
.writerMap
- .computeIfAbsent(regionId, k -> new
DataRegionTableSizeCacheWriter(database, regionId))
+ .computeIfAbsent(
+ regionId, k -> tableDiskUsageCache.createWriter(database,
tsFileID.regionId))
.tsFileCacheWriter
.write(tsFileID, tableSizeMap);
}
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/utils/tableDiskUsageCache/TableDiskUsageCacheReader.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/utils/tableDiskUsageCache/TableDiskUsageCacheReader.java
index 1bc054d0dcc..80a8c8bd955 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/utils/tableDiskUsageCache/TableDiskUsageCacheReader.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/utils/tableDiskUsageCache/TableDiskUsageCacheReader.java
@@ -108,7 +108,7 @@ public class TableDiskUsageCacheReader implements Closeable
{
return this.tsFileTableSizeCacheReader != null;
}
- public boolean loadObjectFileTableSizeCache(long startTime, long maxRunTime)
{
+ public boolean loadObjectFileTableSizeCache(long startTime, long maxRunTime)
throws Exception {
if (objectTableSizeCacheReader.loadObjectFileTableSize(
timePartitionQueryContexts, startTime, maxRunTime)) {
objectTableSizeCacheReader.close();
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/utils/tableDiskUsageCache/object/IObjectTableSizeCacheReader.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/utils/tableDiskUsageCache/object/IObjectTableSizeCacheReader.java
index bfea3db1297..88f641f65fe 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/utils/tableDiskUsageCache/object/IObjectTableSizeCacheReader.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/utils/tableDiskUsageCache/object/IObjectTableSizeCacheReader.java
@@ -21,13 +21,15 @@ package
org.apache.iotdb.db.storageengine.dataregion.utils.tableDiskUsageCache.o
import
org.apache.iotdb.db.storageengine.dataregion.utils.tableDiskUsageCache.TimePartitionTableSizeQueryContext;
+import java.io.IOException;
import java.util.Map;
public interface IObjectTableSizeCacheReader {
boolean loadObjectFileTableSize(
Map<Long, TimePartitionTableSizeQueryContext> timePartitionContexts,
long startTime,
- long maxRunTime);
+ long maxRunTime)
+ throws IOException;
void close();
}