[ https://issues.apache.org/jira/browse/HDFS-12177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16095705#comment-16095705 ]
Brahma Reddy Battula edited comment on HDFS-12177 at 7/21/17 3:25 AM: ---------------------------------------------------------------------- [~yangjiandan] thanks for reporting this..it's dupe of HDFS-11827. but it's committed to only {{branch-2}} and {{trunk}}. Since we had given the {{3.0.0-alpha4}} release, we can't cherry-pick HDFS-11827 so We can target this {{branch-2.8}} and {{branch-2.7}} as part of this. was (Author: brahmareddy): [~yangjiandan] thanks for reporting this..it's dupe of HDFS-11827. but it's committed to only {{branch-2}} and {{trunk}}. Since we had given the {{ 3.0.0-alpha4}} release, we can't cherry-pick HDFS-11827 so We can target this {{branch-2.8}} and {{branch-2.7}} as part of this. > NameNode exits due to setting BlockPlacementPolicy loglevel to Debug > --------------------------------------------------------------------- > > Key: HDFS-12177 > URL: https://issues.apache.org/jira/browse/HDFS-12177 > Project: Hadoop HDFS > Issue Type: Bug > Components: block placement > Affects Versions: 2.8.1 > Reporter: Jiandan Yang > Assignee: Jiandan Yang > Attachments: HDFS_9668_1.patch > > > NameNode exits because the ReplicationMonitor thread internally throws NPE. > The reason for throwing NPE is that the builder field is not initialized whe > do log. > Solution: before appending it should determine whether the builder is null > {code:java} > if (LOG.isDebugEnabled()) { > builder = debugLoggingBuilder.get(); > builder.setLength(0); > builder.append("["); > } > some other codes ... > if (LOG.isDebugEnabled()) { > builder.append("\nNode ").append(NodeBase.getPath(chosenNode)) > .append(" ["); > } > some other codes ... > if (LOG.isDebugEnabled()) { > builder.append("\n]"); > } > {code} > NN exception log is : > {code:java} > java.lang.NullPointerException > at > org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault.chooseRandom(BlockPlacementPolicyDefault.java:722) > at > org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault.chooseRandom(BlockPlacementPolicyDefault.java:689) > at > org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault.chooseFromNextRack(BlockPlacementPolicyDefault.java:640) > at > org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault.chooseLocalRack(BlockPlacementPolicyDefault.java:608) > at > org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault.chooseTargetInOrder(BlockPlacementPolicyDefault.java:483) > at > org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault.chooseTarget(BlockPlacementPolicyDefault.java:390) > at > org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault.chooseTarget(BlockPlacementPolicyDefault.java:419) > at > org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault.chooseTarget(BlockPlacementPolicyDefault.java:266) > at > org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault.chooseTarget(BlockPlacementPolicyDefault.java:119) > at > org.apache.hadoop.hdfs.server.blockmanagement.ReplicationWork.chooseTargets(ReplicationWork.java:55) > at > org.apache.hadoop.hdfs.server.blockmanagement.BlockManager.computeReplicationWorkForBlocks(BlockManager.java:1532) > at > org.apache.hadoop.hdfs.server.blockmanagement.BlockManager.computeReplicationWork(BlockManager.java:1491) > at > org.apache.hadoop.hdfs.server.blockmanagement.BlockManager.computeDatanodeWork(BlockManager.java:3768) > at > org.apache.hadoop.hdfs.server.blockmanagement.BlockManager$ReplicationMonitor.run(BlockManager.java:3720) > at java.lang.Thread.run(Thread.java:834) > {code} -- This message was sent by Atlassian JIRA (v6.4.14#64029) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org