This is an automated email from the ASF dual-hosted git repository. jackietien pushed a commit to branch ty/11866 in repository https://gitbox.apache.org/repos/asf/tsfile.git
commit 27fda6a03a096ae6e9a44af209c6304e08088d1f Author: JackieTien97 <[email protected]> AuthorDate: Tue Jan 9 15:30:01 2024 +0800 Fix delete and recreate the same timeseries with different datatype bug --- .../org/apache/tsfile/file/metadata/AlignedTimeSeriesMetadata.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tsfile/src/main/java/org/apache/tsfile/file/metadata/AlignedTimeSeriesMetadata.java b/tsfile/src/main/java/org/apache/tsfile/file/metadata/AlignedTimeSeriesMetadata.java index 956ce1c0..14f1d4a6 100644 --- a/tsfile/src/main/java/org/apache/tsfile/file/metadata/AlignedTimeSeriesMetadata.java +++ b/tsfile/src/main/java/org/apache/tsfile/file/metadata/AlignedTimeSeriesMetadata.java @@ -191,13 +191,16 @@ public class AlignedTimeSeriesMetadata implements ITimeSeriesMetadata { @Override public boolean typeMatch(List<TSDataType> dataTypes) { if (valueTimeseriesMetadataList != null) { + int notMatchCount = 0; for (int i = 0, size = dataTypes.size(); i < size; i++) { TimeseriesMetadata valueTimeSeriesMetadata = valueTimeseriesMetadataList.get(i); if (valueTimeSeriesMetadata != null && !valueTimeSeriesMetadata.typeMatch(dataTypes.get(i))) { - return false; + valueTimeseriesMetadataList.set(i, null); + notMatchCount++; } } + return notMatchCount != dataTypes.size(); } return true; }
