HDFS-3036. Merge r1295961 from trunk to 0.23
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.23@1298251 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
e197c64c5b
commit
867d1f475f
|
@ -133,6 +133,8 @@ Release 0.23.3 - UNRELEASED
|
|||
over-replicated, and invalidated blocks.
|
||||
(Tomasz Nykiel via todd)
|
||||
|
||||
HDFS-3036. Remove unused method DFSUtil#isDefaultNamenodeAddress. (atm)
|
||||
|
||||
BUG FIXES
|
||||
|
||||
HDFS-2481. Unknown protocol: org.apache.hadoop.hdfs.protocol.ClientProtocol.
|
||||
|
|
|
@ -455,8 +455,7 @@ public class DFSUtil {
|
|||
* namenode, this method returns the corresponding nameservice ID,
|
||||
* by doing a reverse lookup on the list of nameservices until it
|
||||
* finds a match.
|
||||
* If null is returned, client should try {@link #isDefaultNamenodeAddress}
|
||||
* to check pre-Federated configurations.
|
||||
*
|
||||
* Since the process of resolving URIs to Addresses is slightly expensive,
|
||||
* this utility method should not be used in performance-critical routines.
|
||||
*
|
||||
|
@ -479,7 +478,6 @@ public class DFSUtil {
|
|||
|
||||
// Configuration with a single namenode and no nameserviceId
|
||||
if (nameserviceIds == null || nameserviceIds.isEmpty()) {
|
||||
// client should try {@link isDefaultNamenodeAddress} instead
|
||||
return null;
|
||||
}
|
||||
// Get the candidateAddresses for all the configured nameServiceIds
|
||||
|
@ -493,7 +491,6 @@ public class DFSUtil {
|
|||
}
|
||||
}
|
||||
// didn't find a match
|
||||
// client should try {@link isDefaultNamenodeAddress} instead
|
||||
return null;
|
||||
}
|
||||
|
||||
|
@ -536,38 +533,6 @@ public class DFSUtil {
|
|||
return httpAddress;
|
||||
}
|
||||
|
||||
/**
|
||||
* Given the InetSocketAddress for any configured communication with a
|
||||
* namenode, this method determines whether it is the configured
|
||||
* communication channel for the "default" namenode.
|
||||
* It does a reverse lookup on the list of default communication parameters
|
||||
* to see if the given address matches any of them.
|
||||
* Since the process of resolving URIs to Addresses is slightly expensive,
|
||||
* this utility method should not be used in performance-critical routines.
|
||||
*
|
||||
* @param conf - configuration
|
||||
* @param address - InetSocketAddress for configured communication with NN.
|
||||
* Configured addresses are typically given as URIs, but we may have to
|
||||
* compare against a URI typed in by a human, or the server name may be
|
||||
* aliased, so we compare unambiguous InetSocketAddresses instead of just
|
||||
* comparing URI substrings.
|
||||
* @param keys - list of configured communication parameters that should
|
||||
* be checked for matches. For example, to compare against RPC addresses,
|
||||
* provide the list DFS_NAMENODE_SERVICE_RPC_ADDRESS_KEY,
|
||||
* DFS_NAMENODE_RPC_ADDRESS_KEY
|
||||
* @return - boolean confirmation if matched generic parameter
|
||||
*/
|
||||
public static boolean isDefaultNamenodeAddress(Configuration conf,
|
||||
InetSocketAddress address, String... keys) {
|
||||
for (String key : keys) {
|
||||
String candidateAddress = conf.get(key);
|
||||
if (candidateAddress != null
|
||||
&& address.equals(NetUtils.createSocketAddr(candidateAddress)))
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return key specific to a nameserviceId from a generic key
|
||||
*/
|
||||
|
|
|
@ -208,27 +208,6 @@ public class TestDFSUtil {
|
|||
assertEquals(expectedNameServiceId, nameserviceId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test for
|
||||
* {@link DFSUtil#isDefaultNamenodeAddress(Configuration, InetSocketAddress, String...)}
|
||||
*/
|
||||
@Test
|
||||
public void testSingleNamenode() {
|
||||
HdfsConfiguration conf = new HdfsConfiguration();
|
||||
final String DEFAULT_ADDRESS = "localhost:9000";
|
||||
final String NN2_ADDRESS = "localhost:9001";
|
||||
conf.set(DFS_NAMENODE_RPC_ADDRESS_KEY, DEFAULT_ADDRESS);
|
||||
|
||||
InetSocketAddress testAddress1 = NetUtils.createSocketAddr(DEFAULT_ADDRESS);
|
||||
boolean isDefault = DFSUtil.isDefaultNamenodeAddress(conf, testAddress1,
|
||||
DFS_NAMENODE_SERVICE_RPC_ADDRESS_KEY, DFS_NAMENODE_RPC_ADDRESS_KEY);
|
||||
assertTrue(isDefault);
|
||||
InetSocketAddress testAddress2 = NetUtils.createSocketAddr(NN2_ADDRESS);
|
||||
isDefault = DFSUtil.isDefaultNamenodeAddress(conf, testAddress2,
|
||||
DFS_NAMENODE_SERVICE_RPC_ADDRESS_KEY, DFS_NAMENODE_RPC_ADDRESS_KEY);
|
||||
assertFalse(isDefault);
|
||||
}
|
||||
|
||||
/** Tests to ensure default namenode is used as fallback */
|
||||
@Test
|
||||
public void testDefaultNamenode() throws IOException {
|
||||
|
|
Loading…
Reference in New Issue