HDFS-10619. Cache path in InodesInPath. Contributed by Daryn Sharp.

(cherry picked from commit 90020624b0)
This commit is contained in:
Kihwal Lee 2016-10-03 09:26:41 -05:00
parent c31d23db35
commit 3a89a8814f
1 changed files with 4 additions and 1 deletions

View File

@ -278,6 +278,8 @@ public static INodesInPath append(INodesInPath iip, INode child,
}
private final byte[][] path;
private final String pathname;
/**
* Array with the specified number of INodes resolved for a given path.
*/
@ -306,6 +308,7 @@ private INodesInPath(INode[] inodes, byte[][] path, boolean isRaw,
Preconditions.checkArgument(inodes != null && path != null);
this.inodes = inodes;
this.path = path;
this.pathname = DFSUtil.byteArray2PathString(path);
this.isRaw = isRaw;
this.isSnapshot = isSnapshot;
this.snapshotId = snapshotId;
@ -366,7 +369,7 @@ public byte[] getPathComponent(int i) {
/** @return the full path in string form */
public String getPath() {
return DFSUtil.byteArray2PathString(path);
return pathname;
}
public String getParentPath() {