From 716074bc80047c2ec3a4e74748194a3770a898f6 Mon Sep 17 00:00:00 2001 From: Jing Zhao Date: Mon, 13 Jan 2014 18:40:37 +0000 Subject: [PATCH] HDFS-5710. Merge change r1557803 from trunk. git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1557805 13f79535-47bb-0310-9956-ffa450edef68 --- hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt | 3 +++ .../org/apache/hadoop/hdfs/server/namenode/FSDirectory.java | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt index 74b0829d837..f408d207fd8 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt +++ b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt @@ -262,6 +262,9 @@ Release 2.4.0 - UNRELEASED HDFS-5747. Fix NPEs in BlockManager. (Arpit Agarwal) + HDFS-5710. FSDirectory#getFullPathName should check inodes against null. + (Uma Maheswara Rao G via jing9) + BREAKDOWN OF HDFS-2832 SUBTASKS AND RELATED JIRAS HDFS-4985. Add storage type to the protocol and expose it in block report diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSDirectory.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSDirectory.java index c5ca9672719..41380e41fe3 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSDirectory.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSDirectory.java @@ -1884,7 +1884,8 @@ private static INode[] getFullPathINodes(INode inode) { /** Return the full path name of the specified inode */ static String getFullPathName(INode inode) { INode[] inodes = getFullPathINodes(inode); - return getFullPathName(inodes, inodes.length - 1); + // inodes can be null only when its called without holding lock + return inodes == null ? "" : getFullPathName(inodes, inodes.length - 1); } /**