HDFS-11648. Lazy construct the IIP pathname. Contributed by Daryn Sharp.

This commit is contained in:
Kihwal Lee 2017-04-12 13:29:24 -05:00
parent 4dd6206547
commit d4c01dde49
1 changed files with 4 additions and 2 deletions

View File

@ -238,7 +238,7 @@ public class INodesInPath {
}
private final byte[][] path;
private final String pathname;
private volatile String pathname;
/**
* Array with the specified number of INodes resolved for a given path.
@ -268,7 +268,6 @@ public class INodesInPath {
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;
@ -329,6 +328,9 @@ public class INodesInPath {
/** @return the full path in string form */
public String getPath() {
if (pathname == null) {
pathname = DFSUtil.byteArray2PathString(path);
}
return pathname;
}