Author: tgraves
Date: Thu Jun 21 18:15:13 2012
New Revision: 1352639

URL: http://svn.apache.org/viewvc?rev=1352639&view=rev
Log:
merge -r 1352637:1352638 from trunk. FIXES: MAPREDUCE-4295

Modified:
    hadoop/common/branches/branch-2/hadoop-mapreduce-project/CHANGES.txt
    
hadoop/common/branches/branch-2/hadoop-mapreduce-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java

Modified: hadoop/common/branches/branch-2/hadoop-mapreduce-project/CHANGES.txt
URL: 
http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-mapreduce-project/CHANGES.txt?rev=1352639&r1=1352638&r2=1352639&view=diff
==============================================================================
--- hadoop/common/branches/branch-2/hadoop-mapreduce-project/CHANGES.txt 
(original)
+++ hadoop/common/branches/branch-2/hadoop-mapreduce-project/CHANGES.txt Thu 
Jun 21 18:15:13 2012
@@ -482,6 +482,8 @@ Release 0.23.3 - UNRELEASED
 
     MAPREDUCE-4320. gridmix mainClass wrong in pom.xml (tgraves)
 
+    MAPREDUCE-4295. RM crashes due to DNS issue (tgraves)
+
 Release 0.23.2 - UNRELEASED
 
   INCOMPATIBLE CHANGES

Modified: 
hadoop/common/branches/branch-2/hadoop-mapreduce-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java
URL: 
http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-mapreduce-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java?rev=1352639&r1=1352638&r2=1352639&view=diff
==============================================================================
--- 
hadoop/common/branches/branch-2/hadoop-mapreduce-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java
 (original)
+++ 
hadoop/common/branches/branch-2/hadoop-mapreduce-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java
 Thu Jun 21 18:15:13 2012
@@ -1180,9 +1180,16 @@ public class LeafQueue implements CSQueu
     if (UserGroupInformation.isSecurityEnabled()) {
       ContainerTokenIdentifier tokenIdentifier = new ContainerTokenIdentifier(
           containerId, nodeId.toString(), capability);
-      containerToken = BuilderUtils.newContainerToken(nodeId, ByteBuffer
-          .wrap(containerTokenSecretManager
-              .createPassword(tokenIdentifier)), tokenIdentifier);
+      try {
+        containerToken = BuilderUtils.newContainerToken(nodeId, ByteBuffer
+            .wrap(containerTokenSecretManager
+                .createPassword(tokenIdentifier)), tokenIdentifier);
+      } catch (IllegalArgumentException e) {
+         // this could be because DNS is down - in which case we just want
+         // to retry and not bring RM down
+         LOG.error("Error trying to create new container", e);
+         return null;
+      }
     }
 
     // Create the container
@@ -1211,6 +1218,11 @@ public class LeafQueue implements CSQueu
     // Create the container if necessary
     Container container = 
         getContainer(rmContainer, application, node, capability, priority);
+  
+    // something went wrong getting/creating the container 
+    if (container == null) {
+      return Resources.none();
+    }
 
     // Can we allocate a container on this node?
     int availableContainers = 


Reply via email to