[ https://issues.apache.org/jira/browse/HDFS-744?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13463964#comment-13463964 ]
Kan Zhang commented on HDFS-744: -------------------------------- bq. I think the problem is that we have to enqueue the seqno before the packet is sent downstream right? (Otherwise we could potentially miss the ack, right?) I don't think we have to enqueue the seqno before the packet is sent downstream to avoid missing the ack, since the PacketResponder thread will wait on the ackQueue if it's empty, right? {code} 1035 while (running && datanode.shouldRun && ackQueue.size() == 0) { 1036 if (LOG.isDebugEnabled()) { 1037 LOG.debug(myString + ": seqno=" + seqno + 1038 " waiting for local datanode to finish write."); 1039 } 1040 wait(); 1041 } {code} > 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