Jialin Qiao created IOTDB-1611:
----------------------------------

             Summary: Not truncate crashed chunk when recover
                 Key: IOTDB-1611
                 URL: https://issues.apache.org/jira/browse/IOTDB-1611
             Project: Apache IoTDB
          Issue Type: Bug
    Affects Versions: 0.12.2-SNAPSHOT
            Reporter: Jialin Qiao


When restart, the RestorableTsFileIOWriter do not truncate the crashed chunk, 
which will leave some useless data in the TsFile, causing the 
TsFileSequenceRead failed.

 

Produce:

(1) Add a System.exit(1) in MemtableFlushTask line 295

(2) Start IoTDB,write 100 points of each column

(3) Run flush in Cli  (IoTDB will exit)

(4) Open the TsFile generated in data folder and delete some bytes

(5) Delete the line 295 in MemtableFlushTask

(6) Run IoTDB to recover the tsfile

(7) Use TsFileSequenceRead to read the TsFile

 

Then you will get:
{code:java}
Exception in thread "main" 
org.apache.iotdb.tsfile.exception.encoding.TsFileDecodingException: 
tsfile-encoding IntRleDecoder: bitPackedGroupCount -69750793, smaller than 
1Exception in thread "main" 
org.apache.iotdb.tsfile.exception.encoding.TsFileDecodingException: 
tsfile-encoding IntRleDecoder: bitPackedGroupCount -69750793, smaller than 1 at 
org.apache.iotdb.tsfile.encoding.decoder.RleDecoder.callReadBitPackingBuffer(RleDecoder.java:121)
 at 
org.apache.iotdb.tsfile.encoding.decoder.RleDecoder.readNext(RleDecoder.java:101)
 at 
org.apache.iotdb.tsfile.encoding.decoder.LongRleDecoder.readLong(LongRleDecoder.java:67)
 at 
org.apache.iotdb.tsfile.read.reader.page.PageReader.getAllSatisfiedPageData(PageReader.java:126)
 at 
org.apache.iotdb.tsfile.read.reader.IPageReader.getAllSatisfiedPageData(IPageReader.java:30)
 at org.apache.iotdb.tsfile.TsFileSequenceRead.main(TsFileSequenceRead.java:96)
{code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to