I have a question regarding the durability of HBase. After I have put a record to HBase and have received a confirmation of the put from the region server (assuming both autoFlush and writeToWAL are set to true), can I be sure that my record will be there no matter what? I've checked the code and found that the region server will first append a log record to WAL (a SequenceFile) and then may call the sync() function; however, it appears to me that this does not guarantee the log record is in HDFS even if the sync() function is called. That is to say, in case of RegionServer crash, the records put into HBase may be lost; am I missing anything?
Thanks, -JQ
