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

jackietien pushed a commit to branch AlignedReaderSelfCheck
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit fc0b91689b6e5c85177b79e19daecb7a141f2dfc
Author: JackieTien97 <[email protected]>
AuthorDate: Tue Jan 18 15:26:26 2022 +0800

    change self check
---
 .../java/org/apache/iotdb/tsfile/file/MetaMarker.java     | 15 +++++++++++++++
 .../apache/iotdb/tsfile/read/TsFileSequenceReader.java    |  6 ++++--
 2 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/file/MetaMarker.java 
b/tsfile/src/main/java/org/apache/iotdb/tsfile/file/MetaMarker.java
index 2c45941..70d326d 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/file/MetaMarker.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/file/MetaMarker.java
@@ -19,6 +19,8 @@
 
 package org.apache.iotdb.tsfile.file;
 
+import org.apache.iotdb.tsfile.common.constant.TsFileConstant;
+
 import java.io.IOException;
 
 /** MetaMarker denotes the type of headers and footers. Enum is not used for 
space saving. */
@@ -44,6 +46,19 @@ public class MetaMarker {
   /** Chunk header marker and this chunk has only one page. */
   public static final byte ONLY_ONE_PAGE_CHUNK_HEADER = 5;
 
+  /** Time Chunk header marker and this chunk has more than one page. */
+  public static final byte TIME_CHUNK_HEADER = (byte) (CHUNK_HEADER | 
TsFileConstant.TIME_COLUMN_MASK);
+
+  /** Value Chunk header marker and this chunk has more than one page. */
+  public static final byte VALUE_CHUNK_HEADER = (byte) (CHUNK_HEADER | 
TsFileConstant.VALUE_COLUMN_MASK);
+
+  /** Time Chunk header marker and this chunk has only one page. */
+  public static final byte ONLY_ONE_PAGE_TIME_CHUNK_HEADER = (byte) 
(ONLY_ONE_PAGE_CHUNK_HEADER | TsFileConstant.TIME_COLUMN_MASK);
+
+  /** Value Chunk header marker and this chunk has only one page. */
+  public static final byte ONLY_ONE_PAGE_VALUE_CHUNK_HEADER = (byte) 
(ONLY_ONE_PAGE_CHUNK_HEADER | TsFileConstant.VALUE_COLUMN_MASK);
+
+
   private MetaMarker() {}
 
   public static void handleUnexpectedMarker(byte marker) throws IOException {
diff --git 
a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/TsFileSequenceReader.java 
b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/TsFileSequenceReader.java
index bd42af8..c504174 100644
--- 
a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/TsFileSequenceReader.java
+++ 
b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/TsFileSequenceReader.java
@@ -1252,9 +1252,11 @@ public class TsFileSequenceReader implements 
AutoCloseable {
       while ((marker = this.readMarker()) != MetaMarker.SEPARATOR) {
         switch (marker) {
           case MetaMarker.CHUNK_HEADER:
+          case MetaMarker.TIME_CHUNK_HEADER:
+          case MetaMarker.VALUE_CHUNK_HEADER:
           case MetaMarker.ONLY_ONE_PAGE_CHUNK_HEADER:
-          case (byte) (MetaMarker.ONLY_ONE_PAGE_CHUNK_HEADER | 0x80):
-          case (byte) (MetaMarker.ONLY_ONE_PAGE_CHUNK_HEADER | 0x40):
+          case MetaMarker.ONLY_ONE_PAGE_TIME_CHUNK_HEADER:
+          case MetaMarker.ONLY_ONE_PAGE_VALUE_CHUNK_HEADER:
             fileOffsetOfChunk = this.position() - 1;
             // if there is something wrong with a chunk, we will drop the 
whole ChunkGroup
             // as different chunks may be created by the same 
insertions(sqls), and partial

Reply via email to