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 2d1c3835 Passing the compatibility check
2d1c3835 is described below

commit 2d1c3835ce1da67f209f77b6b84eb5d014dbdf67
Author: jt2594838 <[email protected]>
AuthorDate: Fri Apr 12 18:33:16 2024 +0800

    Passing the compatibility check
---
 .../java/org/apache/tsfile/read/TsFileSequenceReader.java    | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git 
a/tsfile/src/main/java/org/apache/tsfile/read/TsFileSequenceReader.java 
b/tsfile/src/main/java/org/apache/tsfile/read/TsFileSequenceReader.java
index eb2de930..a83c6e5f 100644
--- a/tsfile/src/main/java/org/apache/tsfile/read/TsFileSequenceReader.java
+++ b/tsfile/src/main/java/org/apache/tsfile/read/TsFileSequenceReader.java
@@ -605,6 +605,16 @@ public class TsFileSequenceReader implements AutoCloseable 
{
     return metadataIndexPair;
   }
 
+  private MetadataIndexNode getTableRootNode(String tableName) throws 
IOException {
+    MetadataIndexNode metadataIndexNode = 
tsFileMetaData.getTableMetadataIndexNodeMap()
+        .get(tableName);
+    if (metadataIndexNode == null && fileVersion < 
TSFileConfig.VERSION_NUMBER) {
+      // this file if from an old version, and all its metadata should have an 
anonymous root
+      metadataIndexNode = 
tsFileMetaData.getTableMetadataIndexNodeMap().get("");
+    }
+    return metadataIndexNode;
+  }
+
   /**
    * Searching from the start node and try to find the root node of the 
deviceID.
    *
@@ -618,7 +628,7 @@ public class TsFileSequenceReader implements AutoCloseable {
     startNode =
         startNode != null
             ? startNode
-            : 
tsFileMetaData.getTableMetadataIndexNodeMap().get(deviceID.getTableName());
+            : getTableRootNode(deviceID.getTableName());
 
     MetadataIndexNode measurementMetadataIndexNode;
     ByteBuffer buffer;

Reply via email to