[
https://issues.apache.org/jira/browse/HBASE-5954?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13419738#comment-13419738
]
Lars Hofhansl edited comment on HBASE-5954 at 7/21/12 4:01 AM:
---------------------------------------------------------------
I think the API going multiple ways (these are not mutually exclusive):
# hsync for HFiles (would guard compactions, etc, very lightweight), enabled
with a config option (default on I think)
# hsync all WAL edits (very expensive, but would not require client changes),
enabled with a config option (default off)
# hsync for tables or column families for HFiles (configured in the
table/column descriptor)
# hsync for tables or column families for the WAL (configured in the
table/column descriptor)
# WAL hsync per Put. Gives control to the application. A batch put would hsync
the WAL if at least one Put in the batch was market with hsync. What about
deletes? In 0.94 they are not batched; could it at the end of operation there.
# WAL hsync per RPC. Could send flag with the RPC from the client. I.e. HTable
would have a Put(List<Put> puts, boolean hsync) method
# HTable.hsync. Client calls this when WAL must be sync'ed. Most flexible, but
incurs an extra RPC to the RegionServer just to force the hsync.
Comments welcome.
Edit: Forgot some options.
was (Author: lhofhansl):
I think the API going multiple ways (these are not mutually exclusive):
# hsync for HFiles (would guard compactions, etc, very lightweight), enabled
with a config option (default on I think)
# hsync all WAL edits (very expensive, but would not require client changes),
enabled with a config option (default off)
# sync per Put. Gives control to the application. A batch put would hsync the
WAL if at least one Put in the batch was market with hsync. What about deletes?
In 0.94 they are not batched; could it at the end of operation there.
# Per RPC. Could send flag with the RPC from the client. I.e. HTable would have
a Put(List<Put> puts, boolean hsync) method
# HTable.hsync. Client calls this when data must be sync'ed. Most flexible, but
incurs an extra RPC to the RegionServer just to force the hsync.
Comments welcome.
> Allow proper fsync support for HBase
> ------------------------------------
>
> Key: HBASE-5954
> URL: https://issues.apache.org/jira/browse/HBASE-5954
> Project: HBase
> Issue Type: Improvement
> Reporter: Lars Hofhansl
> Assignee: Lars Hofhansl
> Fix For: 0.96.0, 0.94.2
>
> Attachments: 5954-trunk-hdfs-trunk-v2.txt,
> 5954-trunk-hdfs-trunk-v3.txt, 5954-trunk-hdfs-trunk-v4.txt,
> 5954-trunk-hdfs-trunk-v5.txt, 5954-trunk-hdfs-trunk-v6.txt,
> 5954-trunk-hdfs-trunk.txt, hbase-hdfs-744.txt
>
>
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira