flushCache should write to a tmp directory and then move into the store 
directory
---------------------------------------------------------------------------------

                 Key: HBASE-2729
                 URL: https://issues.apache.org/jira/browse/HBASE-2729
             Project: HBase
          Issue Type: Bug
          Components: regionserver
    Affects Versions: 0.21.0
            Reporter: Todd Lipcon
            Priority: Blocker


Currently it appears that internalFlushCache writes directly to the target spot 
of the flushed data. The finally() block appends the metadata and closes the 
file as if nothing bad went wrong in case of an exception. This is really bad, 
since it means that an IOE in the middle of flushing cache could easily write a 
valid looking file with only half the data, which would then prevent us from 
recovering those edits during log replay.

Instead, it should flush to a tmp location and move it into the region dir only 
after it's successfully written.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to