MaWenJin created HDFS-4450: ------------------------------ Summary: Duplicate data node on the name node after formatting data node Key: HDFS-4450 URL: https://issues.apache.org/jira/browse/HDFS-4450 Project: Hadoop HDFS Issue Type: Bug Components: namenode Affects Versions: 2.0.2-alpha Reporter: MaWenJin
Duplicate data node on the name node after formatting data node。 When we registered data node,use nodeReg.getXferPort() to find DatanodeDescriptor. {code} DatanodeDescriptor nodeN = host2DatanodeMap.getDatanodeByXferAddr( nodeReg.getIpAddr(), nodeReg.getXferPort()); {code} but add data node use node.getIpAddr(). {code} /** add node to the map * return true if the node is added; false otherwise. */ boolean add(DatanodeDescriptor node) { hostmapLock.writeLock().lock(); try { if (node==null || contains(node)) { return false; } String ipAddr = node.getIpAddr(); DatanodeDescriptor[] nodes = map.get(ipAddr); DatanodeDescriptor[] newNodes; if (nodes==null) { newNodes = new DatanodeDescriptor[1]; newNodes[0]=node; } else { // rare case: more than one datanode on the host newNodes = new DatanodeDescriptor[nodes.length+1]; System.arraycopy(nodes, 0, newNodes, 0, nodes.length); newNodes[nodes.length] = node; } map.put(ipAddr, newNodes); return true; } finally { hostmapLock.writeLock().unlock(); } } {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira