hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Colin Patrick McCabe (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HDFS-4049) hflush performance regression due to nagling delays
Date Mon, 15 Oct 2012 14:48:03 GMT

    [ https://issues.apache.org/jira/browse/HDFS-4049?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13476171#comment-13476171

Colin Patrick McCabe commented on HDFS-4049:

Looks good.  It makes sense to use only one buffer for this.

It looks like Java doesn't expose {{writev}} in this case, which is what we would need to
write multiple buffers as one packet with {{TCP_NODELAY}}.  (Although there is a multi-buffer
write method in {{FileChannel}}, I didn't find one for {{DataOutputStream}}).

@@ -100,12 +102,17 @@ public void run() {
       } catch (Throwable t) {
         thrown.compareAndSet(null, t);
+      } finally {

Extra code?

Does it make sense to add a test for the numDataNodes = 1, repl = 1 case?
> hflush performance regression due to nagling delays
> ---------------------------------------------------
>                 Key: HDFS-4049
>                 URL: https://issues.apache.org/jira/browse/HDFS-4049
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: data-node, performance
>    Affects Versions: 3.0.0, 2.0.2-alpha
>            Reporter: Todd Lipcon
>            Assignee: Todd Lipcon
>            Priority: Critical
>         Attachments: hdfs-4049.txt
> HDFS-3721 reworked the way that packets are mirrored through the pipeline in the datanode.
This caused two write() calls where there used to be one, which interacts badly with nagling
so that there are 40ms bubbles on hflush() calls. We didn't notice this in the tests because
the hflush perf test only uses a single datanode.

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

View raw message