HDFS-4569. Small image transfer related cleanups. Contributed by Andrew Wang.
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1454233 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
06f27d8731
commit
4909821aa9
|
@ -26,7 +26,6 @@ Trunk (Unreleased)
|
|||
Azure environments. (See breakdown of tasks below for subtasks and
|
||||
contributors)
|
||||
|
||||
|
||||
IMPROVEMENTS
|
||||
|
||||
HDFS-1620. Rename HdfsConstants -> HdfsServerConstants, FSConstants ->
|
||||
|
@ -341,6 +340,9 @@ Release 2.0.5-beta - UNRELEASED
|
|||
HDFS-4519. Support overriding jsvc binary and log file locations
|
||||
when launching secure datanode. (Chris Nauroth via suresh)
|
||||
|
||||
HDFS-4569. Small image transfer related cleanups.
|
||||
(Andrew Wang via suresh)
|
||||
|
||||
OPTIMIZATIONS
|
||||
|
||||
BUG FIXES
|
||||
|
|
|
@ -361,7 +361,7 @@ public class DFSConfigKeys extends CommonConfigurationKeys {
|
|||
|
||||
// Image transfer timeout
|
||||
public static final String DFS_IMAGE_TRANSFER_TIMEOUT_KEY = "dfs.image.transfer.timeout";
|
||||
public static final int DFS_IMAGE_TRANSFER_TIMEOUT_DEFAULT = 60 * 1000;
|
||||
public static final int DFS_IMAGE_TRANSFER_TIMEOUT_DEFAULT = 10 * 60 * 1000;
|
||||
|
||||
//Keys with no defaults
|
||||
public static final String DFS_DATANODE_PLUGINS_KEY = "dfs.datanode.plugins";
|
||||
|
|
|
@ -229,7 +229,6 @@ public class TransferFsImage {
|
|||
SecurityUtil.openSecureHttpConnection(url);
|
||||
|
||||
if (timeout <= 0) {
|
||||
// Set the ping interval as timeout
|
||||
Configuration conf = new HdfsConfiguration();
|
||||
timeout = conf.getInt(DFSConfigKeys.DFS_IMAGE_TRANSFER_TIMEOUT_KEY,
|
||||
DFSConfigKeys.DFS_IMAGE_TRANSFER_TIMEOUT_DEFAULT);
|
||||
|
|
|
@ -733,12 +733,29 @@
|
|||
</description>
|
||||
</property>
|
||||
|
||||
<property>
|
||||
<name>dfs.image.transfer.timeout</name>
|
||||
<value>600000</value>
|
||||
<description>
|
||||
Timeout for image transfer in milliseconds. This timeout and the related
|
||||
dfs.image.transfer.bandwidthPerSec parameter should be configured such
|
||||
that normal image transfer can complete within the timeout.
|
||||
This timeout prevents client hangs when the sender fails during
|
||||
image transfer, which is particularly important during checkpointing.
|
||||
Note that this timeout applies to the entirety of image transfer, and
|
||||
is not a socket timeout.
|
||||
</description>
|
||||
</property>
|
||||
|
||||
<property>
|
||||
<name>dfs.image.transfer.bandwidthPerSec</name>
|
||||
<value>0</value>
|
||||
<description>
|
||||
Specifies the maximum amount of bandwidth that can be utilized for image
|
||||
transfer in term of the number of bytes per second.
|
||||
Maximum bandwidth used for image transfer in bytes per second.
|
||||
This can help keep normal namenode operations responsive during
|
||||
checkpointing. The maximum bandwidth and timeout in
|
||||
dfs.image.transfer.timeout should be set such that normal image
|
||||
transfers can complete successfully.
|
||||
A default value of 0 indicates that throttling is disabled.
|
||||
</description>
|
||||
</property>
|
||||
|
|
Loading…
Reference in New Issue