HADOOP-10326. M/R jobs can not access S3 if Kerberos is enabled. Contributed by bc Wong.

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1566965 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Aaron Myers 2014-02-11 02:47:05 +00:00
parent 7fce641c49
commit 5c7b27bae0
5 changed files with 28 additions and 3 deletions

View File

@ -331,6 +331,9 @@ Release 2.4.0 - UNRELEASED
HADOOP-10330. TestFrameDecoder fails if it cannot bind port 12345. HADOOP-10330. TestFrameDecoder fails if it cannot bind port 12345.
(Arpit Agarwal) (Arpit Agarwal)
HADOOP-10326. M/R jobs can not access S3 if Kerberos is enabled. (bc Wong
via atm)
Release 2.3.0 - UNRELEASED Release 2.3.0 - UNRELEASED
INCOMPATIBLE CHANGES INCOMPATIBLE CHANGES

View File

@ -443,6 +443,12 @@ public long getDefaultBlockSize() {
return getConf().getLong("fs.s3.block.size", 64 * 1024 * 1024); return getConf().getLong("fs.s3.block.size", 64 * 1024 * 1024);
} }
@Override
public String getCanonicalServiceName() {
// Does not support Token
return null;
}
// diagnostic methods // diagnostic methods
void dump() throws IOException { void dump() throws IOException {

View File

@ -733,4 +733,10 @@ public void setWorkingDirectory(Path newDir) {
public Path getWorkingDirectory() { public Path getWorkingDirectory() {
return workingDir; return workingDir;
} }
@Override
public String getCanonicalServiceName() {
// Does not support Token
return null;
}
} }

View File

@ -55,4 +55,9 @@ public void testBlockSize() throws Exception {
fs.getFileStatus(file).getBlockSize()); fs.getFileStatus(file).getBlockSize());
} }
public void testCanonicalName() throws Exception {
assertNull("s3 doesn't support security token and shouldn't have canonical name",
fs.getCanonicalServiceName());
}
} }

View File

@ -49,6 +49,11 @@ protected void tearDown() throws Exception {
super.tearDown(); super.tearDown();
} }
public void testCanonicalName() throws Exception {
assertNull("s3n doesn't support security token and shouldn't have canonical name",
fs.getCanonicalServiceName());
}
public void testListStatusForRoot() throws Exception { public void testListStatusForRoot() throws Exception {
FileStatus[] paths = fs.listStatus(path("/")); FileStatus[] paths = fs.listStatus(path("/"));
assertEquals("Root directory is not empty; ", 0, paths.length); assertEquals("Root directory is not empty; ", 0, paths.length);