Ted Yu created HDFS-5710:
----------------------------

             Summary: FSDirectory#getFullPathName should check for inodes 
against null
                 Key: HDFS-5710
                 URL: https://issues.apache.org/jira/browse/HDFS-5710
             Project: Hadoop HDFS
          Issue Type: Bug
    Affects Versions: 2.2.0
            Reporter: Ted Yu


>From 
>https://builds.apache.org/job/hbase-0.96-hadoop2/166/testReport/junit/org.apache.hadoop.hbase.mapreduce/TestTableInputFormatScan1/org_apache_hadoop_hbase_mapreduce_TestTableInputFormatScan1/
> :
{code}
2014-01-01 00:10:15,571 INFO  [IPC Server handler 2 on 50198] 
blockmanagement.BlockManager(1009): BLOCK* addToInvalidates: 
blk_1073741967_1143 127.0.0.1:40188 127.0.0.1:46149 127.0.0.1:41496 
2014-01-01 00:10:16,559 WARN  
[org.apache.hadoop.hdfs.server.blockmanagement.BlockManager$ReplicationMonitor@93935b]
 namenode.FSDirectory(1854): Could not get full path. Corresponding file might 
have deleted already.
2014-01-01 00:10:16,560 FATAL 
[org.apache.hadoop.hdfs.server.blockmanagement.BlockManager$ReplicationMonitor@93935b]
 blockmanagement.BlockManager$ReplicationMonitor(3127): ReplicationMonitor 
thread received Runtime exception. 
java.lang.NullPointerException
        at 
org.apache.hadoop.hdfs.server.namenode.FSDirectory.getFullPathName(FSDirectory.java:1871)
        at 
org.apache.hadoop.hdfs.server.namenode.INode.getFullPathName(INode.java:482)
        at 
org.apache.hadoop.hdfs.server.namenode.INodeFile.getName(INodeFile.java:316)
        at 
org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicy.chooseTarget(BlockPlacementPolicy.java:118)
        at 
org.apache.hadoop.hdfs.server.blockmanagement.BlockManager.computeReplicationWorkForBlocks(BlockManager.java:1259)
        at 
org.apache.hadoop.hdfs.server.blockmanagement.BlockManager.computeReplicationWork(BlockManager.java:1167)
        at 
org.apache.hadoop.hdfs.server.blockmanagement.BlockManager.computeDatanodeWork(BlockManager.java:3158)
        at 
org.apache.hadoop.hdfs.server.blockmanagement.BlockManager$ReplicationMonitor.run(BlockManager.java:3112)
        at java.lang.Thread.run(Thread.java:724)
{code}
Looks like getRelativePathINodes() returned null but getFullPathName() didn't 
check inodes against null, leading to NPE.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to