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;