This is an automated email from the ASF dual-hosted git repository.
jiangtian pushed a commit to branch tsFile_v4
in repository https://gitbox.apache.org/repos/asf/tsfile.git
The following commit(s) were added to refs/heads/tsFile_v4 by this push:
new 7c2e65e3 Update TableSchema after ending a ChunkGroup.
7c2e65e3 is described below
commit 7c2e65e38eaa38c9c82ddc660fa0908caf1efd14
Author: jt2594838 <[email protected]>
AuthorDate: Sun Apr 7 14:56:19 2024 +0800
Update TableSchema after ending a ChunkGroup.
---
.../src/main/java/org/apache/tsfile/write/schema/Schema.java | 10 ++++++++++
.../java/org/apache/tsfile/write/writer/TsFileIOWriter.java | 1 +
2 files changed, 11 insertions(+)
diff --git a/tsfile/src/main/java/org/apache/tsfile/write/schema/Schema.java
b/tsfile/src/main/java/org/apache/tsfile/write/schema/Schema.java
index a82ab71d..8894690d 100644
--- a/tsfile/src/main/java/org/apache/tsfile/write/schema/Schema.java
+++ b/tsfile/src/main/java/org/apache/tsfile/write/schema/Schema.java
@@ -18,6 +18,9 @@
*/
package org.apache.tsfile.write.schema;
+import org.apache.tsfile.file.metadata.ChunkGroupMetadata;
+import org.apache.tsfile.file.metadata.IDeviceID;
+import org.apache.tsfile.file.metadata.LogicalTableSchema;
import org.apache.tsfile.file.metadata.TableSchema;
import org.apache.tsfile.read.common.Path;
import org.apache.tsfile.utils.MeasurementGroup;
@@ -118,4 +121,11 @@ public class Schema implements Serializable {
public Map<Path, MeasurementGroup> getRegisteredTimeseriesMap() {
return registeredTimeseries;
}
+
+ public void updateTableSchema(ChunkGroupMetadata chunkGroupMetadata) {
+ IDeviceID deviceID = chunkGroupMetadata.getDevice();
+ String tableName = deviceID.getTableName();
+ TableSchema tableSchema = tableSchemaMap.computeIfAbsent(tableName,
LogicalTableSchema::new);
+ tableSchema.update(chunkGroupMetadata);
+ }
}
diff --git
a/tsfile/src/main/java/org/apache/tsfile/write/writer/TsFileIOWriter.java
b/tsfile/src/main/java/org/apache/tsfile/write/writer/TsFileIOWriter.java
index 08453387..57733141 100644
--- a/tsfile/src/main/java/org/apache/tsfile/write/writer/TsFileIOWriter.java
+++ b/tsfile/src/main/java/org/apache/tsfile/write/writer/TsFileIOWriter.java
@@ -196,6 +196,7 @@ public class TsFileIOWriter implements AutoCloseable {
ChunkGroupMetadata chunkGroupMetadata =
new ChunkGroupMetadata(currentChunkGroupDeviceId, chunkMetadataList);
+ getSchema().updateTableSchema(chunkGroupMetadata);
chunkGroupMetadataList.add(chunkGroupMetadata);
currentChunkGroupDeviceId = null;
chunkMetadataList = null;