This is an automated email from the ASF dual-hosted git repository.

jackietien 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 4d48cd17 Fix delete and recreate the same timeseries with different 
datatype bug
4d48cd17 is described below

commit 4d48cd17fa118999e5aa734bd4eec35811df47f4
Author: Jackie Tien <[email protected]>
AuthorDate: Tue Jan 9 18:05:36 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;
   }

Reply via email to