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)
