You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by jl...@apache.org on 2014/10/13 17:10:43 UTC

git commit: MAPREDUCE-6125. TestContainerLauncherImpl sometimes fails. Contributed by Mit Desai (cherry picked from commit bbe80cdc7b37cae50e46eaa00e75240d4a2aac68)

Repository: hadoop
Updated Branches:
  refs/heads/branch-2 7bfd9e068 -> e17e3bdbc


MAPREDUCE-6125. TestContainerLauncherImpl sometimes fails. Contributed by Mit Desai
(cherry picked from commit bbe80cdc7b37cae50e46eaa00e75240d4a2aac68)


Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/e17e3bdb
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/e17e3bdb
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/e17e3bdb

Branch: refs/heads/branch-2
Commit: e17e3bdbc46941022950efd2456ff3ce043673bc
Parents: 7bfd9e0
Author: Jason Lowe <jl...@apache.org>
Authored: Mon Oct 13 15:08:23 2014 +0000
Committer: Jason Lowe <jl...@apache.org>
Committed: Mon Oct 13 15:09:26 2014 +0000

----------------------------------------------------------------------
 hadoop-mapreduce-project/CHANGES.txt            |  3 +++
 .../app/launcher/TestContainerLauncherImpl.java | 28 ++++++++++++++------
 2 files changed, 23 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hadoop/blob/e17e3bdb/hadoop-mapreduce-project/CHANGES.txt
----------------------------------------------------------------------
diff --git a/hadoop-mapreduce-project/CHANGES.txt b/hadoop-mapreduce-project/CHANGES.txt
index 1547400..d294246 100644
--- a/hadoop-mapreduce-project/CHANGES.txt
+++ b/hadoop-mapreduce-project/CHANGES.txt
@@ -204,6 +204,9 @@ Release 2.6.0 - UNRELEASED
     MAPREDUCE-5875. Make Counter limits consistent across JobClient, 
     MRAppMaster, and YarnChild. (Gera Shegalov via kasha)
 
+    MAPREDUCE-6125. TestContainerLauncherImpl sometimes fails (Mit Desai via
+    jlowe)
+
 Release 2.5.1 - 2014-09-05
 
   INCOMPATIBLE CHANGES

http://git-wip-us.apache.org/repos/asf/hadoop/blob/e17e3bdb/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/launcher/TestContainerLauncherImpl.java
----------------------------------------------------------------------
diff --git a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/launcher/TestContainerLauncherImpl.java b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/launcher/TestContainerLauncherImpl.java
index 4a69a7b..74e532a 100644
--- a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/launcher/TestContainerLauncherImpl.java
+++ b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/launcher/TestContainerLauncherImpl.java
@@ -24,6 +24,7 @@ import static org.mockito.Mockito.never;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
+import java.io.Closeable;
 import java.io.IOException;
 import java.nio.ByteBuffer;
 import java.util.HashMap;
@@ -83,6 +84,13 @@ public class TestContainerLauncherImpl {
     serviceResponse.put(ShuffleHandler.MAPREDUCE_SHUFFLE_SERVICEID,
         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 
     ContainerLauncherImpl {
@@ -152,8 +160,8 @@ public class TestContainerLauncherImpl {
     EventHandler mockEventHandler = mock(EventHandler.class);
     when(mockContext.getEventHandler()).thenReturn(mockEventHandler);
     String cmAddress = "127.0.0.1:8000";
-    ContainerManagementProtocol mockCM =
-        mock(ContainerManagementProtocol.class);
+    ContainerManagementProtocolClient mockCM =
+        mock(ContainerManagementProtocolClient.class);
     ContainerLauncherImplUnderTest ut =
         new ContainerLauncherImplUnderTest(mockContext, mockCM);
     
@@ -213,8 +221,8 @@ public class TestContainerLauncherImpl {
     EventHandler mockEventHandler = mock(EventHandler.class);
     when(mockContext.getEventHandler()).thenReturn(mockEventHandler);
 
-    ContainerManagementProtocol mockCM =
-        mock(ContainerManagementProtocol.class);
+    ContainerManagementProtocolClient mockCM =
+        mock(ContainerManagementProtocolClient.class);
     ContainerLauncherImplUnderTest ut =
         new ContainerLauncherImplUnderTest(mockContext, mockCM);
     
@@ -275,8 +283,8 @@ public class TestContainerLauncherImpl {
     EventHandler mockEventHandler = mock(EventHandler.class);
     when(mockContext.getEventHandler()).thenReturn(mockEventHandler);
 
-    ContainerManagementProtocol mockCM =
-        mock(ContainerManagementProtocol.class);
+    ContainerManagementProtocolClient mockCM =
+        mock(ContainerManagementProtocolClient.class);
     ContainerLauncherImplUnderTest ut =
         new ContainerLauncherImplUnderTest(mockContext, mockCM);
 
@@ -330,7 +338,7 @@ public class TestContainerLauncherImpl {
     EventHandler mockEventHandler = mock(EventHandler.class);
     when(mockContext.getEventHandler()).thenReturn(mockEventHandler);
 
-    ContainerManagementProtocol mockCM =
+    ContainerManagementProtocolClient mockCM =
         new ContainerManagerForTest(startLaunchBarrier, completeLaunchBarrier);
     ContainerLauncherImplUnderTest ut =
         new ContainerLauncherImplUnderTest(mockContext, mockCM);
@@ -406,7 +414,7 @@ public class TestContainerLauncherImpl {
         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 completeLaunchBarrier;
@@ -444,6 +452,10 @@ public class TestContainerLauncherImpl {
         GetContainerStatusesRequest request) throws IOException {
       return null;
     }
+
+    @Override
+    public void close() throws IOException {
+    }
   }
   
   @SuppressWarnings("serial")