فهرست منبع

YARN-4028. AppBlock page key update and diagnostics value null on
recovery. Contributed by Bibin A Chundatt

(cherry picked from commit 22dc5fc20942a8d98333ed5470b5fb8c1d257f1a)

Xuan 9 سال پیش
والد
کامیت
fc6b176e70

+ 3 - 0
hadoop-yarn-project/CHANGES.txt

@@ -725,6 +725,9 @@ Release 2.8.0 - UNRELEASED
     YARN-3987. Send AM container completed msg to NM once AM finishes.
     YARN-3987. Send AM container completed msg to NM once AM finishes.
     (sandflee via jianhe)
     (sandflee via jianhe)
 
 
+    YARN-4028. AppBlock page key update and diagnostics value null on recovery
+    (Bibin A Chundatt via xgong)
+
 Release 2.7.2 - UNRELEASED
 Release 2.7.2 - UNRELEASED
 
 
   INCOMPATIBLE CHANGES
   INCOMPATIBLE CHANGES

+ 3 - 3
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/webapp/AppBlock.java

@@ -195,13 +195,13 @@ public class AppBlock extends HtmlBlock {
         && webUiType.equals(YarnWebParams.RM_WEB_UI)) {
         && webUiType.equals(YarnWebParams.RM_WEB_UI)) {
       LogAggregationStatus status = getLogAggregationStatus();
       LogAggregationStatus status = getLogAggregationStatus();
       if (status == null) {
       if (status == null) {
-        overviewTable._("Log Aggregation Status", "N/A");
+        overviewTable._("Log Aggregation Status:", "N/A");
       } else if (status == LogAggregationStatus.DISABLED
       } else if (status == LogAggregationStatus.DISABLED
           || status == LogAggregationStatus.NOT_START
           || status == LogAggregationStatus.NOT_START
           || status == LogAggregationStatus.SUCCEEDED) {
           || status == LogAggregationStatus.SUCCEEDED) {
-        overviewTable._("Log Aggregation Status", status.name());
+        overviewTable._("Log Aggregation Status:", status.name());
       } else {
       } else {
-        overviewTable._("Log Aggregation Status",
+        overviewTable._("Log Aggregation Status:",
             root_url("logaggregationstatus", app.getAppId()), status.name());
             root_url("logaggregationstatus", app.getAppId()), status.name());
       }
       }
     }
     }

+ 2 - 1
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/rmapp/RMAppImpl.java

@@ -782,7 +782,8 @@ public class RMAppImpl implements RMApp, Recoverable {
     LOG.info("Recovering app: " + getApplicationId() + " with " + 
     LOG.info("Recovering app: " + getApplicationId() + " with " + 
         + appState.getAttemptCount() + " attempts and final state = "
         + appState.getAttemptCount() + " attempts and final state = "
         + this.recoveredFinalState );
         + this.recoveredFinalState );
-    this.diagnostics.append(appState.getDiagnostics());
+    this.diagnostics.append(null == appState.getDiagnostics() ? "" : appState
+        .getDiagnostics());
     this.storedFinishTime = appState.getFinishTime();
     this.storedFinishTime = appState.getFinishTime();
     this.startTime = appState.getStartTime();
     this.startTime = appState.getStartTime();