HADOOP-12469. distcp shout not ignore the ignoreFailures option. Contributed by Mingliang Liu.

This commit is contained in:
Haohui Mai 2015-10-09 22:38:06 -07:00
parent d578165b99
commit a412edf5c4
3 changed files with 9 additions and 4 deletions

View File

@ -695,6 +695,9 @@ Release 2.8.0 - UNRELEASED
HADOOP-12441. Fixed shell-kill command behaviour to work correctly on some
Linux distributions after HADOOP-12317. (Wangda Tan via vinodkv)
HADOOP-12469. distcp shout not ignore the ignoreFailures option.
(Mingliang Liu via wheat9)
Release 2.7.2 - UNRELEASED
INCOMPATIBLE CHANGES

View File

@ -283,7 +283,7 @@ public class CopyMapper extends Mapper<Text, CopyListingFileStatus, Text, Text>
} catch (Exception e) {
context.setStatus("Copy Failure: " + sourceFileStatus.getPath());
throw new IOException("File copy failed: " + sourceFileStatus.getPath() +
" --> " + target, e);
" --> " + target, e.getCause());
}
incrementCounter(context, Counter.BYTESEXPECTED, sourceFileStatus.getLen());
incrementCounter(context, Counter.BYTESCOPIED, bytesCopied);

View File

@ -713,7 +713,7 @@ public class TestCopyMapper {
// wrapped twice - once in RetriableCommand and again in CopyMapper
// itself.
if (e.getCause() == null || e.getCause().getCause() == null ||
!(e.getCause().getCause() instanceof AccessControlException)) {
!(e.getCause() instanceof AccessControlException)) {
throw new RuntimeException(e);
}
}
@ -841,8 +841,10 @@ public class TestCopyMapper {
}
catch (Exception exception) {
// Check that the exception suggests the use of -pb/-skipCrc.
Assert.assertTrue("Failure exception should have suggested the use of -pb.", exception.getCause().getCause().getMessage().contains("pb"));
Assert.assertTrue("Failure exception should have suggested the use of -skipCrc.", exception.getCause().getCause().getMessage().contains("skipCrc"));
Assert.assertTrue("Exception should have suggested the use of -pb.",
exception.getCause().getMessage().contains("pb"));
Assert.assertTrue("Exception should have suggested the use of -skipCrc.",
exception.getCause().getMessage().contains("skipCrc"));
}
}