Repository: hadoop Updated Branches: refs/heads/branch-2.7 2cb9dac9a -> 5021f52f7
HDFS-8038. PBImageDelimitedTextWriter#getEntry output HDFS path in platform-specific format. Contributed by Xiaoyu Yao. (cherry picked from commit 672ed462965ea7da10ce3df48c02e2a3bd13f0ae) (cherry picked from commit 950dc1b1995191327e6b919ee17a87e59b749264) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/5021f52f Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/5021f52f Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/5021f52f Branch: refs/heads/branch-2.7 Commit: 5021f52f7bf65c3002e1c1767060aa728847c533 Parents: 2cb9dac Author: cnauroth <[email protected]> Authored: Tue Apr 7 13:33:11 2015 -0700 Committer: cnauroth <[email protected]> Committed: Tue Apr 7 13:33:38 2015 -0700 ---------------------------------------------------------------------- hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt | 3 +++ .../tools/offlineImageViewer/PBImageDelimitedTextWriter.java | 8 +++++--- .../hdfs/tools/offlineImageViewer/PBImageTextWriter.java | 7 +++++-- 3 files changed, 13 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/5021f52f/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt index 657de32..c36ea82 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt +++ b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt @@ -971,6 +971,9 @@ Release 2.7.0 - UNRELEASED HDFS-7999. FsDatasetImpl#createTemporary sometimes holds the FSDatasetImpl lock for a very long time (sinago via cmccabe) + HDFS-8038. PBImageDelimitedTextWriter#getEntry output HDFS path in + platform-specific format. (Xiaoyu Yao via cnauroth) + BREAKDOWN OF HDFS-7584 SUBTASKS AND RELATED JIRAS HDFS-7720. Quota by Storage Type API, tools and ClientNameNode http://git-wip-us.apache.org/repos/asf/hadoop/blob/5021f52f/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/PBImageDelimitedTextWriter.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/PBImageDelimitedTextWriter.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/PBImageDelimitedTextWriter.java index 350967d..fbe7f3a 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/PBImageDelimitedTextWriter.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/PBImageDelimitedTextWriter.java @@ -17,13 +17,13 @@ */ package org.apache.hadoop.hdfs.tools.offlineImageViewer; +import org.apache.hadoop.fs.Path; import org.apache.hadoop.fs.permission.PermissionStatus; import org.apache.hadoop.hdfs.server.namenode.FsImageProto.INodeSection.INode; import org.apache.hadoop.hdfs.server.namenode.FsImageProto.INodeSection.INodeDirectory; import org.apache.hadoop.hdfs.server.namenode.FsImageProto.INodeSection.INodeFile; import org.apache.hadoop.hdfs.server.namenode.FsImageProto.INodeSection.INodeSymlink; -import java.io.File; import java.io.IOException; import java.io.PrintStream; import java.text.SimpleDateFormat; @@ -79,8 +79,10 @@ public class PBImageDelimitedTextWriter extends PBImageTextWriter { @Override public String getEntry(String parent, INode inode) { StringBuffer buffer = new StringBuffer(); - String path = new File(parent, inode.getName().toStringUtf8()).toString(); - buffer.append(path); + String inodeName = inode.getName().toStringUtf8(); + Path path = new Path(parent.isEmpty() ? "/" : parent, + inodeName.isEmpty() ? "/" : inodeName); + buffer.append(path.toString()); PermissionStatus p = null; switch (inode.getType()) { http://git-wip-us.apache.org/repos/asf/hadoop/blob/5021f52f/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/PBImageTextWriter.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/PBImageTextWriter.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/PBImageTextWriter.java index d228920..d2ccc5c 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/PBImageTextWriter.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/PBImageTextWriter.java @@ -21,6 +21,7 @@ import com.google.common.base.Preconditions; import com.google.common.collect.Lists; import org.apache.commons.io.FileUtils; import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.fs.Path; import org.apache.hadoop.fs.permission.PermissionStatus; import org.apache.hadoop.hdfs.server.namenode.FSImageFormatPBINode; import org.apache.hadoop.hdfs.server.namenode.FSImageFormatProtobuf; @@ -145,7 +146,8 @@ abstract class PBImageTextWriter implements Closeable { return "/"; } if (this.path == null) { - this.path = new File(parent.getPath(), name).toString(); + this.path = new Path(parent.getPath(), name.isEmpty() ? "/" : name). + toString(); this.name = null; } return this.path; @@ -364,7 +366,8 @@ abstract class PBImageTextWriter implements Closeable { } String parentName = toString(bytes); String parentPath = - new File(getParentPath(parent), parentName).toString(); + new Path(getParentPath(parent), + parentName.isEmpty()? "/" : parentName).toString(); dirPathCache.put(parent, parentPath); } return dirPathCache.get(parent);
