Revert "YARN-1462. Made RM write application tags to timeline server and exposed them to users via generic history web UI and REST API. Contributed by Xuan Gong."
This reverts commit 4a9ec1a8243e2394ff7221b1c20dfaa80e9f5111.
This commit is contained in:
parent
4eec2fd132
commit
bc85959edd
@ -90,7 +90,7 @@ private ApplicationReport getUnknownApplicationReport() {
|
||||
return ApplicationReport.newInstance(unknownAppId, unknownAttemptId,
|
||||
"N/A", "N/A", "N/A", "N/A", 0, null, YarnApplicationState.NEW, "N/A",
|
||||
"N/A", 0, 0, FinalApplicationStatus.UNDEFINED, null, "N/A", 0.0f,
|
||||
YarnConfiguration.DEFAULT_APPLICATION_TYPE, null, null);
|
||||
YarnConfiguration.DEFAULT_APPLICATION_TYPE, null);
|
||||
}
|
||||
|
||||
NotRunningJob(ApplicationReport applicationReport, JobState jobState) {
|
||||
|
@ -516,7 +516,7 @@ private ApplicationReport getFinishedApplicationReport() {
|
||||
return ApplicationReport.newInstance(appId, attemptId, "user", "queue",
|
||||
"appname", "host", 124, null, YarnApplicationState.FINISHED,
|
||||
"diagnostics", "url", 0, 0, FinalApplicationStatus.SUCCEEDED, null,
|
||||
"N/A", 0.0f, YarnConfiguration.DEFAULT_APPLICATION_TYPE, null, null);
|
||||
"N/A", 0.0f, YarnConfiguration.DEFAULT_APPLICATION_TYPE, null);
|
||||
}
|
||||
|
||||
private ApplicationReport getRunningApplicationReport(String host, int port) {
|
||||
@ -526,7 +526,7 @@ private ApplicationReport getRunningApplicationReport(String host, int port) {
|
||||
return ApplicationReport.newInstance(appId, attemptId, "user", "queue",
|
||||
"appname", host, port, null, YarnApplicationState.RUNNING, "diagnostics",
|
||||
"url", 0, 0, FinalApplicationStatus.UNDEFINED, null, "N/A", 0.0f,
|
||||
YarnConfiguration.DEFAULT_APPLICATION_TYPE, null, null);
|
||||
YarnConfiguration.DEFAULT_APPLICATION_TYPE, null);
|
||||
}
|
||||
|
||||
private ResourceMgrDelegate getRMDelegate() throws IOException {
|
||||
|
@ -196,7 +196,7 @@ public ClientServiceDelegate answer(InvocationOnMock invocation)
|
||||
ApplicationReport.newInstance(appId, null, "tmp", "tmp", "tmp",
|
||||
"tmp", 0, null, YarnApplicationState.FINISHED, "tmp", "tmp",
|
||||
0l, 0l, FinalApplicationStatus.SUCCEEDED, null, null, 0f,
|
||||
"tmp", null, null));
|
||||
"tmp", null));
|
||||
yarnRunner.killJob(jobId);
|
||||
verify(clientDelegate).killJob(jobId);
|
||||
}
|
||||
|
@ -501,9 +501,6 @@ Release 2.7.1 - UNRELEASED
|
||||
YARN-3723. Need to clearly document primaryFilter and otherInfo value type.
|
||||
(Zhijie Shen via xgong)
|
||||
|
||||
YARN-1462. Made RM write application tags to timeline server and exposed them
|
||||
to users via generic history web UI and REST API. (Xuan Gong via zjshen)
|
||||
|
||||
OPTIMIZATIONS
|
||||
|
||||
BUG FIXES
|
||||
|
@ -59,8 +59,7 @@ public static ApplicationReport newInstance(ApplicationId applicationId,
|
||||
YarnApplicationState state, String diagnostics, String url,
|
||||
long startTime, long finishTime, FinalApplicationStatus finalStatus,
|
||||
ApplicationResourceUsageReport appResources, String origTrackingUrl,
|
||||
float progress, String applicationType, Token amRmToken,
|
||||
Set<String> tags) {
|
||||
float progress, String applicationType, Token amRmToken) {
|
||||
ApplicationReport report = Records.newRecord(ApplicationReport.class);
|
||||
report.setApplicationId(applicationId);
|
||||
report.setCurrentApplicationAttemptId(applicationAttemptId);
|
||||
@ -81,7 +80,6 @@ public static ApplicationReport newInstance(ApplicationId applicationId,
|
||||
report.setProgress(progress);
|
||||
report.setApplicationType(applicationType);
|
||||
report.setAMRMToken(amRmToken);
|
||||
report.setApplicationTags(tags);
|
||||
return report;
|
||||
}
|
||||
|
||||
|
@ -647,7 +647,7 @@ public ApplicationReport createFakeAppReport() {
|
||||
"fakeQueue", "fakeApplicationName", "localhost", 0, null,
|
||||
YarnApplicationState.FINISHED, "fake an application report", "",
|
||||
1000l, 1200l, FinalApplicationStatus.FAILED, null, "", 50f,
|
||||
"fakeApplicationType", null, null);
|
||||
"fakeApplicationType", null);
|
||||
return report;
|
||||
}
|
||||
|
||||
|
@ -334,7 +334,7 @@ private void createAppReports() {
|
||||
"queue", "appname", "host", 124, null,
|
||||
YarnApplicationState.RUNNING, "diagnostics", "url", 0, 0,
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN",
|
||||
null, null);
|
||||
null);
|
||||
List<ApplicationReport> applicationReports =
|
||||
new ArrayList<ApplicationReport>();
|
||||
applicationReports.add(newApplicationReport);
|
||||
@ -391,7 +391,7 @@ private void createAppReports() {
|
||||
"queue2", "appname2", "host2", 125, null,
|
||||
YarnApplicationState.FINISHED, "diagnostics2", "url2", 2, 2,
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.63789f,
|
||||
"NON-YARN", null, null);
|
||||
"NON-YARN", null);
|
||||
applicationReports.add(newApplicationReport2);
|
||||
|
||||
ApplicationId applicationId3 = ApplicationId.newInstance(1234, 7);
|
||||
@ -401,7 +401,7 @@ private void createAppReports() {
|
||||
"queue3", "appname3", "host3", 126, null,
|
||||
YarnApplicationState.RUNNING, "diagnostics3", "url3", 3, 3,
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.73789f,
|
||||
"MAPREDUCE", null, null);
|
||||
"MAPREDUCE", null);
|
||||
applicationReports.add(newApplicationReport3);
|
||||
|
||||
ApplicationId applicationId4 = ApplicationId.newInstance(1234, 8);
|
||||
@ -411,7 +411,7 @@ private void createAppReports() {
|
||||
"queue4", "appname4", "host4", 127, null,
|
||||
YarnApplicationState.FAILED, "diagnostics4", "url4", 4, 4,
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.83789f,
|
||||
"NON-MAPREDUCE", null, null);
|
||||
"NON-MAPREDUCE", null);
|
||||
applicationReports.add(newApplicationReport4);
|
||||
reports = applicationReports;
|
||||
}
|
||||
|
@ -613,8 +613,7 @@ private List<ApplicationReport> createAppReports() {
|
||||
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
||||
"user", "queue", "appname", "host", 124, null,
|
||||
YarnApplicationState.RUNNING, "diagnostics", "url", 0, 0,
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null,
|
||||
null);
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null);
|
||||
List<ApplicationReport> applicationReports = new ArrayList<ApplicationReport>();
|
||||
applicationReports.add(newApplicationReport);
|
||||
List<ApplicationAttemptReport> appAttempts = new ArrayList<ApplicationAttemptReport>();
|
||||
@ -690,7 +689,7 @@ private List<ApplicationReport> createAppReports() {
|
||||
"user2", "queue2", "appname2", "host2", 125, null,
|
||||
YarnApplicationState.FINISHED, "diagnostics2", "url2", 2, 2,
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.63789f, "NON-YARN",
|
||||
null, null);
|
||||
null);
|
||||
applicationReports.add(newApplicationReport2);
|
||||
|
||||
ApplicationId applicationId3 = ApplicationId.newInstance(1234, 7);
|
||||
@ -699,7 +698,7 @@ private List<ApplicationReport> createAppReports() {
|
||||
"user3", "queue3", "appname3", "host3", 126, null,
|
||||
YarnApplicationState.RUNNING, "diagnostics3", "url3", 3, 3,
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.73789f, "MAPREDUCE",
|
||||
null, null);
|
||||
null);
|
||||
applicationReports.add(newApplicationReport3);
|
||||
|
||||
ApplicationId applicationId4 = ApplicationId.newInstance(1234, 8);
|
||||
@ -710,7 +709,7 @@ private List<ApplicationReport> createAppReports() {
|
||||
"user4", "queue4", "appname4", "host4", 127, null,
|
||||
YarnApplicationState.FAILED, "diagnostics4", "url4", 4, 4,
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.83789f,
|
||||
"NON-MAPREDUCE", null, null);
|
||||
"NON-MAPREDUCE", null);
|
||||
applicationReports.add(newApplicationReport4);
|
||||
return applicationReports;
|
||||
}
|
||||
|
@ -104,7 +104,7 @@ public void testGetApplicationReport() throws Exception {
|
||||
"user", "queue", "appname", "host", 124, null,
|
||||
YarnApplicationState.FINISHED, "diagnostics", "url", 0, 0,
|
||||
FinalApplicationStatus.SUCCEEDED, usageReport, "N/A", 0.53789f, "YARN",
|
||||
null, null);
|
||||
null);
|
||||
newApplicationReport.setLogAggregationStatus(LogAggregationStatus.SUCCEEDED);
|
||||
when(client.getApplicationReport(any(ApplicationId.class))).thenReturn(
|
||||
newApplicationReport);
|
||||
@ -350,8 +350,7 @@ public void testGetApplications() throws Exception {
|
||||
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
||||
"user", "queue", "appname", "host", 124, null,
|
||||
YarnApplicationState.RUNNING, "diagnostics", "url", 0, 0,
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null,
|
||||
null);
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null);
|
||||
List<ApplicationReport> applicationReports = new ArrayList<ApplicationReport>();
|
||||
applicationReports.add(newApplicationReport);
|
||||
|
||||
@ -361,7 +360,7 @@ public void testGetApplications() throws Exception {
|
||||
"user2", "queue2", "appname2", "host2", 125, null,
|
||||
YarnApplicationState.FINISHED, "diagnostics2", "url2", 2, 2,
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.63789f, "NON-YARN",
|
||||
null, null);
|
||||
null);
|
||||
applicationReports.add(newApplicationReport2);
|
||||
|
||||
ApplicationId applicationId3 = ApplicationId.newInstance(1234, 7);
|
||||
@ -370,7 +369,7 @@ public void testGetApplications() throws Exception {
|
||||
"user3", "queue3", "appname3", "host3", 126, null,
|
||||
YarnApplicationState.RUNNING, "diagnostics3", "url3", 3, 3,
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.73789f, "MAPREDUCE",
|
||||
null, null);
|
||||
null);
|
||||
applicationReports.add(newApplicationReport3);
|
||||
|
||||
ApplicationId applicationId4 = ApplicationId.newInstance(1234, 8);
|
||||
@ -379,7 +378,7 @@ public void testGetApplications() throws Exception {
|
||||
"user4", "queue4", "appname4", "host4", 127, null,
|
||||
YarnApplicationState.FAILED, "diagnostics4", "url4", 4, 4,
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.83789f, "NON-MAPREDUCE",
|
||||
null, null);
|
||||
null);
|
||||
applicationReports.add(newApplicationReport4);
|
||||
|
||||
ApplicationId applicationId5 = ApplicationId.newInstance(1234, 9);
|
||||
@ -388,7 +387,7 @@ public void testGetApplications() throws Exception {
|
||||
"user5", "queue5", "appname5", "host5", 128, null,
|
||||
YarnApplicationState.ACCEPTED, "diagnostics5", "url5", 5, 5,
|
||||
FinalApplicationStatus.KILLED, null, "N/A", 0.93789f, "HIVE",
|
||||
null, null);
|
||||
null);
|
||||
applicationReports.add(newApplicationReport5);
|
||||
|
||||
ApplicationId applicationId6 = ApplicationId.newInstance(1234, 10);
|
||||
@ -397,7 +396,7 @@ public void testGetApplications() throws Exception {
|
||||
"user6", "queue6", "appname6", "host6", 129, null,
|
||||
YarnApplicationState.SUBMITTED, "diagnostics6", "url6", 6, 6,
|
||||
FinalApplicationStatus.KILLED, null, "N/A", 0.99789f, "PIG",
|
||||
null, null);
|
||||
null);
|
||||
applicationReports.add(newApplicationReport6);
|
||||
|
||||
// Test command yarn application -list
|
||||
@ -821,8 +820,7 @@ public void testKillApplication() throws Exception {
|
||||
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
||||
"user", "queue", "appname", "host", 124, null,
|
||||
YarnApplicationState.FINISHED, "diagnostics", "url", 0, 0,
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null,
|
||||
null);
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null);
|
||||
when(client.getApplicationReport(any(ApplicationId.class))).thenReturn(
|
||||
newApplicationReport2);
|
||||
int result = cli.run(new String[] { "application","-kill", applicationId.toString() });
|
||||
@ -835,8 +833,7 @@ public void testKillApplication() throws Exception {
|
||||
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
||||
"user", "queue", "appname", "host", 124, null,
|
||||
YarnApplicationState.RUNNING, "diagnostics", "url", 0, 0,
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null,
|
||||
null);
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null);
|
||||
when(client.getApplicationReport(any(ApplicationId.class))).thenReturn(
|
||||
newApplicationReport);
|
||||
result = cli.run(new String[] { "application","-kill", applicationId.toString() });
|
||||
@ -871,8 +868,7 @@ public void testMoveApplicationAcrossQueues() throws Exception {
|
||||
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
||||
"user", "queue", "appname", "host", 124, null,
|
||||
YarnApplicationState.FINISHED, "diagnostics", "url", 0, 0,
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null,
|
||||
null);
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null);
|
||||
when(client.getApplicationReport(any(ApplicationId.class))).thenReturn(
|
||||
newApplicationReport2);
|
||||
int result = cli.run(new String[] { "application", "-movetoqueue",
|
||||
@ -887,8 +883,7 @@ public void testMoveApplicationAcrossQueues() throws Exception {
|
||||
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
||||
"user", "queue", "appname", "host", 124, null,
|
||||
YarnApplicationState.RUNNING, "diagnostics", "url", 0, 0,
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null,
|
||||
null);
|
||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null);
|
||||
when(client.getApplicationReport(any(ApplicationId.class))).thenReturn(
|
||||
newApplicationReport);
|
||||
result = cli.run(new String[] { "application", "-movetoqueue",
|
||||
|
@ -58,8 +58,7 @@ protected static ApplicationReport createApplicationReport(
|
||||
ApplicationReport.newInstance(appId, appAttemptId, "user", "queue",
|
||||
"appname", "host", 124, null, YarnApplicationState.FINISHED,
|
||||
"diagnostics", "url", 0, 0, FinalApplicationStatus.SUCCEEDED, null,
|
||||
"N/A", 0.53789f, YarnConfiguration.DEFAULT_APPLICATION_TYPE, null,
|
||||
null);
|
||||
"N/A", 0.53789f, YarnConfiguration.DEFAULT_APPLICATION_TYPE, null);
|
||||
return appReport;
|
||||
}
|
||||
|
||||
|
@ -139,7 +139,7 @@ private ApplicationReport convertToApplicationReport(
|
||||
appHistory.getYarnApplicationState(), appHistory.getDiagnosticsInfo(),
|
||||
trackingUrl, appHistory.getStartTime(), appHistory.getFinishTime(),
|
||||
appHistory.getFinalApplicationStatus(), null, "", 100,
|
||||
appHistory.getApplicationType(), null, null);
|
||||
appHistory.getApplicationType(), null);
|
||||
}
|
||||
|
||||
private ApplicationAttemptHistoryData getLastAttempt(ApplicationId appId)
|
||||
|
@ -19,14 +19,11 @@
|
||||
package org.apache.hadoop.yarn.server.applicationhistoryservice;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Collection;
|
||||
import java.util.EnumSet;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
@ -252,7 +249,6 @@ private static ApplicationReportExt convertToApplicationReport(
|
||||
FinalApplicationStatus finalStatus = FinalApplicationStatus.UNDEFINED;
|
||||
YarnApplicationState state = YarnApplicationState.ACCEPTED;
|
||||
ApplicationResourceUsageReport appResources = null;
|
||||
Set<String> appTags = null;
|
||||
Map<ApplicationAccessType, String> appViewACLs =
|
||||
new HashMap<ApplicationAccessType, String>();
|
||||
Map<String, Object> entityInfo = entity.getOtherInfo();
|
||||
@ -274,7 +270,7 @@ private static ApplicationReportExt convertToApplicationReport(
|
||||
ConverterUtils.toApplicationId(entity.getEntityId()),
|
||||
latestApplicationAttemptId, user, queue, name, null, -1, null, state,
|
||||
diagnosticsInfo, null, createdTime, finishedTime, finalStatus, null,
|
||||
null, progress, type, null, appTags), appViewACLs);
|
||||
null, progress, type, null), appViewACLs);
|
||||
}
|
||||
if (entityInfo.containsKey(ApplicationMetricsConstants.QUEUE_ENTITY_INFO)) {
|
||||
queue =
|
||||
@ -299,17 +295,6 @@ private static ApplicationReportExt convertToApplicationReport(
|
||||
appResources=ApplicationResourceUsageReport
|
||||
.newInstance(0, 0, null, null, null, memorySeconds, vcoreSeconds);
|
||||
}
|
||||
if (entityInfo.containsKey(ApplicationMetricsConstants.APP_TAGS_INFO)) {
|
||||
appTags = new HashSet<String>();
|
||||
Object obj = entityInfo.get(ApplicationMetricsConstants.APP_TAGS_INFO);
|
||||
if (obj != null && obj instanceof Collection<?>) {
|
||||
for(Object o : (Collection<?>)obj) {
|
||||
if (o != null) {
|
||||
appTags.add(o.toString());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
List<TimelineEvent> events = entity.getEvents();
|
||||
if (events != null) {
|
||||
@ -362,7 +347,7 @@ private static ApplicationReportExt convertToApplicationReport(
|
||||
ConverterUtils.toApplicationId(entity.getEntityId()),
|
||||
latestApplicationAttemptId, user, queue, name, null, -1, null, state,
|
||||
diagnosticsInfo, null, createdTime, finishedTime, finalStatus, appResources,
|
||||
null, progress, type, null, appTags), appViewACLs);
|
||||
null, progress, type, null), appViewACLs);
|
||||
}
|
||||
|
||||
private static ApplicationAttemptReport convertToApplicationAttemptReport(
|
||||
|
@ -22,9 +22,7 @@
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import org.apache.hadoop.conf.Configuration;
|
||||
import org.apache.hadoop.security.SaslRpcServer.AuthMethod;
|
||||
@ -187,9 +185,6 @@ public ApplicationReport run() throws Exception {
|
||||
Assert.assertEquals(Integer.MAX_VALUE + 3L
|
||||
+ +app.getApplicationId().getId(), app.getFinishTime());
|
||||
Assert.assertTrue(Math.abs(app.getProgress() - 1.0F) < 0.0001);
|
||||
Assert.assertEquals(2, app.getApplicationTags().size());
|
||||
Assert.assertTrue(app.getApplicationTags().contains("Test_APP_TAGS_1"));
|
||||
Assert.assertTrue(app.getApplicationTags().contains("Test_APP_TAGS_2"));
|
||||
// App 2 doesn't have the ACLs, such that the default ACLs " " will be used.
|
||||
// Nobody except admin and owner has access to the details of the app.
|
||||
if ((i == 1 && callerUGI != null &&
|
||||
@ -476,10 +471,6 @@ private static TimelineEntity createApplicationTimelineEntity(
|
||||
entityInfo.put(ApplicationMetricsConstants.APP_VIEW_ACLS_ENTITY_INFO,
|
||||
"user2");
|
||||
}
|
||||
Set<String> appTags = new HashSet<String>();
|
||||
appTags.add("Test_APP_TAGS_1");
|
||||
appTags.add("Test_APP_TAGS_2");
|
||||
entityInfo.put(ApplicationMetricsConstants.APP_TAGS_INFO, appTags);
|
||||
entity.setOtherInfo(entityInfo);
|
||||
TimelineEvent tEvent = new TimelineEvent();
|
||||
tEvent.setEventType(ApplicationMetricsConstants.CREATED_EVENT_TYPE);
|
||||
|
@ -73,5 +73,4 @@ public class ApplicationMetricsConstants {
|
||||
public static final String LATEST_APP_ATTEMPT_EVENT_INFO =
|
||||
"YARN_APPLICATION_LATEST_APP_ATTEMPT";
|
||||
|
||||
public static final String APP_TAGS_INFO = "YARN_APPLICATION_TAGS";
|
||||
}
|
||||
|
@ -18,8 +18,6 @@
|
||||
|
||||
package org.apache.hadoop.yarn.server.resourcemanager.metrics;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
import org.apache.hadoop.yarn.api.records.ApplicationId;
|
||||
|
||||
public class ApplicationCreatedEvent extends
|
||||
@ -31,7 +29,6 @@ public class ApplicationCreatedEvent extends
|
||||
private String user;
|
||||
private String queue;
|
||||
private long submittedTime;
|
||||
private Set<String> appTags;
|
||||
|
||||
public ApplicationCreatedEvent(ApplicationId appId,
|
||||
String name,
|
||||
@ -39,8 +36,7 @@ public ApplicationCreatedEvent(ApplicationId appId,
|
||||
String user,
|
||||
String queue,
|
||||
long submittedTime,
|
||||
long createdTime,
|
||||
Set<String> appTags) {
|
||||
long createdTime) {
|
||||
super(SystemMetricsEventType.APP_CREATED, createdTime);
|
||||
this.appId = appId;
|
||||
this.name = name;
|
||||
@ -48,7 +44,6 @@ public ApplicationCreatedEvent(ApplicationId appId,
|
||||
this.user = user;
|
||||
this.queue = queue;
|
||||
this.submittedTime = submittedTime;
|
||||
this.appTags = appTags;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -80,7 +75,4 @@ public long getSubmittedTime() {
|
||||
return submittedTime;
|
||||
}
|
||||
|
||||
public Set<String> getAppTags() {
|
||||
return appTags;
|
||||
}
|
||||
}
|
||||
|
@ -106,7 +106,7 @@ public void appCreated(RMApp app, long createdTime) {
|
||||
app.getUser(),
|
||||
app.getQueue(),
|
||||
app.getSubmitTime(),
|
||||
createdTime, app.getApplicationTags()));
|
||||
createdTime));
|
||||
}
|
||||
}
|
||||
|
||||
@ -251,8 +251,6 @@ private void publishApplicationCreatedEvent(ApplicationCreatedEvent event) {
|
||||
event.getQueue());
|
||||
entityInfo.put(ApplicationMetricsConstants.SUBMITTED_TIME_ENTITY_INFO,
|
||||
event.getSubmittedTime());
|
||||
entityInfo.put(ApplicationMetricsConstants.APP_TAGS_INFO,
|
||||
event.getAppTags());
|
||||
entity.setOtherInfo(entityInfo);
|
||||
TimelineEvent tEvent = new TimelineEvent();
|
||||
tEvent.setEventType(
|
||||
|
@ -301,7 +301,7 @@ public ApplicationReport createAndGetApplicationReport(
|
||||
getName(), null, 0, null, null, getDiagnostics().toString(),
|
||||
getTrackingUrl(), getStartTime(), getFinishTime(),
|
||||
getFinalApplicationStatus(), usageReport , null, getProgress(),
|
||||
type, null, null);
|
||||
type, null);
|
||||
return report;
|
||||
}
|
||||
|
||||
|
@ -21,11 +21,7 @@
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.EnumSet;
|
||||
import java.util.HashSet;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import org.apache.hadoop.yarn.api.records.ApplicationAttemptId;
|
||||
import org.apache.hadoop.yarn.api.records.ApplicationId;
|
||||
@ -147,8 +143,6 @@ public void testPublishApplicationMetrics() throws Exception {
|
||||
Assert.assertEquals(app.getSubmitTime(),
|
||||
entity.getOtherInfo().get(
|
||||
ApplicationMetricsConstants.SUBMITTED_TIME_ENTITY_INFO));
|
||||
Assert.assertTrue(verifyAppTags(app.getApplicationTags(),
|
||||
entity.getOtherInfo()));
|
||||
if (i == 1) {
|
||||
Assert.assertEquals("uers1,user2",
|
||||
entity.getOtherInfo().get(
|
||||
@ -358,10 +352,6 @@ private static RMApp createRMApp(ApplicationId appId) {
|
||||
FinalApplicationStatus.UNDEFINED);
|
||||
when(app.getRMAppMetrics()).thenReturn(
|
||||
new RMAppMetrics(null, 0, 0, Integer.MAX_VALUE, Long.MAX_VALUE));
|
||||
Set<String> appTags = new HashSet<String>();
|
||||
appTags.add("test");
|
||||
appTags.add("tags");
|
||||
when(app.getApplicationTags()).thenReturn(appTags);
|
||||
return app;
|
||||
}
|
||||
|
||||
@ -402,31 +392,4 @@ private static RMContainer createRMContainer(ContainerId containerId) {
|
||||
return container;
|
||||
}
|
||||
|
||||
private static boolean verifyAppTags(Set<String> appTags,
|
||||
Map<String, Object> entityInfo) {
|
||||
if (!entityInfo.containsKey(ApplicationMetricsConstants.APP_TAGS_INFO)) {
|
||||
return false;
|
||||
}
|
||||
Object obj = entityInfo.get(ApplicationMetricsConstants.APP_TAGS_INFO);
|
||||
if (obj instanceof Collection<?>) {
|
||||
Collection<?> collection = (Collection<?>) obj;
|
||||
if (collection.size() != appTags.size()) {
|
||||
return false;
|
||||
}
|
||||
for (String appTag : appTags) {
|
||||
boolean match = false;
|
||||
for (Object o : collection) {
|
||||
if (o.toString().equals(appTag)) {
|
||||
match = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!match) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -253,7 +253,7 @@ public static ClientRMService mockClientRMService(RMContext rmContext) {
|
||||
app.getStartTime(), app.getFinishTime(),
|
||||
app.getFinalApplicationStatus(),
|
||||
(ApplicationResourceUsageReport) null, app.getTrackingUrl(),
|
||||
app.getProgress(), app.getApplicationType(), (Token) null, null);
|
||||
app.getProgress(), app.getApplicationType(), (Token) null);
|
||||
appReports.add(appReport);
|
||||
}
|
||||
GetApplicationsResponse response = mock(GetApplicationsResponse.class);
|
||||
|
@ -1125,27 +1125,7 @@ Response Body:
|
||||
"submittedTime":1430424769395,
|
||||
"startedTime":1430424769395,
|
||||
"finishedTime":1430424776594,
|
||||
"elapsedTime":7199},
|
||||
{
|
||||
"appId":"application_1430424020775_0001",
|
||||
"currentAppAttemptId":"appattempt_1430424020775_0001_000001",
|
||||
"user":"zshen",
|
||||
"name":"QuasiMonteCarlo",
|
||||
"queue":"default",
|
||||
"type":"MAPREDUCE",
|
||||
"host":"localhost",
|
||||
"rpcPort":56264,
|
||||
"appState":"FINISHED",
|
||||
"progress":100.0,
|
||||
"diagnosticsInfo":"",
|
||||
"originalTrackingUrl":"http://d-69-91-129-173.dhcp4.washington.edu:19888/jobhistory/job/job_1430424020775_0001",
|
||||
"trackingUrl":"http://d-69-91-129-173.dhcp4.washington.edu:8088/proxy/application_1430424020775_0001/",
|
||||
"finalAppStatus":"SUCCEEDED",
|
||||
"submittedTime":1430424053809,
|
||||
"startedTime":1430424072153,
|
||||
"finishedTime":1430424776594,
|
||||
"elapsedTime":18344,
|
||||
"applicationTags":"mrapplication,ta-example"
|
||||
"elapsedTime":7199
|
||||
}
|
||||
]
|
||||
}
|
||||
@ -1247,7 +1227,6 @@ Response Body:
|
||||
<startedTime>1430424053809</startedTime>
|
||||
<finishedTime>1430424072153</finishedTime>
|
||||
<elapsedTime>18344</elapsedTime>
|
||||
<applicationTags>mrapplication,ta-example</applicationTags>
|
||||
</app>
|
||||
</apps>
|
||||
|
||||
@ -1296,8 +1275,7 @@ None
|
||||
| `allocatedVCores` | int | The sum of virtual cores allocated to the application's running containers |
|
||||
| `currentAppAttemptId` | string | The latest application attempt ID |
|
||||
| `host` | string | The host of the ApplicationMaster |
|
||||
| `rpcPort` | int | The RPC port of the ApplicationMaster; zero if no IPC service declared |
|
||||
| `applicationTags` | string | The application tags. |
|
||||
| `rpcPort` | int | The RPC port of the ApplicationMaster; zero if no IPC service declared. |
|
||||
|
||||
### Response Examples:
|
||||
|
||||
@ -1333,8 +1311,7 @@ Response Body:
|
||||
"submittedTime": 1430424053809,
|
||||
"startedTime": 1430424053809,
|
||||
"finishedTime": 1430424072153,
|
||||
"elapsedTime": 18344,
|
||||
"applicationTags": mrapplication,tag-example
|
||||
"elapsedTime": 18344
|
||||
}
|
||||
|
||||
#### XML response
|
||||
@ -1372,7 +1349,6 @@ Response Body:
|
||||
<startedTime>1430424053809</startedTime>
|
||||
<finishedTime>1430424072153</finishedTime>
|
||||
<elapsedTime>18344</elapsedTime>
|
||||
<applicationTags>mrapplication,ta-example</applicationTags>
|
||||
</app>
|
||||
|
||||
## <a name="REST_API_APPLICATION_ATTEMPT_LIST"></a>Application Attempt List
|
||||
|
Loading…
x
Reference in New Issue
Block a user