Browse Source

YARN-2859.addendum: fix the remaining issue from the previous patch

(cherry picked from commit f114e728da6e19f3d35ff0cfef9fceea26aa5d46)
Xuan 9 years ago
parent
commit
be65d319fa

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

@@ -1928,6 +1928,9 @@ Release 2.6.2 - 2015-10-28
     YARN-3798. ZKRMStateStore shouldn't create new session without occurrance of 
     SESSIONEXPIED. (ozawa and Varun Saxena)
 
+    YARN-2859. ApplicationHistoryServer binds to default port 8188 in MiniYARNCluster.
+    (Vinod Kumar Vavilapalli via xgong)
+
 Release 2.6.1 - 2015-09-23
 
   INCOMPATIBLE CHANGES

+ 9 - 1
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryServer.java

@@ -141,10 +141,14 @@ public class ApplicationHistoryServer extends CompositeService {
     return this.ahsClientService;
   }
 
+  private InetSocketAddress getListenerAddress() {
+    return this.webApp.httpServer().getConnectorAddress(0);
+  }
+
   @Private
   @VisibleForTesting
   public int getPort() {
-    return this.webApp.httpServer().getConnectorAddress(0).getPort();
+    return this.getListenerAddress().getPort();
   }
 
   /**
@@ -331,6 +335,10 @@ public class ApplicationHistoryServer extends CompositeService {
          httpServer.addContext(uiWebAppContext, true);
        }
        httpServer.start();
+       conf.updateConnectAddr(YarnConfiguration.TIMELINE_SERVICE_BIND_HOST,
+         YarnConfiguration.TIMELINE_SERVICE_WEBAPP_ADDRESS,
+         YarnConfiguration.DEFAULT_TIMELINE_SERVICE_WEBAPP_ADDRESS,
+         this.getListenerAddress());
        LOG.info("Instantiating AHSWebApp at " + getPort());
     } catch (Exception e) {
       String msg = "AHSWebApp failed to start.";