You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ji...@apache.org on 2024/10/18 02:38:51 UTC
(iotdb) 01/01: Do not add attr columns to TableSchema when registering to TsFile
This is an automated email from the ASF dual-hosted git repository.
jiangtian pushed a commit to branch remove_attr_col_in_file_schema
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 70af2745e7664d36e81b1aa0e5509558cd01057f
Author: Tian Jiang <jt...@163.com>
AuthorDate: Fri Oct 18 10:39:49 2024 +0800
Do not add attr columns to TableSchema when registering to TsFile
---
.../plan/relational/metadata/TableSchema.java | 19 +++++++++++++++++++
.../iotdb/db/storageengine/dataregion/DataRegion.java | 2 +-
2 files changed, 20 insertions(+), 1 deletion(-)
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/TableSchema.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/TableSchema.java
index f790533991d..6b24740732d 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/TableSchema.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/TableSchema.java
@@ -81,6 +81,25 @@ public class TableSchema {
tableName, measurementSchemas, columnTypes);
}
+ public org.apache.tsfile.file.metadata.TableSchema toTsFileTableSchemaNoAttribute() {
+ // TODO-Table: unify redundant definitions
+ String tableName = this.getTableName();
+ List<IMeasurementSchema> measurementSchemas = new ArrayList<>();
+ List<ColumnType> columnTypes = new ArrayList<>();
+ for (ColumnSchema column : columns) {
+ if (column.getColumnCategory() == TsTableColumnCategory.TIME
+ || column.getColumnCategory() == TsTableColumnCategory.ATTRIBUTE) {
+ continue;
+ }
+ measurementSchemas.add(
+ new MeasurementSchema(
+ column.getName(), InternalTypeManager.getTSDataType(column.getType())));
+ columnTypes.add(column.getColumnCategory().toTsFileColumnType());
+ }
+ return new org.apache.tsfile.file.metadata.TableSchema(
+ tableName, measurementSchemas, columnTypes);
+ }
+
private static final Logger LOGGER = org.slf4j.LoggerFactory.getLogger(TableSchema.class);
public static TableSchema fromTsFileTableSchema(
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/DataRegion.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/DataRegion.java
index 376fb0cbdde..0c39924e9e8 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/DataRegion.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/DataRegion.java
@@ -1372,7 +1372,7 @@ public class DataRegion implements IDataRegionForQuery {
tableName,
t ->
TableSchema.of(DataNodeTableCache.getInstance().getTable(getDatabaseName(), t))
- .toTsFileTableSchema());
+ .toTsFileTableSchemaNoAttribute());
}
}