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)" <[email protected]>
> 发送时间: 2019-10-30 19:41:00 (星期三)
> 收件人: [email protected]
> 抄送: 
> 主题: [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)

Reply via email to