MAPREDUCE-6125. TestContainerLauncherImpl sometimes fails. Contributed by Mit Desai
This commit is contained in:
parent
e8a31f2e1c
commit
bbe80cdc7b
@ -423,6 +423,9 @@ Release 2.6.0 - UNRELEASED
|
|||||||
MAPREDUCE-5875. Make Counter limits consistent across JobClient,
|
MAPREDUCE-5875. Make Counter limits consistent across JobClient,
|
||||||
MRAppMaster, and YarnChild. (Gera Shegalov via kasha)
|
MRAppMaster, and YarnChild. (Gera Shegalov via kasha)
|
||||||
|
|
||||||
|
MAPREDUCE-6125. TestContainerLauncherImpl sometimes fails (Mit Desai via
|
||||||
|
jlowe)
|
||||||
|
|
||||||
Release 2.5.1 - 2014-09-05
|
Release 2.5.1 - 2014-09-05
|
||||||
|
|
||||||
INCOMPATIBLE CHANGES
|
INCOMPATIBLE CHANGES
|
||||||
|
@ -24,6 +24,7 @@
|
|||||||
import static org.mockito.Mockito.verify;
|
import static org.mockito.Mockito.verify;
|
||||||
import static org.mockito.Mockito.when;
|
import static org.mockito.Mockito.when;
|
||||||
|
|
||||||
|
import java.io.Closeable;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.nio.ByteBuffer;
|
import java.nio.ByteBuffer;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
@ -84,6 +85,13 @@ public void setup() throws IOException {
|
|||||||
ShuffleHandler.serializeMetaData(80));
|
ShuffleHandler.serializeMetaData(80));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// tests here mock ContainerManagementProtocol which does not have close
|
||||||
|
// method. creating an interface that implements ContainerManagementProtocol
|
||||||
|
// and Closeable so the tests does not fail with NoSuchMethodException
|
||||||
|
private static interface ContainerManagementProtocolClient extends
|
||||||
|
ContainerManagementProtocol, Closeable {
|
||||||
|
}
|
||||||
|
|
||||||
private static class ContainerLauncherImplUnderTest extends
|
private static class ContainerLauncherImplUnderTest extends
|
||||||
ContainerLauncherImpl {
|
ContainerLauncherImpl {
|
||||||
|
|
||||||
@ -152,8 +160,8 @@ public void testHandle() throws Exception {
|
|||||||
EventHandler mockEventHandler = mock(EventHandler.class);
|
EventHandler mockEventHandler = mock(EventHandler.class);
|
||||||
when(mockContext.getEventHandler()).thenReturn(mockEventHandler);
|
when(mockContext.getEventHandler()).thenReturn(mockEventHandler);
|
||||||
String cmAddress = "127.0.0.1:8000";
|
String cmAddress = "127.0.0.1:8000";
|
||||||
ContainerManagementProtocol mockCM =
|
ContainerManagementProtocolClient mockCM =
|
||||||
mock(ContainerManagementProtocol.class);
|
mock(ContainerManagementProtocolClient.class);
|
||||||
ContainerLauncherImplUnderTest ut =
|
ContainerLauncherImplUnderTest ut =
|
||||||
new ContainerLauncherImplUnderTest(mockContext, mockCM);
|
new ContainerLauncherImplUnderTest(mockContext, mockCM);
|
||||||
|
|
||||||
@ -213,8 +221,8 @@ public void testOutOfOrder() throws Exception {
|
|||||||
EventHandler mockEventHandler = mock(EventHandler.class);
|
EventHandler mockEventHandler = mock(EventHandler.class);
|
||||||
when(mockContext.getEventHandler()).thenReturn(mockEventHandler);
|
when(mockContext.getEventHandler()).thenReturn(mockEventHandler);
|
||||||
|
|
||||||
ContainerManagementProtocol mockCM =
|
ContainerManagementProtocolClient mockCM =
|
||||||
mock(ContainerManagementProtocol.class);
|
mock(ContainerManagementProtocolClient.class);
|
||||||
ContainerLauncherImplUnderTest ut =
|
ContainerLauncherImplUnderTest ut =
|
||||||
new ContainerLauncherImplUnderTest(mockContext, mockCM);
|
new ContainerLauncherImplUnderTest(mockContext, mockCM);
|
||||||
|
|
||||||
@ -275,8 +283,8 @@ public void testMyShutdown() throws Exception {
|
|||||||
EventHandler mockEventHandler = mock(EventHandler.class);
|
EventHandler mockEventHandler = mock(EventHandler.class);
|
||||||
when(mockContext.getEventHandler()).thenReturn(mockEventHandler);
|
when(mockContext.getEventHandler()).thenReturn(mockEventHandler);
|
||||||
|
|
||||||
ContainerManagementProtocol mockCM =
|
ContainerManagementProtocolClient mockCM =
|
||||||
mock(ContainerManagementProtocol.class);
|
mock(ContainerManagementProtocolClient.class);
|
||||||
ContainerLauncherImplUnderTest ut =
|
ContainerLauncherImplUnderTest ut =
|
||||||
new ContainerLauncherImplUnderTest(mockContext, mockCM);
|
new ContainerLauncherImplUnderTest(mockContext, mockCM);
|
||||||
|
|
||||||
@ -330,7 +338,7 @@ public void testContainerCleaned() throws Exception {
|
|||||||
EventHandler mockEventHandler = mock(EventHandler.class);
|
EventHandler mockEventHandler = mock(EventHandler.class);
|
||||||
when(mockContext.getEventHandler()).thenReturn(mockEventHandler);
|
when(mockContext.getEventHandler()).thenReturn(mockEventHandler);
|
||||||
|
|
||||||
ContainerManagementProtocol mockCM =
|
ContainerManagementProtocolClient mockCM =
|
||||||
new ContainerManagerForTest(startLaunchBarrier, completeLaunchBarrier);
|
new ContainerManagerForTest(startLaunchBarrier, completeLaunchBarrier);
|
||||||
ContainerLauncherImplUnderTest ut =
|
ContainerLauncherImplUnderTest ut =
|
||||||
new ContainerLauncherImplUnderTest(mockContext, mockCM);
|
new ContainerLauncherImplUnderTest(mockContext, mockCM);
|
||||||
@ -406,7 +414,7 @@ private Token createNewContainerToken(ContainerId contId,
|
|||||||
currentTime + 10000L, 123, currentTime, Priority.newInstance(0), 0));
|
currentTime + 10000L, 123, currentTime, Priority.newInstance(0), 0));
|
||||||
}
|
}
|
||||||
|
|
||||||
private static class ContainerManagerForTest implements ContainerManagementProtocol {
|
private static class ContainerManagerForTest implements ContainerManagementProtocolClient {
|
||||||
|
|
||||||
private CyclicBarrier startLaunchBarrier;
|
private CyclicBarrier startLaunchBarrier;
|
||||||
private CyclicBarrier completeLaunchBarrier;
|
private CyclicBarrier completeLaunchBarrier;
|
||||||
@ -444,6 +452,10 @@ public GetContainerStatusesResponse getContainerStatuses(
|
|||||||
GetContainerStatusesRequest request) throws IOException {
|
GetContainerStatusesRequest request) throws IOException {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void close() throws IOException {
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("serial")
|
@SuppressWarnings("serial")
|
||||||
|
Loading…
Reference in New Issue
Block a user