[ https://issues.apache.org/jira/browse/HDFS-744?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13464004#comment-13464004 ]
Lars Hofhansl commented on HDFS-744: ------------------------------------ I see. In that case we wouldn't ack back until all local work in done. A possible place to do that would be almost at the end of receivePacket(), maybe in a finally block of the last try/catch in that method. That still does not take of all the cases, though; for the last packet in a block, the sync is deferred to close() (to avoid double sync). That's not hard to to change either, I think. > Support hsync in HDFS > --------------------- > > Key: HDFS-744 > URL: https://issues.apache.org/jira/browse/HDFS-744 > Project: Hadoop HDFS > Issue Type: New Feature > Components: data-node, hdfs client > Reporter: Hairong Kuang > Assignee: Lars Hofhansl > Fix For: 2.0.2-alpha > > Attachments: HDFS-744-2.0-v1.patch, HDFS-744-2.0-v2.patch, > HDFS-744-trunk.patch, HDFS-744-trunk-v2.patch, HDFS-744-trunk-v3.patch, > HDFS-744-trunk-v4.patch, HDFS-744-trunk-v5.patch, HDFS-744-trunk-v6.patch, > HDFS-744-trunk-v7.patch, HDFS-744-trunk-v8.patch, hdfs-744.txt, > hdfs-744-v2.txt, hdfs-744-v3.txt > > > HDFS-731 implements hsync by default as hflush. As descriibed in HADOOP-6313, > the real expected semantics should be "flushes out to all replicas and all > replicas have done posix fsync equivalent - ie the OS has flushed it to the > disk device (but the disk may have it in its cache)." This jira aims to > implement the expected behaviour. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira