HDFS-4944. WebHDFS cannot create a file path containing characters that must be URI-encoded, such as space. Contributed by Chris Nauroth.
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1498055 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
8eb3be63f5
commit
750442812c
|
@ -631,6 +631,9 @@ Release 2.1.0-beta - 2013-07-02
|
||||||
HDFS-4927. CreateEditsLog creates inodes with an invalid inode ID, which then
|
HDFS-4927. CreateEditsLog creates inodes with an invalid inode ID, which then
|
||||||
cannot be loaded by a namenode. (cnauroth)
|
cannot be loaded by a namenode. (cnauroth)
|
||||||
|
|
||||||
|
HDFS-4944. WebHDFS cannot create a file path containing characters that must
|
||||||
|
be URI-encoded, such as space. (cnauroth)
|
||||||
|
|
||||||
BREAKDOWN OF HDFS-347 SUBTASKS AND RELATED JIRAS
|
BREAKDOWN OF HDFS-347 SUBTASKS AND RELATED JIRAS
|
||||||
|
|
||||||
HDFS-4353. Encapsulate connections to peers in Peer and PeerServer classes.
|
HDFS-4353. Encapsulate connections to peers in Peer and PeerServer classes.
|
||||||
|
|
|
@ -404,5 +404,34 @@ public class TestWebHdfsFileSystemContract extends FileSystemContractBaseTest {
|
||||||
}
|
}
|
||||||
conn.disconnect();
|
conn.disconnect();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
{//test create with path containing spaces
|
||||||
|
HttpOpParam.Op op = PutOpParam.Op.CREATE;
|
||||||
|
Path path = new Path("/test/path%20with%20spaces");
|
||||||
|
URL url = webhdfs.toUrl(op, path);
|
||||||
|
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
|
||||||
|
conn.setRequestMethod(op.getType().toString());
|
||||||
|
conn.setDoOutput(false);
|
||||||
|
conn.setInstanceFollowRedirects(false);
|
||||||
|
final String redirect;
|
||||||
|
try {
|
||||||
|
conn.connect();
|
||||||
|
assertEquals(HttpServletResponse.SC_TEMPORARY_REDIRECT,
|
||||||
|
conn.getResponseCode());
|
||||||
|
redirect = conn.getHeaderField("Location");
|
||||||
|
} finally {
|
||||||
|
conn.disconnect();
|
||||||
|
}
|
||||||
|
|
||||||
|
conn = (HttpURLConnection)new URL(redirect).openConnection();
|
||||||
|
conn.setRequestMethod(op.getType().toString());
|
||||||
|
conn.setDoOutput(op.getDoOutput());
|
||||||
|
try {
|
||||||
|
conn.connect();
|
||||||
|
assertEquals(HttpServletResponse.SC_CREATED, conn.getResponseCode());
|
||||||
|
} finally {
|
||||||
|
conn.disconnect();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue