You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@iotdb.apache.org by "Jialin Qiao (Jira)" <ji...@apache.org> on 2019/10/30 11:41:00 UTC

[jira] [Created] (IOTDB-284) Do not write empty page

Jialin Qiao created IOTDB-284:
---------------------------------

             Summary: Do not write empty page
                 Key: IOTDB-284
                 URL: https://issues.apache.org/jira/browse/IOTDB-284
             Project: Apache IoTDB
          Issue Type: Improvement
            Reporter: Jialin Qiao


SET STORAGE GROUP TO root.turbine;

CREATE TIMESERIES root.turbine.d2.s0 WITH DATATYPE=INT32, ENCODING=RLE;

insert into root.turbine.d2(timestamp,s0) values(2,25.3);

flush 

 

When receiving the insert statement, IoTDB will create a ChunkWriterImpl, but the value will not be inserted because of type error.

The empty ChunkWriterImpl will be written when meeting the 'flush' command. Then, the server will log an error:

 

19:33:24.667 [pool-6-IoTDB-Flush-SubTask-ServerServiceImpl-thread-2] ERROR org.apache.iotdb.tsfile.write.chunk.ChunkBuffer - Write page error, [s0,INT32,RLE,{},UNCOMPRESSED], minTime:-9223372036854775808, maxTime:0

 

We can check the data type before creating the ChunkWriterImpl to avoid write empty ChunkWriterImpl.



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

Re: [jira] [Created] (IOTDB-284) Do not write empty page

Posted by Jialin Qiao <qj...@mails.tsinghua.edu.cn>.
Hi,

I fixed this issue in this PR[1]. I put the "check value type" before constructing a ChunkWriter in AbstractMemtable.

[1] https://github.com/apache/incubator-iotdb/pull/491

Best,
--
Jialin Qiao
School of Software, Tsinghua University

乔嘉林
清华大学 软件学院

> -----原始邮件-----
> 发件人: "Jialin Qiao (Jira)" <ji...@apache.org>
> 发送时间: 2019-10-30 19:41:00 (星期三)
> 收件人: dev@iotdb.apache.org
> 抄送: 
> 主题: [jira] [Created] (IOTDB-284) Do not write empty page
> 
> Jialin Qiao created IOTDB-284:
> ---------------------------------
> 
>              Summary: Do not write empty page
>                  Key: IOTDB-284
>                  URL: https://issues.apache.org/jira/browse/IOTDB-284
>              Project: Apache IoTDB
>           Issue Type: Improvement
>             Reporter: Jialin Qiao
> 
> 
> SET STORAGE GROUP TO root.turbine;
> 
> CREATE TIMESERIES root.turbine.d2.s0 WITH DATATYPE=INT32, ENCODING=RLE;
> 
> insert into root.turbine.d2(timestamp,s0) values(2,25.3);
> 
> flush 
> 
>  
> 
> When receiving the insert statement, IoTDB will create a ChunkWriterImpl, but the value will not be inserted because of type error.
> 
> The empty ChunkWriterImpl will be written when meeting the 'flush' command. Then, the server will log an error:
> 
>  
> 
> 19:33:24.667 [pool-6-IoTDB-Flush-SubTask-ServerServiceImpl-thread-2] ERROR org.apache.iotdb.tsfile.write.chunk.ChunkBuffer - Write page error, [s0,INT32,RLE,{},UNCOMPRESSED], minTime:-9223372036854775808, maxTime:0
> 
>  
> 
> We can check the data type before creating the ChunkWriterImpl to avoid write empty ChunkWriterImpl.
> 
> 
> 
> --
> This message was sent by Atlassian Jira
> (v8.3.4#803005)