Kihwal Lee created HDFS-5142: -------------------------------- Summary: Namenode crashes with NPE in ReplicationMonitor Key: HDFS-5142 URL: https://issues.apache.org/jira/browse/HDFS-5142 Project: Hadoop HDFS Issue Type: Bug Affects Versions: 0.23.9, 2.1.0-beta Reporter: Kihwal Lee Priority: Critical
When ReplicationMonitor creates and adds a replication work for a block, its INodeFile (0.23) or BlockCollection (2.x) is recorded. This is done under the FSN write lock, but the actual chooseTarget() call is made outside the lock. When chooseTarget() is called, FSDirectory#getFullPathName() ends up getting called. If the INode was unlinked from its parents after ReplicationMonitor releasing the lock (e.g. delete), this call genetates NPE and crashes the name node. Path name is actually unused in the existing block placement policy modules. But private implementations might use it. It will be nice if we can avoid calling getFullPathName() at all here. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira