You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by cn...@apache.org on 2013/12/23 19:38:12 UTC
svn commit: r1553171 - in
/hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common:
CHANGES.txt src/main/java/org/apache/hadoop/fs/HarFileSystem.java
src/test/java/org/apache/hadoop/fs/TestHarFileSystemBasics.java
Author: cnauroth
Date: Mon Dec 23 18:38:11 2013
New Revision: 1553171
URL: http://svn.apache.org/r1553171
Log:
HADOOP-10175. Merging change r1553169 from trunk to branch-2.
Modified:
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/HarFileSystem.java
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/TestHarFileSystemBasics.java
Modified: hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt?rev=1553171&r1=1553170&r2=1553171&view=diff
==============================================================================
--- hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt (original)
+++ hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt Mon Dec 23 18:38:11 2013
@@ -273,6 +273,9 @@ Release 2.3.0 - UNRELEASED
HADOOP-10087. UserGroupInformation.getGroupNames() fails to return primary
group first when JniBasedUnixGroupsMappingWithFallback is used (cmccabe)
+ HADOOP-10175. Har files system authority should preserve userinfo.
+ (Chuan Liu via cnauroth)
+
Release 2.2.0 - 2013-10-13
INCOMPATIBLE CHANGES
Modified: hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/HarFileSystem.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/HarFileSystem.java?rev=1553171&r1=1553170&r2=1553171&view=diff
==============================================================================
--- hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/HarFileSystem.java (original)
+++ hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/HarFileSystem.java Mon Dec 23 18:38:11 2013
@@ -294,6 +294,10 @@ public class HarFileSystem extends FileS
private String getHarAuth(URI underLyingUri) {
String auth = underLyingUri.getScheme() + "-";
if (underLyingUri.getHost() != null) {
+ if (underLyingUri.getUserInfo() != null) {
+ auth += underLyingUri.getUserInfo();
+ auth += "@";
+ }
auth += underLyingUri.getHost();
if (underLyingUri.getPort() != -1) {
auth += ":";
Modified: hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/TestHarFileSystemBasics.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/TestHarFileSystemBasics.java?rev=1553171&r1=1553170&r2=1553171&view=diff
==============================================================================
--- hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/TestHarFileSystemBasics.java (original)
+++ hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/TestHarFileSystemBasics.java Mon Dec 23 18:38:11 2013
@@ -258,6 +258,22 @@ public class TestHarFileSystemBasics {
0, expectedFileNames.size());
}
+ @Test
+ public void testMakeQualifiedPath() throws Exception {
+ // Construct a valid har file system path with authority that
+ // contains userinfo and port. The userinfo and port are useless
+ // in local fs uri. They are only used to verify har file system
+ // can correctly preserve the information for the underlying file system.
+ String harPathWithUserinfo = "har://file-user:passwd@localhost:80"
+ + harPath.toUri().getPath().toString();
+ Path path = new Path(harPathWithUserinfo);
+ Path qualifiedPath = path.getFileSystem(conf).makeQualified(path);
+ assertTrue(String.format(
+ "The qualified path (%s) did not match the expected path (%s).",
+ qualifiedPath.toString(), harPathWithUserinfo),
+ qualifiedPath.toString().equals(harPathWithUserinfo));
+ }
+
// ========== Negative:
@Test