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-10326) Disable setting tcp socket send/receive buffers for write pipelines
Date Tue, 26 Apr 2016 18:11:13 GMT

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

Colin Patrick McCabe commented on HDFS-10326:

bq. Some system may not support auto tuning, defaulting to a small window size (say 64k? which
may make the scenario worse).

Can you give a concrete example of a system where Hadoop is actually deployed which doesn't
support auto-tuning?

bq. I'd suggest we keep the configuration. Or maybe add another one, say dfs.socket.detect-auto-turning.
When this is set to true (maybe turned on by default), socket buffer behavior depends on whether
OS supports auto-tuning. If auto-tuning is not supported, use configured value automatically.

Hmm.  As far as I know, there is no way to detect auto-tuning.  If there is, then we wouldn't
need a new configuration... we could just set the appropriate value when no configuration
was given.

> Disable setting tcp socket send/receive buffers for write pipelines
> -------------------------------------------------------------------
>                 Key: HDFS-10326
>                 URL: https://issues.apache.org/jira/browse/HDFS-10326
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: datanode, hdfs
>    Affects Versions: 2.6.0
>            Reporter: Daryn Sharp
>            Assignee: Daryn Sharp
> The DataStreamer and the Datanode use a hardcoded DEFAULT_DATA_SOCKET_SIZE=128K for the
send and receive buffers of a write pipeline.  Explicitly setting tcp buffer sizes disables
tcp stack auto-tuning.  
> The hardcoded value will saturate a 1Gb with 1ms RTT.  105Mbs at 10ms.  Paltry 11Mbs
over a 100ms long haul.  10Gb networks are underutilized.
> There should either be a configuration to completely disable setting the buffers, or
the the setReceiveBuffer and setSendBuffer should be removed entirely.

This message was sent by Atlassian JIRA

View raw message