[ https://issues.apache.org/jira/browse/HDFS-8992?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14721017#comment-14721017 ]
He Xiaoqiao commented on HDFS-8992: ----------------------------------- Thanks Tsz Wo Nicholas Sze for your comments, there is only one line of stack trace: {code} 2015-06-29 14:06:35,280 WARN org.apache.hadoop.hdfs.server.balancer.Balancer: Dispatcher thread failed java.lang.NullPointerException {code} > Balancer throws NPE > ------------------- > > Key: HDFS-8992 > URL: https://issues.apache.org/jira/browse/HDFS-8992 > Project: Hadoop HDFS > Issue Type: Bug > Components: balancer & mover > Affects Versions: 2.4.1 > Reporter: He Xiaoqiao > > Balancer may throw NPE because the following {{if Statements}} > {code:java|firstline=705} > synchronized (block) { > // update locations > for (String datanodeUuid : blk.getDatanodeUuids()) { > final BalancerDatanode d = datanodeMap.get(datanodeUuid); > if (datanode != null) { // not an unknown datanode > block.addLocation(d); > } > } > } > {code} > Before moving block, Balancer divides into two step to get all DNs info & > some blocks of DN from NN. Regarding one DN commission after > {{getDatanodeReport}} then {{getBlockList}} and one block's target is above > DN just right, It will throw NPE when dispatcher. -- This message was sent by Atlassian JIRA (v6.3.4#6332)