MAPREDUCE-3290. Fixed a NPE in ClientRMService.
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1190162 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
34e6de8f85
commit
69dd284452
@ -1833,6 +1833,8 @@ Release 0.23.0 - Unreleased
|
|||||||
MAPREDUCE-3258. Fixed AM & JobHistory web-ui to display counters properly.
|
MAPREDUCE-3258. Fixed AM & JobHistory web-ui to display counters properly.
|
||||||
(Siddharth Seth via acmurthy)
|
(Siddharth Seth via acmurthy)
|
||||||
|
|
||||||
|
MAPREDUCE-3290. Fixed a NPE in ClientRMService. (acmurthy)
|
||||||
|
|
||||||
Release 0.22.0 - Unreleased
|
Release 0.22.0 - Unreleased
|
||||||
|
|
||||||
INCOMPATIBLE CHANGES
|
INCOMPATIBLE CHANGES
|
||||||
|
@ -59,6 +59,7 @@
|
|||||||
import org.apache.hadoop.yarn.api.records.ApplicationSubmissionContext;
|
import org.apache.hadoop.yarn.api.records.ApplicationSubmissionContext;
|
||||||
import org.apache.hadoop.yarn.api.records.NodeReport;
|
import org.apache.hadoop.yarn.api.records.NodeReport;
|
||||||
import org.apache.hadoop.yarn.api.records.QueueInfo;
|
import org.apache.hadoop.yarn.api.records.QueueInfo;
|
||||||
|
import org.apache.hadoop.yarn.api.records.Resource;
|
||||||
import org.apache.hadoop.yarn.api.records.YarnClusterMetrics;
|
import org.apache.hadoop.yarn.api.records.YarnClusterMetrics;
|
||||||
import org.apache.hadoop.yarn.conf.YarnConfiguration;
|
import org.apache.hadoop.yarn.conf.YarnConfiguration;
|
||||||
import org.apache.hadoop.yarn.exceptions.YarnRemoteException;
|
import org.apache.hadoop.yarn.exceptions.YarnRemoteException;
|
||||||
@ -67,10 +68,12 @@
|
|||||||
import org.apache.hadoop.yarn.ipc.RPCUtil;
|
import org.apache.hadoop.yarn.ipc.RPCUtil;
|
||||||
import org.apache.hadoop.yarn.ipc.YarnRPC;
|
import org.apache.hadoop.yarn.ipc.YarnRPC;
|
||||||
import org.apache.hadoop.yarn.server.resourcemanager.RMAuditLogger.AuditConstants;
|
import org.apache.hadoop.yarn.server.resourcemanager.RMAuditLogger.AuditConstants;
|
||||||
|
import org.apache.hadoop.yarn.server.resourcemanager.resource.Resources;
|
||||||
import org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMApp;
|
import org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMApp;
|
||||||
import org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMAppEvent;
|
import org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMAppEvent;
|
||||||
import org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMAppEventType;
|
import org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMAppEventType;
|
||||||
import org.apache.hadoop.yarn.server.resourcemanager.rmnode.RMNode;
|
import org.apache.hadoop.yarn.server.resourcemanager.rmnode.RMNode;
|
||||||
|
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNodeReport;
|
||||||
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.YarnScheduler;
|
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.YarnScheduler;
|
||||||
import org.apache.hadoop.yarn.server.resourcemanager.security.authorize.RMPolicyProvider;
|
import org.apache.hadoop.yarn.server.resourcemanager.security.authorize.RMPolicyProvider;
|
||||||
import org.apache.hadoop.yarn.server.security.ApplicationACLsManager;
|
import org.apache.hadoop.yarn.server.security.ApplicationACLsManager;
|
||||||
@ -396,10 +399,18 @@ private NodeReport createNodeReports(RMNode rmNode) {
|
|||||||
report.setRackName(rmNode.getRackName());
|
report.setRackName(rmNode.getRackName());
|
||||||
report.setCapability(rmNode.getTotalCapability());
|
report.setCapability(rmNode.getTotalCapability());
|
||||||
report.setNodeHealthStatus(rmNode.getNodeHealthStatus());
|
report.setNodeHealthStatus(rmNode.getNodeHealthStatus());
|
||||||
org.apache.hadoop.yarn.server.resourcemanager.scheduler.SchedulerNodeReport schedulerNodeReport = scheduler
|
|
||||||
.getNodeReport(rmNode.getNodeID());
|
SchedulerNodeReport schedulerNodeReport =
|
||||||
report.setUsed(schedulerNodeReport.getUsedResource());
|
scheduler.getNodeReport(rmNode.getNodeID());
|
||||||
report.setNumContainers(schedulerNodeReport.getNumContainers());
|
Resource used = Resources.none();
|
||||||
|
int numContainers = 0;
|
||||||
|
if (schedulerNodeReport != null) {
|
||||||
|
used = schedulerNodeReport.getUsedResource();
|
||||||
|
numContainers = schedulerNodeReport.getNumContainers();
|
||||||
|
}
|
||||||
|
report.setUsed(used);
|
||||||
|
report.setNumContainers(numContainers);
|
||||||
|
|
||||||
return report;
|
return report;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user