Repository: tez
Updated Branches:
  refs/heads/branch-0.8 b5650a492 -> e95c68204


TEZ-3536. NPE in WebUIService start when host resolution fails. (hitesh)

(cherry picked from commit b71ea4aabfc9007c2e485bc4cb30286c9ae34061)

Conflicts:
        CHANGES.txt


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

Branch: refs/heads/branch-0.8
Commit: e95c68204aa73d47c2cd58ab39b5aaadcad4f1e9
Parents: b5650a4
Author: Hitesh Shah <[email protected]>
Authored: Mon Nov 14 13:13:51 2016 -0800
Committer: Hitesh Shah <[email protected]>
Committed: Mon Nov 14 13:24:47 2016 -0800

----------------------------------------------------------------------
 CHANGES.txt                                           |  1 +
 .../java/org/apache/tez/dag/app/web/WebUIService.java | 14 ++++++++++++--
 2 files changed, 13 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tez/blob/e95c6820/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 7023d0d..5f7bcf2 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -7,6 +7,7 @@ INCOMPATIBLE CHANGES
 
 ALL CHANGES:
 
+  TEZ-3536. NPE in WebUIService start when host resolution fails.
   TEZ-3534. Differentiate thread names on Fetchers, minor changes to shuffle 
shutdown code.
   TEZ-3491. Tez job can hang due to container priority inversion.
   TEZ-3533. ShuffleScheduler should shutdown threadpool on exit.

http://git-wip-us.apache.org/repos/asf/tez/blob/e95c6820/tez-dag/src/main/java/org/apache/tez/dag/app/web/WebUIService.java
----------------------------------------------------------------------
diff --git a/tez-dag/src/main/java/org/apache/tez/dag/app/web/WebUIService.java 
b/tez-dag/src/main/java/org/apache/tez/dag/app/web/WebUIService.java
index a894d25..1ac178b 100644
--- a/tez-dag/src/main/java/org/apache/tez/dag/app/web/WebUIService.java
+++ b/tez-dag/src/main/java/org/apache/tez/dag/app/web/WebUIService.java
@@ -94,8 +94,18 @@ public class WebUIService extends AbstractService {
             .start(this.tezAMWebApp);
         InetSocketAddress address = webApp.getListenerAddress();
         if (address != null) {
-          InetSocketAddress bindAddress = 
NetUtils.createSocketAddrForHost(context.getAppMaster().getAppNMHost(), 
address.getPort());
-          trackingUrl = "http://"; + 
bindAddress.getAddress().getCanonicalHostName() + ":" + bindAddress.getPort() + 
"/ui/";
+          InetSocketAddress bindAddress = NetUtils.createSocketAddrForHost(
+              context.getAppMaster().getAppNMHost(), address.getPort());
+          String hostname = context.getAppMaster().getAppNMHost();
+          final int port = address.getPort();
+          if (bindAddress.getAddress() != null
+              && bindAddress.getAddress().getCanonicalHostName() != null) {
+            hostname = bindAddress.getAddress().getCanonicalHostName();
+          } else {
+            LOG.warn("Failed to resolve canonical hostname for "
+                + context.getAppMaster().getAppNMHost());
+          }
+          trackingUrl = "http://"; + hostname + ":" + port + "/ui/";
           LOG.info("Instantiated WebUIService at " + trackingUrl);
         }
       } catch (Exception e) {

Reply via email to