Преглед изворни кода

YARN-9168. DistributedShell client timeout should be -1 by default. Contributed by Zhankun Tang.

(cherry picked from commit 6cec90653dc2ae60a10262745997ea91dd872a8b)
Sunil G пре 6 година
родитељ
комит
359e459df1

+ 8 - 5
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-distributedshell/src/main/java/org/apache/hadoop/yarn/applications/distributedshell/Client.java

@@ -1072,14 +1072,17 @@ public class Client {
             + " YarnState=" + state.toString() + ", DSFinalStatus=" + dsStatus.toString()
             + ". Breaking monitoring loop");
         return false;
-      }			
+      }
 
-      if (System.currentTimeMillis() > (clientStartTime + clientTimeout)) {
-        LOG.info("Reached client specified timeout for application. Killing application");
+      // The value equal or less than 0 means no timeout
+      if (clientTimeout > 0
+          && System.currentTimeMillis() > (clientStartTime + clientTimeout)) {
+        LOG.info("Reached client specified timeout for application. " +
+            "Killing application");
         forceKillApplication(appId);
-        return false;				
+        return false;
       }
-    }			
+    }
 
   }