You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@iotdb.apache.org by GitBox <gi...@apache.org> on 2019/03/23 05:32:51 UTC

[GitHub] [incubator-iotdb] jixuan1989 opened a new pull request #109: [IOTDB-58]Refactor bufferwrite

jixuan1989 opened a new pull request #109: [IOTDB-58]Refactor bufferwrite
URL: https://github.com/apache/incubator-iotdb/pull/109
 
 
   Currently, Memtable which manages ordered data is in BufferWriteProcessor module, and complete TsFiles are managed directly by FileNodeProcessor.
   
   FileNodeProcessor also manages the OverflowProcessor, while the OverflowProcessor module manages the memtable of overflow data and generated overflow files..
   
   We can find that overflowProcessor and BufferWriteProcessor are asymmetric.. which will lead to many similar but not the same codes..  and make the FileNodeProcessor class very large (because it knows too much detailed info of the two processors) 
   
   A better way is:
   
   Put the memtable and all complete TsFiles into one module, called TsFileProcessor.
   
   TsFileProcessor only provide insert/update/delete/close/flush and query APIs. 
   
   * For Insert, if it returns false, then it means that the inserted data should not be managed by TsFileProcessor, which means it is an overflowed data.
   * For query, the function will query data not only from the memtable but also from TsFiles.
   * - The parameter of Insert() is InsertPlan, rather than (deviceID, time, measurements, values). It is to reduce the class transformation... 
   
   Because I have too many meanless commits, I will squash the PR when merging it.
   
   NOTICE: though overflowProcessor is not refactored, we can still merge this PR because it does not affect any process now... (just be called in the UTs)

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services