You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mapreduce-issues@hadoop.apache.org by "zhihai xu (JIRA)" <ji...@apache.org> on 2014/12/18 02:30:13 UTC

[jira] [Created] (MAPREDUCE-6198) NPE from JobTracker#resolveAndAddToTopology in MR1 cause initJob and heartbeat failure.

zhihai xu created MAPREDUCE-6198:
------------------------------------

             Summary: NPE from JobTracker#resolveAndAddToTopology in MR1 cause initJob and heartbeat failure.
                 Key: MAPREDUCE-6198
                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-6198
             Project: Hadoop Map/Reduce
          Issue Type: Bug
          Components: mrv1
            Reporter: zhihai xu
            Assignee: zhihai xu


NPE from JobTracker#resolveAndAddToTopology in MR1 cause initJob and heartbeat failure. The NPE is caused by dnsToSwitchMapping.resolve return null at the following:
{code}
    List <String> rNameList = dnsToSwitchMapping.resolve(tmpList);
    String rName = rNameList.get(0);
{code}
I check the code in MR2, MR2 handle it correctly in coreResolve  of RackResolver.java
{code}
    List <String> rNameList = dnsToSwitchMapping.resolve(tmpList);
    String rName = null;
    if (rNameList == null || rNameList.get(0) == null) {
      rName = NetworkTopology.DEFAULT_RACK;
      LOG.info("Couldn't resolve " + hostName + ". Falling back to "
          + NetworkTopology.DEFAULT_RACK);
    } else {
      rName = rNameList.get(0);
      LOG.info("Resolved " + hostName + " to " + rName);
    }
{code}

We should do the same in MR1, if dnsToSwitchMapping.resolve return null, use NetworkTopology.DEFAULT_RACK.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)