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 3f919a22eae add future
3f919a22eae is described below
commit 3f919a22eae75cb61c3820a34e0be744a171e801
Author: shuwenwei <[email protected]>
AuthorDate: Fri Jan 23 19:04:43 2026 +0800
add future
---
.../utils/tableDiskUsageCache/TableDiskUsageCache.java | 12 +++++++++---
1 file 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 7e7cdb94d9f..82cd6eb4fc3 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
@@ -47,6 +47,7 @@ public class TableDiskUsageCache {
protected final Map<Integer, DataRegionTableSizeCacheWriter> writerMap = new
HashMap<>();
protected final ScheduledExecutorService scheduledExecutorService;
private int counter = 0;
+ private long nextWriterId = 0;
protected volatile boolean failedToRecover = false;
protected TableDiskUsageCache() {
@@ -176,7 +177,7 @@ public class TableDiskUsageCache {
}
protected DataRegionTableSizeCacheWriter createWriter(String database, int
regionId) {
- return new DataRegionTableSizeCacheWriter(database, regionId);
+ return new DataRegionTableSizeCacheWriter(database, regionId,
nextWriterId++);
}
protected TsFileTableSizeCacheReader createTsFileCacheReader(
@@ -318,6 +319,8 @@ public class TableDiskUsageCache {
private static class RegisterRegionOperation extends Operation {
+ private final CompletableFuture<Void> future = new CompletableFuture<>();
+
private RegisterRegionOperation(String database, int regionId) {
super(database, regionId);
}
@@ -326,6 +329,7 @@ public class TableDiskUsageCache {
public void apply(TableDiskUsageCache tableDiskUsageCache) {
tableDiskUsageCache.writerMap.computeIfAbsent(
regionId, regionId -> tableDiskUsageCache.createWriter(database,
regionId));
+ future.complete(null);
}
}
@@ -372,12 +376,14 @@ public class TableDiskUsageCache {
}
protected static class DataRegionTableSizeCacheWriter {
+ protected final long writerId;
protected final TsFileTableDiskUsageCacheWriter tsFileCacheWriter;
protected int activeReaderNum = 0;
protected CompletableFuture<Void> removedFuture;
- protected DataRegionTableSizeCacheWriter(String database, int regionId) {
- tsFileCacheWriter = new TsFileTableDiskUsageCacheWriter(database,
regionId);
+ protected DataRegionTableSizeCacheWriter(String database, int regionId,
long writerId) {
+ this.writerId = writerId;
+ this.tsFileCacheWriter = new TsFileTableDiskUsageCacheWriter(database,
regionId);
}
public void increaseActiveReaderNum() {