Yu Li created HBASE-20471: ----------------------------- Summary: Recheck the design and implementation of FSYNC_WAL durability for WAL Key: HBASE-20471 URL: https://issues.apache.org/jira/browse/HBASE-20471 Project: HBase Issue Type: Task Reporter: Yu Li
This is something derived from discussion in HBASE-19024 around [this comment|https://issues.apache.org/jira/browse/HBASE-19024?focusedCommentId=16445592&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16445592] We have been supplying user the API to set durability per mutation for a long time, by design the SYNC_WAL durability to call {{FSDataOutputStream#hflush}} and FSYNC_WAL {{FSDataOutputStream#hsync}}, while in implementation we have been calling hflush for FSYNC_WAL also until HBASE-19024. Although HBASE-19024 tried to fix the syntax with good willing, the implementation there cannot assure the FSYNC_WAL edits are truly hsync'ed due to the disruptor mechanism used in WAL implementation. Here in this JIRA we aim to have more discussion and give it a complete solution. -- This message was sent by Atlassian JIRA (v7.6.3#76005)