[ https://issues.apache.org/jira/browse/HADOOP-1195?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
dhruba borthakur updated HADOOP-1195: ------------------------------------- Fix Version/s: 0.16.0 Status: Patch Available (was: Open) > NullPointerException in FSNamesystem due to getDatanode() return value is not > checked > ------------------------------------------------------------------------------------- > > Key: HADOOP-1195 > URL: https://issues.apache.org/jira/browse/HADOOP-1195 > Project: Hadoop > Issue Type: Bug > Components: dfs > Reporter: Konstantin Shvachko > Assignee: dhruba borthakur > Fix For: 0.16.0 > > Attachments: datanodeNullPointer.patch > > > FSNamesystem.getDatanode( nodeID ) returns null if the node is not found. > There are several places where we do not check wether the returned node is > null, e.g. > FSNamesystem.processReport() > FSNamesystem.setDatanodeDead() > FSNamesystem.invalidateBlock() > FSNamesystem.verifyNodeRegistration() > I'm getting the following NPE: > 07/04/02 17:31:50 WARN dfs.DataNode: org.apache.hadoop.ipc.RemoteException: > java.io.IOException: java.lang.NullPointerException > at > org.apache.hadoop.dfs.FSNamesystem.shouldNodeShutdown(FSNamesystem.java:3306) > at > org.apache.hadoop.dfs.FSNamesystem.processReport(FSNamesystem.java:2012) > at org.apache.hadoop.dfs.NameNode.blockReport(NameNode.java:654) > at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:585) > at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:341) > at org.apache.hadoop.ipc.Server$Handler.run(Server.java:580) > at org.apache.hadoop.ipc.Client.call(Client.java:473) > at org.apache.hadoop.ipc.RPC$Invoker.invoke(RPC.java:164) > at org.apache.hadoop.dfs.$Proxy1.blockReport(Unknown Source) > at org.apache.hadoop.dfs.DataNode.offerService(DataNode.java:460) > at org.apache.hadoop.dfs.DataNode.run(DataNode.java:1095) > at > org.apache.hadoop.dfs.MiniDFSCluster$DataNodeRunner.run(MiniDFSCluster.java:160) > at java.lang.Thread.run(Thread.java:595) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.