Guo Ruijing created HDFS-7298: --------------------------------- Summary: HDFS may honor socket timeout configuration Key: HDFS-7298 URL: https://issues.apache.org/jira/browse/HDFS-7298 Project: Hadoop HDFS Issue Type: Improvement Components: datanode Reporter: Guo Ruijing
DFS_CLIENT_SOCKET_TIMEOUT_KEY: HDFS socket read timeout DFS_DATANODE_SOCKET_WRITE_TIMEOUT_KEY: HDFS socket write timeout HDFS may honor socket timeout configuration: 1. DataXceiver.java: 1) existing code(not expected) int timeoutValue = dnConf.socketTimeout + (HdfsServerConstants.READ_TIMEOUT_EXTENSION * targets.length); int writeTimeout = dnConf.socketWriteTimeout + (HdfsServerConstants.WRITE_TIMEOUT_EXTENSION * targets.length); 2) proposed code: int timeoutValue = dnConf.socketTimeout ? (dnConf.socketTimeout + (HdfsServerConstants.READ_TIMEOUT_EXTENSION * targets.length) : 0; int writeTimeout = dnConf.socketWriteTimeout ? (dnConf.socketWriteTimeout + (HdfsServerConstants.WRITE_TIMEOUT_EXTENSION * targets.length)) : 0; 2) DFSClient.java existing code is expected: int getDatanodeWriteTimeout(int numNodes) { return (dfsClientConf.confTime > 0) ? (dfsClientConf.confTime + HdfsServerConstants.WRITE_TIMEOUT_EXTENSION * numNodes) : 0; } int getDatanodeReadTimeout(int numNodes) { return dfsClientConf.socketTimeout > 0 ? (HdfsServerConstants.READ_TIMEOUT_EXTENSION * numNodes + dfsClientConf.socketTimeout) : 0; } 3) DataNode.java: existing code is not expected: long writeTimeout = dnConf.socketWriteTimeout + HdfsServerConstants.WRITE_TIMEOUT_EXTENSION * (targets.length-1); proposed code: long writeTimeout = dnConf.socketWriteTimeout ? (dnConf.socketWriteTimeout + HdfsServerConstants.WRITE_TIMEOUT_EXTENSION * (targets.length-1)) : 0; -- This message was sent by Atlassian JIRA (v6.3.4#6332)