This is an automated email from the ASF dual-hosted git repository.
jiangtian pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/tsfile.git
The following commit(s) were added to refs/heads/develop by this push:
new d2344308 Resolve the problem that python client don't support DATE
data type in the IntColumn (#705)
d2344308 is described below
commit d2344308a8f2cda24f1ebe6284176537bfc5914e
Author: libo <[email protected]>
AuthorDate: Wed Jan 14 17:32:53 2026 +0800
Resolve the problem that python client don't support DATE data type in the
IntColumn (#705)
* Resolve the problem that python client don't support DATE data type in
the IntColumn;
Support data type compatible validation in the TimeSeriesMetadata.
* Fix.
---
.../main/java/org/apache/tsfile/file/metadata/TimeseriesMetadata.java | 2 +-
.../java/org/apache/tsfile/read/common/block/column/TsBlockSerde.java | 3 +++
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git
a/java/tsfile/src/main/java/org/apache/tsfile/file/metadata/TimeseriesMetadata.java
b/java/tsfile/src/main/java/org/apache/tsfile/file/metadata/TimeseriesMetadata.java
index 544489ed..96f9c562 100644
---
a/java/tsfile/src/main/java/org/apache/tsfile/file/metadata/TimeseriesMetadata.java
+++
b/java/tsfile/src/main/java/org/apache/tsfile/file/metadata/TimeseriesMetadata.java
@@ -328,7 +328,7 @@ public class TimeseriesMetadata implements
ITimeSeriesMetadata {
}
public boolean typeMatch(TSDataType dataType) {
- return this.dataType == dataType;
+ return dataType.isCompatible(getTsDataType());
}
@Override
diff --git
a/java/tsfile/src/main/java/org/apache/tsfile/read/common/block/column/TsBlockSerde.java
b/java/tsfile/src/main/java/org/apache/tsfile/read/common/block/column/TsBlockSerde.java
index a891553b..818ac3c2 100644
---
a/java/tsfile/src/main/java/org/apache/tsfile/read/common/block/column/TsBlockSerde.java
+++
b/java/tsfile/src/main/java/org/apache/tsfile/read/common/block/column/TsBlockSerde.java
@@ -103,6 +103,9 @@ public class TsBlockSerde {
// Value column data types.
for (int i = 0; i < tsBlock.getValueColumnCount(); i++) {
+ if (tsBlock.getColumn(i).getDataType() == TSDataType.DATE) {
+ ((IntColumn) tsBlock.getColumn(i)).modifyDataType(TSDataType.INT32);
+ }
tsBlock.getColumn(i).getDataType().serializeTo(dataOutputStream);
}