You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@iotdb.apache.org by "Haonan Hou (Jira)" <ji...@apache.org> on 2022/05/27 07:13:00 UTC

[jira] [Commented] (IOTDB-3306) "io task meets error" is not handled correctly

    [ https://issues.apache.org/jira/browse/IOTDB-3306?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17542810#comment-17542810 ] 

Haonan Hou commented on IOTDB-3306:
-----------------------------------

{quote}!94781653632450_.pic.jpg!
{quote}
I find out this error is related with starting the same IoTDB server twice. When the first IoTDB is flushing TsFile, the second IoTDB finds there is WAL file existed and then flush the same TsFile again. Therefore, this error will appear.
 

> "io task meets error" is not handled correctly
> ----------------------------------------------
>
>                 Key: IOTDB-3306
>                 URL: https://issues.apache.org/jira/browse/IOTDB-3306
>             Project: Apache IoTDB
>          Issue Type: Bug
>    Affects Versions: 0.13.0, 0.12.5
>            Reporter: Jialin Qiao
>            Assignee: Haonan Hou
>            Priority: Blocker
>         Attachments: 94781653632450_.pic.jpg
>
>
> When restarting IoTDB and flushing the wal, the io task meets error. 
> It throw a RuntimeException, however, this exception is not catched by TsFileProcessor, TsFileProcessor still ends the file, which causes a corrupt tsfile.
>  
> 2022-04-21 22:29:19,461 [pool-2-IoTDB-Flush-SubTask-2] ERROR o.a.i.d.e.f.MemTableFlushTask:297 - Storage group 2 memtable PrimitiveMemTable{planIndex=[0,0]}, io task meets error. 
> java.io.IOException: Bytes written is inconsistent with the size of data: 57 != 45
>     at org.apache.iotdb.tsfile.write.chunk.ChunkWriterImpl.writeAllPagesOfChunkToTsFile(ChunkWriterImpl.java:459)
>     at org.apache.iotdb.tsfile.write.chunk.ChunkWriterImpl.writeToFileWriter(ChunkWriterImpl.java:323)
>     at org.apache.iotdb.db.engine.flush.MemTableFlushTask.lambda$new$0(MemTableFlushTask.java:290)
>     at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
>     at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>     at java.lang.Thread.run(Thread.java:748)
>  
> 2022-04-21 22:29:24,797 [Thread-4] INFO  o.a.i.d.e.f.MemTableFlushTask:150 - Storage group 2 memtable PrimitiveMemTable{planIndex=[0,0]} flushing a memtable has finished! Time consumption: 5448ms 



--
This message was sent by Atlassian Jira
(v8.20.7#820007)