HDFS-3413. TestFailureToReadEdits timing out. Contributed by Aaron T. Myers.

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1339250 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Aaron Myers 2012-05-16 16:24:38 +00:00
parent 7e3d016845
commit 7286e8a9da
2 changed files with 9 additions and 2 deletions

View File

@ -204,6 +204,8 @@ Release 2.0.1-alpha - UNRELEASED
HDFS-2759. Pre-allocate HDFS edit log files after writing version number. HDFS-2759. Pre-allocate HDFS edit log files after writing version number.
(atm) (atm)
HDFS-3413. TestFailureToReadEdits timing out. (atm)
Release 2.0.0-alpha - UNRELEASED Release 2.0.0-alpha - UNRELEASED
INCOMPATIBLE CHANGES INCOMPATIBLE CHANGES

View File

@ -256,16 +256,21 @@ public class TestFailureToReadEdits {
// Shutdown the active NN. // Shutdown the active NN.
cluster.shutdownNameNode(0); cluster.shutdownNameNode(0);
Runtime mockRuntime = mock(Runtime.class);
cluster.getNameNode(1).setRuntimeForTesting(mockRuntime);
verify(mockRuntime, times(0)).exit(anyInt());
try { try {
// Transition the standby to active. // Transition the standby to active.
cluster.transitionToActive(1); cluster.transitionToActive(1);
fail("Standby transitioned to active, but should not have been able to"); fail("Standby transitioned to active, but should not have been able to");
} catch (ServiceFailedException sfe) { } catch (ServiceFailedException sfe) {
LOG.info("got expected exception: " + sfe.toString(), sfe); Throwable sfeCause = sfe.getCause();
LOG.info("got expected exception: " + sfeCause.toString(), sfeCause);
assertTrue("Standby failed to catch up for some reason other than " assertTrue("Standby failed to catch up for some reason other than "
+ "failure to read logs", sfe.toString().contains( + "failure to read logs", sfeCause.getCause().toString().contains(
EditLogInputException.class.getName())); EditLogInputException.class.getName()));
} }
verify(mockRuntime, times(1)).exit(anyInt());
} }
private LimitedEditLogAnswer causeFailureOnEditLogRead() throws IOException { private LimitedEditLogAnswer causeFailureOnEditLogRead() throws IOException {