From e36ae9639fa7ac87b05a3860517c23082cf76791 Mon Sep 17 00:00:00 2001 From: Steve Loughran Date: Fri, 12 Oct 2018 09:59:19 +0100 Subject: [PATCH] HADOOP-15831. Include modificationTime in the toString method of CopyListingFileStatus. Contributed by Ted Yu. --- .../org/apache/hadoop/tools/CopyListingFileStatus.java | 3 ++- .../apache/hadoop/tools/TestCopyListingFileStatus.java | 10 ++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/CopyListingFileStatus.java b/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/CopyListingFileStatus.java index e01a6b15bd..e8e5ed8234 100644 --- a/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/CopyListingFileStatus.java +++ b/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/CopyListingFileStatus.java @@ -405,10 +405,11 @@ public int hashCode() { public String toString() { StringBuilder sb = new StringBuilder(super.toString()); sb.append('{'); - sb.append(this.getPath().toString()); + sb.append(this.getPath() == null ? "" : this.getPath().toString()); sb.append(" length = ").append(this.getLen()); sb.append(" aclEntries = ").append(aclEntries); sb.append(", xAttrs = ").append(xAttrs); + sb.append(", modTime = ").append(modificationTime); if (isSplit()) { sb.append(", chunkOffset = ").append(this.getChunkOffset()); sb.append(", chunkLength = ").append(this.getChunkLength()); diff --git a/hadoop-tools/hadoop-distcp/src/test/java/org/apache/hadoop/tools/TestCopyListingFileStatus.java b/hadoop-tools/hadoop-distcp/src/test/java/org/apache/hadoop/tools/TestCopyListingFileStatus.java index 8efc5cf994..f665627320 100644 --- a/hadoop-tools/hadoop-distcp/src/test/java/org/apache/hadoop/tools/TestCopyListingFileStatus.java +++ b/hadoop-tools/hadoop-distcp/src/test/java/org/apache/hadoop/tools/TestCopyListingFileStatus.java @@ -31,6 +31,16 @@ */ public class TestCopyListingFileStatus { + @Test + public void testToString() { + CopyListingFileStatus src = new CopyListingFileStatus( + 4344L, false, 2, 512 << 20, 1234L, 5678L, new FsPermission((short)0512), + "dingo", "yaks", new Path("hdfs://localhost:4344")); + src.toString(); + src = new CopyListingFileStatus(); + src.toString(); + } + @Test public void testCopyListingFileStatusSerialization() throws Exception { CopyListingFileStatus src = new CopyListingFileStatus(