[ https://issues.apache.org/jira/browse/HDFS-4201?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13843619#comment-13843619 ]
Colin Patrick McCabe commented on HDFS-4201: -------------------------------------------- What about this paradigm? {code} boolean success = false; try { ... success = true } finally { if (!success) { cleanup } } {code} we use this paradigm many places in hdfs to avoid having to enumerate all possible exceptions. > NPE in BPServiceActor#sendHeartBeat > ----------------------------------- > > Key: HDFS-4201 > URL: https://issues.apache.org/jira/browse/HDFS-4201 > Project: Hadoop HDFS > Issue Type: Bug > Components: namenode > Reporter: Eli Collins > Assignee: Jimmy Xiang > Priority: Critical > Fix For: 3.0.0 > > Attachments: trunk-4201.patch, trunk-4201_v2.patch > > > Saw the following NPE in a log. > Think this is likely due to {{dn}} or {{dn.getFSDataset()}} being null, (not > {{bpRegistration}}) due to a configuration or local directory failure. > {code} > 2012-09-25 04:33:20,782 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: > For namenode svsrs00127/11.164.162.226:8020 using DELETEREPORT_INTERVAL of > 300000 msec BLOCKREPORT_INTERVAL of 21600000msec Initial delay: 0msec; > heartBeatInterval=3000 > 2012-09-25 04:33:20,782 ERROR > org.apache.hadoop.hdfs.server.datanode.DataNode: Exception in BPOfferService > for Block pool BP-1678908700-11.164.162.226-1342785481826 (storage id > DS-1031100678-11.164.162.251-5010-1341933415989) service to > svsrs00127/11.164.162.226:8020 > java.lang.NullPointerException > at > org.apache.hadoop.hdfs.server.datanode.BPServiceActor.sendHeartBeat(BPServiceActor.java:434) > at > org.apache.hadoop.hdfs.server.datanode.BPServiceActor.offerService(BPServiceActor.java:520) > at > org.apache.hadoop.hdfs.server.datanode.BPServiceActor.run(BPServiceActor.java:673) > at java.lang.Thread.run(Thread.java:722) > {code} -- This message was sent by Atlassian JIRA (v6.1.4#6159)