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

He Tianyi commented on HDFS-8829:
---------------------------------

Hi [~cmccabe],

About the second comment:
Actually {{DEFAULT_DATA_SOCKET_SIZE}} used to act as both receive buffer size 
and send buffer size. Therefore it is not exactly send buffer size.
Besides, I observed that it is receive buffer size that has tremendous impact 
on performance in this case.



> DataNode sets SO_RCVBUF explicitly is disabling tcp auto-tuning
> ---------------------------------------------------------------
>
>                 Key: HDFS-8829
>                 URL: https://issues.apache.org/jira/browse/HDFS-8829
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: datanode
>    Affects Versions: 2.3.0, 2.6.0
>            Reporter: He Tianyi
>            Assignee: He Tianyi
>         Attachments: HDFS-8829.0001.patch, HDFS-8829.0002.patch
>
>
> {code:java}
>   private void initDataXceiver(Configuration conf) throws IOException {
>     // find free port or use privileged port provided
>     TcpPeerServer tcpPeerServer;
>     if (secureResources != null) {
>       tcpPeerServer = new TcpPeerServer(secureResources);
>     } else {
>       tcpPeerServer = new TcpPeerServer(dnConf.socketWriteTimeout,
>           DataNode.getStreamingAddr(conf));
>     }
>     
> tcpPeerServer.setReceiveBufferSize(HdfsConstants.DEFAULT_DATA_SOCKET_SIZE);
> {code}
> The last line sets SO_RCVBUF explicitly, thus disabling tcp auto-tuning on 
> some system.
> Shall we make this behavior configurable?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to