Repository: hadoop Updated Branches: refs/heads/branch-3.1 d12418b12 -> 411e82e72
HDFS-13275. Adding log for BlockPoolManager#refreshNamenodes failures. Contributed by Ajay Kumar. (cherry picked from commit 0be0f1ce1da984ff3a8fd4b079297ead2dc6722d) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/411e82e7 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/411e82e7 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/411e82e7 Branch: refs/heads/branch-3.1 Commit: 411e82e72e03f6bbfffa9b4ef5b1be8db1fc6bdc Parents: d12418b Author: Xiaoyu Yao <[email protected]> Authored: Wed Mar 14 10:38:00 2018 -0700 Committer: Xiaoyu Yao <[email protected]> Committed: Wed Mar 14 10:38:48 2018 -0700 ---------------------------------------------------------------------- .../hdfs/server/datanode/BlockPoolManager.java | 24 +++++++++++++++----- 1 file changed, 18 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/411e82e7/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BlockPoolManager.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BlockPoolManager.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BlockPoolManager.java index 141550e..b03c511 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BlockPoolManager.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BlockPoolManager.java @@ -146,13 +146,25 @@ class BlockPoolManager { void refreshNamenodes(Configuration conf) throws IOException { - LOG.info("Refresh request received for nameservices: " + conf.get - (DFSConfigKeys.DFS_NAMESERVICES)); + LOG.info("Refresh request received for nameservices: " + + conf.get(DFSConfigKeys.DFS_NAMESERVICES)); - Map<String, Map<String, InetSocketAddress>> newAddressMap = DFSUtil - .getNNServiceRpcAddressesForCluster(conf); - Map<String, Map<String, InetSocketAddress>> newLifelineAddressMap = DFSUtil - .getNNLifelineRpcAddressesForCluster(conf); + Map<String, Map<String, InetSocketAddress>> newAddressMap = null; + Map<String, Map<String, InetSocketAddress>> newLifelineAddressMap = null; + + try { + newAddressMap = + DFSUtil.getNNServiceRpcAddressesForCluster(conf); + newLifelineAddressMap = + DFSUtil.getNNLifelineRpcAddressesForCluster(conf); + } catch (IOException ioe) { + LOG.warn("Unable to get NameNode addresses."); + } + + if (newAddressMap == null || newAddressMap.isEmpty()) { + throw new IOException("No services to connect, missing NameNode " + + "address."); + } synchronized (refreshNamenodesLock) { doRefreshNamenodes(newAddressMap, newLifelineAddressMap); --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
