|
@@ -484,14 +484,17 @@ public class DFSClient implements java.io.Closeable {
|
|
int numResponseToDrop = conf.getInt(
|
|
int numResponseToDrop = conf.getInt(
|
|
DFSConfigKeys.DFS_CLIENT_TEST_DROP_NAMENODE_RESPONSE_NUM_KEY,
|
|
DFSConfigKeys.DFS_CLIENT_TEST_DROP_NAMENODE_RESPONSE_NUM_KEY,
|
|
DFSConfigKeys.DFS_CLIENT_TEST_DROP_NAMENODE_RESPONSE_NUM_DEFAULT);
|
|
DFSConfigKeys.DFS_CLIENT_TEST_DROP_NAMENODE_RESPONSE_NUM_DEFAULT);
|
|
|
|
+ NameNodeProxies.ProxyAndInfo<ClientProtocol> proxyInfo = null;
|
|
if (numResponseToDrop > 0) {
|
|
if (numResponseToDrop > 0) {
|
|
// This case is used for testing.
|
|
// This case is used for testing.
|
|
LOG.warn(DFSConfigKeys.DFS_CLIENT_TEST_DROP_NAMENODE_RESPONSE_NUM_KEY
|
|
LOG.warn(DFSConfigKeys.DFS_CLIENT_TEST_DROP_NAMENODE_RESPONSE_NUM_KEY
|
|
+ " is set to " + numResponseToDrop
|
|
+ " is set to " + numResponseToDrop
|
|
+ ", this hacked client will proactively drop responses");
|
|
+ ", this hacked client will proactively drop responses");
|
|
- NameNodeProxies.ProxyAndInfo<ClientProtocol> proxyInfo = NameNodeProxies
|
|
|
|
- .createProxyWithLossyRetryHandler(conf, nameNodeUri,
|
|
|
|
- ClientProtocol.class, numResponseToDrop);
|
|
|
|
|
|
+ proxyInfo = NameNodeProxies.createProxyWithLossyRetryHandler(conf,
|
|
|
|
+ nameNodeUri, ClientProtocol.class, numResponseToDrop);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (proxyInfo != null) {
|
|
this.dtService = proxyInfo.getDelegationTokenService();
|
|
this.dtService = proxyInfo.getDelegationTokenService();
|
|
this.namenode = proxyInfo.getProxy();
|
|
this.namenode = proxyInfo.getProxy();
|
|
} else if (rpcNamenode != null) {
|
|
} else if (rpcNamenode != null) {
|
|
@@ -502,9 +505,8 @@ public class DFSClient implements java.io.Closeable {
|
|
} else {
|
|
} else {
|
|
Preconditions.checkArgument(nameNodeUri != null,
|
|
Preconditions.checkArgument(nameNodeUri != null,
|
|
"null URI");
|
|
"null URI");
|
|
- NameNodeProxies.ProxyAndInfo<ClientProtocol> proxyInfo =
|
|
|
|
- NameNodeProxies.createProxy(conf, nameNodeUri, ClientProtocol.class);
|
|
|
|
-
|
|
|
|
|
|
+ proxyInfo = NameNodeProxies.createProxy(conf, nameNodeUri,
|
|
|
|
+ ClientProtocol.class);
|
|
this.dtService = proxyInfo.getDelegationTokenService();
|
|
this.dtService = proxyInfo.getDelegationTokenService();
|
|
this.namenode = proxyInfo.getProxy();
|
|
this.namenode = proxyInfo.getProxy();
|
|
}
|
|
}
|