HDFS-12605. [READ] TestNameNodeProvidedImplementation#testProvidedDatanodeFailures fails after rebase
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/d6a9a899 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/d6a9a899 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/d6a9a899 Branch: refs/heads/trunk Commit: d6a9a8997339939b59ce36246225f7cc45b21da5 Parents: 17052c4 Author: Virajith Jalaparti <viraj...@apache.org> Authored: Wed Oct 18 13:53:11 2017 -0700 Committer: Chris Douglas <cdoug...@apache.org> Committed: Fri Dec 15 17:51:38 2017 -0800 ---------------------------------------------------------------------- .../hdfs/server/blockmanagement/DatanodeDescriptor.java | 12 ++++++++++++ .../namenode/TestNameNodeProvidedImplementation.java | 6 +++--- 2 files changed, 15 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/d6a9a899/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/DatanodeDescriptor.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/DatanodeDescriptor.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/DatanodeDescriptor.java index 28a3d1a..e3d6582 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/DatanodeDescriptor.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/DatanodeDescriptor.java @@ -489,6 +489,18 @@ public class DatanodeDescriptor extends DatanodeInfo { synchronized (storageMap) { DatanodeStorageInfo storage = storageMap.get(s.getStorageID()); if (null == storage) { + LOG.info("Adding new storage ID {} for DN {}", s.getStorageID(), + getXferAddr()); + DFSTopologyNodeImpl parent = null; + if (getParent() instanceof DFSTopologyNodeImpl) { + parent = (DFSTopologyNodeImpl) getParent(); + } + StorageType type = s.getStorageType(); + if (!hasStorageType(type) && parent != null) { + // we are about to add a type this node currently does not have, + // inform the parent that a new type is added to this datanode + parent.childAddStorage(getName(), type); + } storageMap.put(s.getStorageID(), s); } else { assert storage == s : "found " + storage + " expected " + s; http://git-wip-us.apache.org/repos/asf/hadoop/blob/d6a9a899/hadoop-tools/hadoop-fs2img/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeProvidedImplementation.java ---------------------------------------------------------------------- diff --git a/hadoop-tools/hadoop-fs2img/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeProvidedImplementation.java b/hadoop-tools/hadoop-fs2img/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeProvidedImplementation.java index 3f937c4..d622b9e 100644 --- a/hadoop-tools/hadoop-fs2img/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeProvidedImplementation.java +++ b/hadoop-tools/hadoop-fs2img/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeProvidedImplementation.java @@ -481,13 +481,13 @@ public class TestNameNodeProvidedImplementation { assertEquals(providedDatanode2.getDatanodeUuid(), dnInfos[0].getDatanodeUuid()); - //stop the 2nd provided datanode - cluster.stopDataNode(1); + // stop the 2nd provided datanode + MiniDFSCluster.DataNodeProperties providedDNProperties2 = + cluster.stopDataNode(0); // make NameNode detect that datanode is down BlockManagerTestUtil.noticeDeadDatanode( cluster.getNameNode(), providedDatanode2.getDatanodeId().getXferAddr()); - getAndCheckBlockLocations(client, filename, 0); //restart the provided datanode --------------------------------------------------------------------- To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org