|
@@ -99,10 +99,10 @@ import org.apache.hadoop.fs.MD5MD5CRC32CastagnoliFileChecksum;
|
|
import org.apache.hadoop.fs.MD5MD5CRC32FileChecksum;
|
|
import org.apache.hadoop.fs.MD5MD5CRC32FileChecksum;
|
|
import org.apache.hadoop.fs.MD5MD5CRC32GzipFileChecksum;
|
|
import org.apache.hadoop.fs.MD5MD5CRC32GzipFileChecksum;
|
|
import org.apache.hadoop.fs.Options;
|
|
import org.apache.hadoop.fs.Options;
|
|
-import org.apache.hadoop.fs.RemoteIterator;
|
|
|
|
import org.apache.hadoop.fs.Options.ChecksumOpt;
|
|
import org.apache.hadoop.fs.Options.ChecksumOpt;
|
|
import org.apache.hadoop.fs.ParentNotDirectoryException;
|
|
import org.apache.hadoop.fs.ParentNotDirectoryException;
|
|
import org.apache.hadoop.fs.Path;
|
|
import org.apache.hadoop.fs.Path;
|
|
|
|
+import org.apache.hadoop.fs.RemoteIterator;
|
|
import org.apache.hadoop.fs.UnresolvedLinkException;
|
|
import org.apache.hadoop.fs.UnresolvedLinkException;
|
|
import org.apache.hadoop.fs.VolumeId;
|
|
import org.apache.hadoop.fs.VolumeId;
|
|
import org.apache.hadoop.fs.permission.FsPermission;
|
|
import org.apache.hadoop.fs.permission.FsPermission;
|
|
@@ -110,6 +110,7 @@ import org.apache.hadoop.hdfs.client.ClientMmapManager;
|
|
import org.apache.hadoop.hdfs.client.HdfsDataInputStream;
|
|
import org.apache.hadoop.hdfs.client.HdfsDataInputStream;
|
|
import org.apache.hadoop.hdfs.client.HdfsDataOutputStream;
|
|
import org.apache.hadoop.hdfs.client.HdfsDataOutputStream;
|
|
import org.apache.hadoop.hdfs.protocol.CacheDirectiveEntry;
|
|
import org.apache.hadoop.hdfs.protocol.CacheDirectiveEntry;
|
|
|
|
+import org.apache.hadoop.hdfs.protocol.CacheDirectiveInfo;
|
|
import org.apache.hadoop.hdfs.protocol.CacheDirectiveIterator;
|
|
import org.apache.hadoop.hdfs.protocol.CacheDirectiveIterator;
|
|
import org.apache.hadoop.hdfs.protocol.CachePoolEntry;
|
|
import org.apache.hadoop.hdfs.protocol.CachePoolEntry;
|
|
import org.apache.hadoop.hdfs.protocol.CachePoolInfo;
|
|
import org.apache.hadoop.hdfs.protocol.CachePoolInfo;
|
|
@@ -122,7 +123,6 @@ import org.apache.hadoop.hdfs.protocol.DirectoryListing;
|
|
import org.apache.hadoop.hdfs.protocol.ExtendedBlock;
|
|
import org.apache.hadoop.hdfs.protocol.ExtendedBlock;
|
|
import org.apache.hadoop.hdfs.protocol.HdfsBlocksMetadata;
|
|
import org.apache.hadoop.hdfs.protocol.HdfsBlocksMetadata;
|
|
import org.apache.hadoop.hdfs.protocol.HdfsConstants;
|
|
import org.apache.hadoop.hdfs.protocol.HdfsConstants;
|
|
-import org.apache.hadoop.hdfs.protocol.CacheDirectiveInfo;
|
|
|
|
import org.apache.hadoop.hdfs.protocol.HdfsConstants.DatanodeReportType;
|
|
import org.apache.hadoop.hdfs.protocol.HdfsConstants.DatanodeReportType;
|
|
import org.apache.hadoop.hdfs.protocol.HdfsConstants.SafeModeAction;
|
|
import org.apache.hadoop.hdfs.protocol.HdfsConstants.SafeModeAction;
|
|
import org.apache.hadoop.hdfs.protocol.HdfsFileStatus;
|
|
import org.apache.hadoop.hdfs.protocol.HdfsFileStatus;
|
|
@@ -283,6 +283,8 @@ public class DFSClient implements java.io.Closeable {
|
|
final boolean getHdfsBlocksMetadataEnabled;
|
|
final boolean getHdfsBlocksMetadataEnabled;
|
|
final int getFileBlockStorageLocationsNumThreads;
|
|
final int getFileBlockStorageLocationsNumThreads;
|
|
final int getFileBlockStorageLocationsTimeout;
|
|
final int getFileBlockStorageLocationsTimeout;
|
|
|
|
+ final int retryTimesForGetLastBlockLength;
|
|
|
|
+ final int retryIntervalForGetLastBlockLength;
|
|
|
|
|
|
final boolean useLegacyBlockReader;
|
|
final boolean useLegacyBlockReader;
|
|
final boolean useLegacyBlockReaderLocal;
|
|
final boolean useLegacyBlockReaderLocal;
|
|
@@ -356,6 +358,12 @@ public class DFSClient implements java.io.Closeable {
|
|
getFileBlockStorageLocationsTimeout = conf.getInt(
|
|
getFileBlockStorageLocationsTimeout = conf.getInt(
|
|
DFSConfigKeys.DFS_CLIENT_FILE_BLOCK_STORAGE_LOCATIONS_TIMEOUT,
|
|
DFSConfigKeys.DFS_CLIENT_FILE_BLOCK_STORAGE_LOCATIONS_TIMEOUT,
|
|
DFSConfigKeys.DFS_CLIENT_FILE_BLOCK_STORAGE_LOCATIONS_TIMEOUT_DEFAULT);
|
|
DFSConfigKeys.DFS_CLIENT_FILE_BLOCK_STORAGE_LOCATIONS_TIMEOUT_DEFAULT);
|
|
|
|
+ retryTimesForGetLastBlockLength = conf.getInt(
|
|
|
|
+ DFSConfigKeys.DFS_CLIENT_RETRY_TIMES_GET_LAST_BLOCK_LENGTH,
|
|
|
|
+ DFSConfigKeys.DFS_CLIENT_RETRY_TIMES_GET_LAST_BLOCK_LENGTH_DEFAULT);
|
|
|
|
+ retryIntervalForGetLastBlockLength = conf.getInt(
|
|
|
|
+ DFSConfigKeys.DFS_CLIENT_RETRY_INTERVAL_GET_LAST_BLOCK_LENGTH,
|
|
|
|
+ DFSConfigKeys.DFS_CLIENT_RETRY_INTERVAL_GET_LAST_BLOCK_LENGTH_DEFAULT);
|
|
|
|
|
|
useLegacyBlockReader = conf.getBoolean(
|
|
useLegacyBlockReader = conf.getBoolean(
|
|
DFSConfigKeys.DFS_CLIENT_USE_LEGACY_BLOCKREADER,
|
|
DFSConfigKeys.DFS_CLIENT_USE_LEGACY_BLOCKREADER,
|