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 2032e8d1a0
.
This commit is contained in:
parent
3f926f4b20
commit
1ad0d43fb4
|
@ -90,7 +90,7 @@ public class NotRunningJob implements MRClientProtocol {
|
||||||
return ApplicationReport.newInstance(unknownAppId, unknownAttemptId,
|
return ApplicationReport.newInstance(unknownAppId, unknownAttemptId,
|
||||||
"N/A", "N/A", "N/A", "N/A", 0, null, YarnApplicationState.NEW, "N/A",
|
"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,
|
"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) {
|
NotRunningJob(ApplicationReport applicationReport, JobState jobState) {
|
||||||
|
|
|
@ -516,7 +516,7 @@ public class TestClientServiceDelegate {
|
||||||
return ApplicationReport.newInstance(appId, attemptId, "user", "queue",
|
return ApplicationReport.newInstance(appId, attemptId, "user", "queue",
|
||||||
"appname", "host", 124, null, YarnApplicationState.FINISHED,
|
"appname", "host", 124, null, YarnApplicationState.FINISHED,
|
||||||
"diagnostics", "url", 0, 0, FinalApplicationStatus.SUCCEEDED, null,
|
"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) {
|
private ApplicationReport getRunningApplicationReport(String host, int port) {
|
||||||
|
@ -526,7 +526,7 @@ public class TestClientServiceDelegate {
|
||||||
return ApplicationReport.newInstance(appId, attemptId, "user", "queue",
|
return ApplicationReport.newInstance(appId, attemptId, "user", "queue",
|
||||||
"appname", host, port, null, YarnApplicationState.RUNNING, "diagnostics",
|
"appname", host, port, null, YarnApplicationState.RUNNING, "diagnostics",
|
||||||
"url", 0, 0, FinalApplicationStatus.UNDEFINED, null, "N/A", 0.0f,
|
"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 {
|
private ResourceMgrDelegate getRMDelegate() throws IOException {
|
||||||
|
|
|
@ -196,7 +196,7 @@ public class TestYARNRunner extends TestCase {
|
||||||
ApplicationReport.newInstance(appId, null, "tmp", "tmp", "tmp",
|
ApplicationReport.newInstance(appId, null, "tmp", "tmp", "tmp",
|
||||||
"tmp", 0, null, YarnApplicationState.FINISHED, "tmp", "tmp",
|
"tmp", 0, null, YarnApplicationState.FINISHED, "tmp", "tmp",
|
||||||
0l, 0l, FinalApplicationStatus.SUCCEEDED, null, null, 0f,
|
0l, 0l, FinalApplicationStatus.SUCCEEDED, null, null, 0f,
|
||||||
"tmp", null, null));
|
"tmp", null));
|
||||||
yarnRunner.killJob(jobId);
|
yarnRunner.killJob(jobId);
|
||||||
verify(clientDelegate).killJob(jobId);
|
verify(clientDelegate).killJob(jobId);
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,9 +20,6 @@ Release 2.7.1 - UNRELEASED
|
||||||
YARN-3489. RMServerUtils.validateResourceRequests should only obtain queue
|
YARN-3489. RMServerUtils.validateResourceRequests should only obtain queue
|
||||||
info once. (Varun Saxena via wangda)
|
info once. (Varun Saxena via wangda)
|
||||||
|
|
||||||
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
|
OPTIMIZATIONS
|
||||||
|
|
||||||
YARN-3006. Improve the error message when attempting manual failover with
|
YARN-3006. Improve the error message when attempting manual failover with
|
||||||
|
|
|
@ -59,8 +59,7 @@ public abstract class ApplicationReport {
|
||||||
YarnApplicationState state, String diagnostics, String url,
|
YarnApplicationState state, String diagnostics, String url,
|
||||||
long startTime, long finishTime, FinalApplicationStatus finalStatus,
|
long startTime, long finishTime, FinalApplicationStatus finalStatus,
|
||||||
ApplicationResourceUsageReport appResources, String origTrackingUrl,
|
ApplicationResourceUsageReport appResources, String origTrackingUrl,
|
||||||
float progress, String applicationType, Token amRmToken,
|
float progress, String applicationType, Token amRmToken) {
|
||||||
Set<String> tags) {
|
|
||||||
ApplicationReport report = Records.newRecord(ApplicationReport.class);
|
ApplicationReport report = Records.newRecord(ApplicationReport.class);
|
||||||
report.setApplicationId(applicationId);
|
report.setApplicationId(applicationId);
|
||||||
report.setCurrentApplicationAttemptId(applicationAttemptId);
|
report.setCurrentApplicationAttemptId(applicationAttemptId);
|
||||||
|
@ -81,7 +80,6 @@ public abstract class ApplicationReport {
|
||||||
report.setProgress(progress);
|
report.setProgress(progress);
|
||||||
report.setApplicationType(applicationType);
|
report.setApplicationType(applicationType);
|
||||||
report.setAMRMToken(amRmToken);
|
report.setAMRMToken(amRmToken);
|
||||||
report.setApplicationTags(tags);
|
|
||||||
return report;
|
return report;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -647,7 +647,7 @@ public abstract class ProtocolHATestBase extends ClientBaseWithFixes {
|
||||||
"fakeQueue", "fakeApplicationName", "localhost", 0, null,
|
"fakeQueue", "fakeApplicationName", "localhost", 0, null,
|
||||||
YarnApplicationState.FINISHED, "fake an application report", "",
|
YarnApplicationState.FINISHED, "fake an application report", "",
|
||||||
1000l, 1200l, FinalApplicationStatus.FAILED, null, "", 50f,
|
1000l, 1200l, FinalApplicationStatus.FAILED, null, "", 50f,
|
||||||
"fakeApplicationType", null, null);
|
"fakeApplicationType", null);
|
||||||
return report;
|
return report;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -334,7 +334,7 @@ public class TestAHSClient {
|
||||||
"queue", "appname", "host", 124, null,
|
"queue", "appname", "host", 124, null,
|
||||||
YarnApplicationState.RUNNING, "diagnostics", "url", 0, 0,
|
YarnApplicationState.RUNNING, "diagnostics", "url", 0, 0,
|
||||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN",
|
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN",
|
||||||
null, null);
|
null);
|
||||||
List<ApplicationReport> applicationReports =
|
List<ApplicationReport> applicationReports =
|
||||||
new ArrayList<ApplicationReport>();
|
new ArrayList<ApplicationReport>();
|
||||||
applicationReports.add(newApplicationReport);
|
applicationReports.add(newApplicationReport);
|
||||||
|
@ -391,7 +391,7 @@ public class TestAHSClient {
|
||||||
"queue2", "appname2", "host2", 125, null,
|
"queue2", "appname2", "host2", 125, null,
|
||||||
YarnApplicationState.FINISHED, "diagnostics2", "url2", 2, 2,
|
YarnApplicationState.FINISHED, "diagnostics2", "url2", 2, 2,
|
||||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.63789f,
|
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.63789f,
|
||||||
"NON-YARN", null, null);
|
"NON-YARN", null);
|
||||||
applicationReports.add(newApplicationReport2);
|
applicationReports.add(newApplicationReport2);
|
||||||
|
|
||||||
ApplicationId applicationId3 = ApplicationId.newInstance(1234, 7);
|
ApplicationId applicationId3 = ApplicationId.newInstance(1234, 7);
|
||||||
|
@ -401,7 +401,7 @@ public class TestAHSClient {
|
||||||
"queue3", "appname3", "host3", 126, null,
|
"queue3", "appname3", "host3", 126, null,
|
||||||
YarnApplicationState.RUNNING, "diagnostics3", "url3", 3, 3,
|
YarnApplicationState.RUNNING, "diagnostics3", "url3", 3, 3,
|
||||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.73789f,
|
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.73789f,
|
||||||
"MAPREDUCE", null, null);
|
"MAPREDUCE", null);
|
||||||
applicationReports.add(newApplicationReport3);
|
applicationReports.add(newApplicationReport3);
|
||||||
|
|
||||||
ApplicationId applicationId4 = ApplicationId.newInstance(1234, 8);
|
ApplicationId applicationId4 = ApplicationId.newInstance(1234, 8);
|
||||||
|
@ -411,7 +411,7 @@ public class TestAHSClient {
|
||||||
"queue4", "appname4", "host4", 127, null,
|
"queue4", "appname4", "host4", 127, null,
|
||||||
YarnApplicationState.FAILED, "diagnostics4", "url4", 4, 4,
|
YarnApplicationState.FAILED, "diagnostics4", "url4", 4, 4,
|
||||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.83789f,
|
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.83789f,
|
||||||
"NON-MAPREDUCE", null, null);
|
"NON-MAPREDUCE", null);
|
||||||
applicationReports.add(newApplicationReport4);
|
applicationReports.add(newApplicationReport4);
|
||||||
reports = applicationReports;
|
reports = applicationReports;
|
||||||
}
|
}
|
||||||
|
|
|
@ -580,8 +580,7 @@ public class TestYarnClient {
|
||||||
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
||||||
"user", "queue", "appname", "host", 124, null,
|
"user", "queue", "appname", "host", 124, null,
|
||||||
YarnApplicationState.RUNNING, "diagnostics", "url", 0, 0,
|
YarnApplicationState.RUNNING, "diagnostics", "url", 0, 0,
|
||||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null,
|
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null);
|
||||||
null);
|
|
||||||
List<ApplicationReport> applicationReports = new ArrayList<ApplicationReport>();
|
List<ApplicationReport> applicationReports = new ArrayList<ApplicationReport>();
|
||||||
applicationReports.add(newApplicationReport);
|
applicationReports.add(newApplicationReport);
|
||||||
List<ApplicationAttemptReport> appAttempts = new ArrayList<ApplicationAttemptReport>();
|
List<ApplicationAttemptReport> appAttempts = new ArrayList<ApplicationAttemptReport>();
|
||||||
|
@ -656,7 +655,7 @@ public class TestYarnClient {
|
||||||
"user2", "queue2", "appname2", "host2", 125, null,
|
"user2", "queue2", "appname2", "host2", 125, null,
|
||||||
YarnApplicationState.FINISHED, "diagnostics2", "url2", 2, 2,
|
YarnApplicationState.FINISHED, "diagnostics2", "url2", 2, 2,
|
||||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.63789f, "NON-YARN",
|
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.63789f, "NON-YARN",
|
||||||
null, null);
|
null);
|
||||||
applicationReports.add(newApplicationReport2);
|
applicationReports.add(newApplicationReport2);
|
||||||
|
|
||||||
ApplicationId applicationId3 = ApplicationId.newInstance(1234, 7);
|
ApplicationId applicationId3 = ApplicationId.newInstance(1234, 7);
|
||||||
|
@ -665,7 +664,7 @@ public class TestYarnClient {
|
||||||
"user3", "queue3", "appname3", "host3", 126, null,
|
"user3", "queue3", "appname3", "host3", 126, null,
|
||||||
YarnApplicationState.RUNNING, "diagnostics3", "url3", 3, 3,
|
YarnApplicationState.RUNNING, "diagnostics3", "url3", 3, 3,
|
||||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.73789f, "MAPREDUCE",
|
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.73789f, "MAPREDUCE",
|
||||||
null, null);
|
null);
|
||||||
applicationReports.add(newApplicationReport3);
|
applicationReports.add(newApplicationReport3);
|
||||||
|
|
||||||
ApplicationId applicationId4 = ApplicationId.newInstance(1234, 8);
|
ApplicationId applicationId4 = ApplicationId.newInstance(1234, 8);
|
||||||
|
@ -676,7 +675,7 @@ public class TestYarnClient {
|
||||||
"user4", "queue4", "appname4", "host4", 127, null,
|
"user4", "queue4", "appname4", "host4", 127, null,
|
||||||
YarnApplicationState.FAILED, "diagnostics4", "url4", 4, 4,
|
YarnApplicationState.FAILED, "diagnostics4", "url4", 4, 4,
|
||||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.83789f,
|
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.83789f,
|
||||||
"NON-MAPREDUCE", null, null);
|
"NON-MAPREDUCE", null);
|
||||||
applicationReports.add(newApplicationReport4);
|
applicationReports.add(newApplicationReport4);
|
||||||
return applicationReports;
|
return applicationReports;
|
||||||
}
|
}
|
||||||
|
|
|
@ -103,7 +103,7 @@ public class TestYarnCLI {
|
||||||
"user", "queue", "appname", "host", 124, null,
|
"user", "queue", "appname", "host", 124, null,
|
||||||
YarnApplicationState.FINISHED, "diagnostics", "url", 0, 0,
|
YarnApplicationState.FINISHED, "diagnostics", "url", 0, 0,
|
||||||
FinalApplicationStatus.SUCCEEDED, usageReport, "N/A", 0.53789f, "YARN",
|
FinalApplicationStatus.SUCCEEDED, usageReport, "N/A", 0.53789f, "YARN",
|
||||||
null, null);
|
null);
|
||||||
when(client.getApplicationReport(any(ApplicationId.class))).thenReturn(
|
when(client.getApplicationReport(any(ApplicationId.class))).thenReturn(
|
||||||
newApplicationReport);
|
newApplicationReport);
|
||||||
int result = cli.run(new String[] { "application", "-status", applicationId.toString() });
|
int result = cli.run(new String[] { "application", "-status", applicationId.toString() });
|
||||||
|
@ -347,8 +347,7 @@ public class TestYarnCLI {
|
||||||
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
||||||
"user", "queue", "appname", "host", 124, null,
|
"user", "queue", "appname", "host", 124, null,
|
||||||
YarnApplicationState.RUNNING, "diagnostics", "url", 0, 0,
|
YarnApplicationState.RUNNING, "diagnostics", "url", 0, 0,
|
||||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null,
|
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null);
|
||||||
null);
|
|
||||||
List<ApplicationReport> applicationReports = new ArrayList<ApplicationReport>();
|
List<ApplicationReport> applicationReports = new ArrayList<ApplicationReport>();
|
||||||
applicationReports.add(newApplicationReport);
|
applicationReports.add(newApplicationReport);
|
||||||
|
|
||||||
|
@ -358,7 +357,7 @@ public class TestYarnCLI {
|
||||||
"user2", "queue2", "appname2", "host2", 125, null,
|
"user2", "queue2", "appname2", "host2", 125, null,
|
||||||
YarnApplicationState.FINISHED, "diagnostics2", "url2", 2, 2,
|
YarnApplicationState.FINISHED, "diagnostics2", "url2", 2, 2,
|
||||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.63789f, "NON-YARN",
|
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.63789f, "NON-YARN",
|
||||||
null, null);
|
null);
|
||||||
applicationReports.add(newApplicationReport2);
|
applicationReports.add(newApplicationReport2);
|
||||||
|
|
||||||
ApplicationId applicationId3 = ApplicationId.newInstance(1234, 7);
|
ApplicationId applicationId3 = ApplicationId.newInstance(1234, 7);
|
||||||
|
@ -367,7 +366,7 @@ public class TestYarnCLI {
|
||||||
"user3", "queue3", "appname3", "host3", 126, null,
|
"user3", "queue3", "appname3", "host3", 126, null,
|
||||||
YarnApplicationState.RUNNING, "diagnostics3", "url3", 3, 3,
|
YarnApplicationState.RUNNING, "diagnostics3", "url3", 3, 3,
|
||||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.73789f, "MAPREDUCE",
|
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.73789f, "MAPREDUCE",
|
||||||
null, null);
|
null);
|
||||||
applicationReports.add(newApplicationReport3);
|
applicationReports.add(newApplicationReport3);
|
||||||
|
|
||||||
ApplicationId applicationId4 = ApplicationId.newInstance(1234, 8);
|
ApplicationId applicationId4 = ApplicationId.newInstance(1234, 8);
|
||||||
|
@ -376,7 +375,7 @@ public class TestYarnCLI {
|
||||||
"user4", "queue4", "appname4", "host4", 127, null,
|
"user4", "queue4", "appname4", "host4", 127, null,
|
||||||
YarnApplicationState.FAILED, "diagnostics4", "url4", 4, 4,
|
YarnApplicationState.FAILED, "diagnostics4", "url4", 4, 4,
|
||||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.83789f, "NON-MAPREDUCE",
|
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.83789f, "NON-MAPREDUCE",
|
||||||
null, null);
|
null);
|
||||||
applicationReports.add(newApplicationReport4);
|
applicationReports.add(newApplicationReport4);
|
||||||
|
|
||||||
ApplicationId applicationId5 = ApplicationId.newInstance(1234, 9);
|
ApplicationId applicationId5 = ApplicationId.newInstance(1234, 9);
|
||||||
|
@ -385,7 +384,7 @@ public class TestYarnCLI {
|
||||||
"user5", "queue5", "appname5", "host5", 128, null,
|
"user5", "queue5", "appname5", "host5", 128, null,
|
||||||
YarnApplicationState.ACCEPTED, "diagnostics5", "url5", 5, 5,
|
YarnApplicationState.ACCEPTED, "diagnostics5", "url5", 5, 5,
|
||||||
FinalApplicationStatus.KILLED, null, "N/A", 0.93789f, "HIVE",
|
FinalApplicationStatus.KILLED, null, "N/A", 0.93789f, "HIVE",
|
||||||
null, null);
|
null);
|
||||||
applicationReports.add(newApplicationReport5);
|
applicationReports.add(newApplicationReport5);
|
||||||
|
|
||||||
ApplicationId applicationId6 = ApplicationId.newInstance(1234, 10);
|
ApplicationId applicationId6 = ApplicationId.newInstance(1234, 10);
|
||||||
|
@ -394,7 +393,7 @@ public class TestYarnCLI {
|
||||||
"user6", "queue6", "appname6", "host6", 129, null,
|
"user6", "queue6", "appname6", "host6", 129, null,
|
||||||
YarnApplicationState.SUBMITTED, "diagnostics6", "url6", 6, 6,
|
YarnApplicationState.SUBMITTED, "diagnostics6", "url6", 6, 6,
|
||||||
FinalApplicationStatus.KILLED, null, "N/A", 0.99789f, "PIG",
|
FinalApplicationStatus.KILLED, null, "N/A", 0.99789f, "PIG",
|
||||||
null, null);
|
null);
|
||||||
applicationReports.add(newApplicationReport6);
|
applicationReports.add(newApplicationReport6);
|
||||||
|
|
||||||
// Test command yarn application -list
|
// Test command yarn application -list
|
||||||
|
@ -818,8 +817,7 @@ public class TestYarnCLI {
|
||||||
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
||||||
"user", "queue", "appname", "host", 124, null,
|
"user", "queue", "appname", "host", 124, null,
|
||||||
YarnApplicationState.FINISHED, "diagnostics", "url", 0, 0,
|
YarnApplicationState.FINISHED, "diagnostics", "url", 0, 0,
|
||||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null,
|
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null);
|
||||||
null);
|
|
||||||
when(client.getApplicationReport(any(ApplicationId.class))).thenReturn(
|
when(client.getApplicationReport(any(ApplicationId.class))).thenReturn(
|
||||||
newApplicationReport2);
|
newApplicationReport2);
|
||||||
int result = cli.run(new String[] { "application","-kill", applicationId.toString() });
|
int result = cli.run(new String[] { "application","-kill", applicationId.toString() });
|
||||||
|
@ -832,8 +830,7 @@ public class TestYarnCLI {
|
||||||
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
||||||
"user", "queue", "appname", "host", 124, null,
|
"user", "queue", "appname", "host", 124, null,
|
||||||
YarnApplicationState.RUNNING, "diagnostics", "url", 0, 0,
|
YarnApplicationState.RUNNING, "diagnostics", "url", 0, 0,
|
||||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null,
|
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null);
|
||||||
null);
|
|
||||||
when(client.getApplicationReport(any(ApplicationId.class))).thenReturn(
|
when(client.getApplicationReport(any(ApplicationId.class))).thenReturn(
|
||||||
newApplicationReport);
|
newApplicationReport);
|
||||||
result = cli.run(new String[] { "application","-kill", applicationId.toString() });
|
result = cli.run(new String[] { "application","-kill", applicationId.toString() });
|
||||||
|
@ -868,8 +865,7 @@ public class TestYarnCLI {
|
||||||
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
||||||
"user", "queue", "appname", "host", 124, null,
|
"user", "queue", "appname", "host", 124, null,
|
||||||
YarnApplicationState.FINISHED, "diagnostics", "url", 0, 0,
|
YarnApplicationState.FINISHED, "diagnostics", "url", 0, 0,
|
||||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null,
|
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null);
|
||||||
null);
|
|
||||||
when(client.getApplicationReport(any(ApplicationId.class))).thenReturn(
|
when(client.getApplicationReport(any(ApplicationId.class))).thenReturn(
|
||||||
newApplicationReport2);
|
newApplicationReport2);
|
||||||
int result = cli.run(new String[] { "application", "-movetoqueue",
|
int result = cli.run(new String[] { "application", "-movetoqueue",
|
||||||
|
@ -884,8 +880,7 @@ public class TestYarnCLI {
|
||||||
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
applicationId, ApplicationAttemptId.newInstance(applicationId, 1),
|
||||||
"user", "queue", "appname", "host", 124, null,
|
"user", "queue", "appname", "host", 124, null,
|
||||||
YarnApplicationState.RUNNING, "diagnostics", "url", 0, 0,
|
YarnApplicationState.RUNNING, "diagnostics", "url", 0, 0,
|
||||||
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null,
|
FinalApplicationStatus.SUCCEEDED, null, "N/A", 0.53789f, "YARN", null);
|
||||||
null);
|
|
||||||
when(client.getApplicationReport(any(ApplicationId.class))).thenReturn(
|
when(client.getApplicationReport(any(ApplicationId.class))).thenReturn(
|
||||||
newApplicationReport);
|
newApplicationReport);
|
||||||
result = cli.run(new String[] { "application", "-movetoqueue",
|
result = cli.run(new String[] { "application", "-movetoqueue",
|
||||||
|
|
|
@ -58,8 +58,7 @@ public class TestApplicatonReport {
|
||||||
ApplicationReport.newInstance(appId, appAttemptId, "user", "queue",
|
ApplicationReport.newInstance(appId, appAttemptId, "user", "queue",
|
||||||
"appname", "host", 124, null, YarnApplicationState.FINISHED,
|
"appname", "host", 124, null, YarnApplicationState.FINISHED,
|
||||||
"diagnostics", "url", 0, 0, FinalApplicationStatus.SUCCEEDED, null,
|
"diagnostics", "url", 0, 0, FinalApplicationStatus.SUCCEEDED, null,
|
||||||
"N/A", 0.53789f, YarnConfiguration.DEFAULT_APPLICATION_TYPE, null,
|
"N/A", 0.53789f, YarnConfiguration.DEFAULT_APPLICATION_TYPE, null);
|
||||||
null);
|
|
||||||
return appReport;
|
return appReport;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -139,7 +139,7 @@ public class ApplicationHistoryManagerImpl extends AbstractService implements
|
||||||
appHistory.getYarnApplicationState(), appHistory.getDiagnosticsInfo(),
|
appHistory.getYarnApplicationState(), appHistory.getDiagnosticsInfo(),
|
||||||
trackingUrl, appHistory.getStartTime(), appHistory.getFinishTime(),
|
trackingUrl, appHistory.getStartTime(), appHistory.getFinishTime(),
|
||||||
appHistory.getFinalApplicationStatus(), null, "", 100,
|
appHistory.getFinalApplicationStatus(), null, "", 100,
|
||||||
appHistory.getApplicationType(), null, null);
|
appHistory.getApplicationType(), null);
|
||||||
}
|
}
|
||||||
|
|
||||||
private ApplicationAttemptHistoryData getLastAttempt(ApplicationId appId)
|
private ApplicationAttemptHistoryData getLastAttempt(ApplicationId appId)
|
||||||
|
|
|
@ -19,14 +19,11 @@
|
||||||
package org.apache.hadoop.yarn.server.applicationhistoryservice;
|
package org.apache.hadoop.yarn.server.applicationhistoryservice;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.Collection;
|
|
||||||
import java.util.EnumSet;
|
import java.util.EnumSet;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.HashSet;
|
|
||||||
import java.util.LinkedHashMap;
|
import java.util.LinkedHashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
|
||||||
|
|
||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
import org.apache.commons.logging.LogFactory;
|
import org.apache.commons.logging.LogFactory;
|
||||||
|
@ -246,7 +243,6 @@ public class ApplicationHistoryManagerOnTimelineStore extends AbstractService
|
||||||
FinalApplicationStatus finalStatus = FinalApplicationStatus.UNDEFINED;
|
FinalApplicationStatus finalStatus = FinalApplicationStatus.UNDEFINED;
|
||||||
YarnApplicationState state = null;
|
YarnApplicationState state = null;
|
||||||
ApplicationResourceUsageReport appResources = null;
|
ApplicationResourceUsageReport appResources = null;
|
||||||
Set<String> appTags = null;
|
|
||||||
Map<ApplicationAccessType, String> appViewACLs =
|
Map<ApplicationAccessType, String> appViewACLs =
|
||||||
new HashMap<ApplicationAccessType, String>();
|
new HashMap<ApplicationAccessType, String>();
|
||||||
Map<String, Object> entityInfo = entity.getOtherInfo();
|
Map<String, Object> entityInfo = entity.getOtherInfo();
|
||||||
|
@ -268,7 +264,7 @@ public class ApplicationHistoryManagerOnTimelineStore extends AbstractService
|
||||||
ConverterUtils.toApplicationId(entity.getEntityId()),
|
ConverterUtils.toApplicationId(entity.getEntityId()),
|
||||||
latestApplicationAttemptId, user, queue, name, null, -1, null, state,
|
latestApplicationAttemptId, user, queue, name, null, -1, null, state,
|
||||||
diagnosticsInfo, null, createdTime, finishedTime, finalStatus, null,
|
diagnosticsInfo, null, createdTime, finishedTime, finalStatus, null,
|
||||||
null, 1.0F, type, null, appTags), appViewACLs);
|
null, 1.0F, type, null), appViewACLs);
|
||||||
}
|
}
|
||||||
if (entityInfo.containsKey(ApplicationMetricsConstants.QUEUE_ENTITY_INFO)) {
|
if (entityInfo.containsKey(ApplicationMetricsConstants.QUEUE_ENTITY_INFO)) {
|
||||||
queue =
|
queue =
|
||||||
|
@ -293,17 +289,6 @@ public class ApplicationHistoryManagerOnTimelineStore extends AbstractService
|
||||||
appResources=ApplicationResourceUsageReport
|
appResources=ApplicationResourceUsageReport
|
||||||
.newInstance(0, 0, null, null, null, memorySeconds, vcoreSeconds);
|
.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();
|
List<TimelineEvent> events = entity.getEvents();
|
||||||
if (events != null) {
|
if (events != null) {
|
||||||
|
@ -355,7 +340,7 @@ public class ApplicationHistoryManagerOnTimelineStore extends AbstractService
|
||||||
ConverterUtils.toApplicationId(entity.getEntityId()),
|
ConverterUtils.toApplicationId(entity.getEntityId()),
|
||||||
latestApplicationAttemptId, user, queue, name, null, -1, null, state,
|
latestApplicationAttemptId, user, queue, name, null, -1, null, state,
|
||||||
diagnosticsInfo, null, createdTime, finishedTime, finalStatus, appResources,
|
diagnosticsInfo, null, createdTime, finishedTime, finalStatus, appResources,
|
||||||
null, 1.0F, type, null, appTags), appViewACLs);
|
null, 1.0F, type, null), appViewACLs);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static ApplicationAttemptReport convertToApplicationAttemptReport(
|
private static ApplicationAttemptReport convertToApplicationAttemptReport(
|
||||||
|
|
|
@ -22,9 +22,7 @@ import java.security.PrivilegedExceptionAction;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.HashSet;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
|
||||||
|
|
||||||
import org.apache.hadoop.conf.Configuration;
|
import org.apache.hadoop.conf.Configuration;
|
||||||
import org.apache.hadoop.security.SaslRpcServer.AuthMethod;
|
import org.apache.hadoop.security.SaslRpcServer.AuthMethod;
|
||||||
|
@ -185,9 +183,6 @@ public class TestApplicationHistoryManagerOnTimelineStore {
|
||||||
Assert.assertEquals(Integer.MAX_VALUE + 2L, app.getStartTime());
|
Assert.assertEquals(Integer.MAX_VALUE + 2L, app.getStartTime());
|
||||||
Assert.assertEquals(Integer.MAX_VALUE + 3L, app.getFinishTime());
|
Assert.assertEquals(Integer.MAX_VALUE + 3L, app.getFinishTime());
|
||||||
Assert.assertTrue(Math.abs(app.getProgress() - 1.0F) < 0.0001);
|
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.
|
// 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.
|
// Nobody except admin and owner has access to the details of the app.
|
||||||
if ((i == 1 && callerUGI != null &&
|
if ((i == 1 && callerUGI != null &&
|
||||||
|
@ -474,10 +469,6 @@ public class TestApplicationHistoryManagerOnTimelineStore {
|
||||||
entityInfo.put(ApplicationMetricsConstants.APP_VIEW_ACLS_ENTITY_INFO,
|
entityInfo.put(ApplicationMetricsConstants.APP_VIEW_ACLS_ENTITY_INFO,
|
||||||
"user2");
|
"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);
|
entity.setOtherInfo(entityInfo);
|
||||||
TimelineEvent tEvent = new TimelineEvent();
|
TimelineEvent tEvent = new TimelineEvent();
|
||||||
tEvent.setEventType(ApplicationMetricsConstants.CREATED_EVENT_TYPE);
|
tEvent.setEventType(ApplicationMetricsConstants.CREATED_EVENT_TYPE);
|
||||||
|
|
|
@ -73,5 +73,4 @@ public class ApplicationMetricsConstants {
|
||||||
public static final String LATEST_APP_ATTEMPT_EVENT_INFO =
|
public static final String LATEST_APP_ATTEMPT_EVENT_INFO =
|
||||||
"YARN_APPLICATION_LATEST_APP_ATTEMPT";
|
"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;
|
package org.apache.hadoop.yarn.server.resourcemanager.metrics;
|
||||||
|
|
||||||
import java.util.Set;
|
|
||||||
|
|
||||||
import org.apache.hadoop.yarn.api.records.ApplicationId;
|
import org.apache.hadoop.yarn.api.records.ApplicationId;
|
||||||
|
|
||||||
public class ApplicationCreatedEvent extends
|
public class ApplicationCreatedEvent extends
|
||||||
|
@ -31,7 +29,6 @@ public class ApplicationCreatedEvent extends
|
||||||
private String user;
|
private String user;
|
||||||
private String queue;
|
private String queue;
|
||||||
private long submittedTime;
|
private long submittedTime;
|
||||||
private Set<String> appTags;
|
|
||||||
|
|
||||||
public ApplicationCreatedEvent(ApplicationId appId,
|
public ApplicationCreatedEvent(ApplicationId appId,
|
||||||
String name,
|
String name,
|
||||||
|
@ -39,8 +36,7 @@ public class ApplicationCreatedEvent extends
|
||||||
String user,
|
String user,
|
||||||
String queue,
|
String queue,
|
||||||
long submittedTime,
|
long submittedTime,
|
||||||
long createdTime,
|
long createdTime) {
|
||||||
Set<String> appTags) {
|
|
||||||
super(SystemMetricsEventType.APP_CREATED, createdTime);
|
super(SystemMetricsEventType.APP_CREATED, createdTime);
|
||||||
this.appId = appId;
|
this.appId = appId;
|
||||||
this.name = name;
|
this.name = name;
|
||||||
|
@ -48,7 +44,6 @@ public class ApplicationCreatedEvent extends
|
||||||
this.user = user;
|
this.user = user;
|
||||||
this.queue = queue;
|
this.queue = queue;
|
||||||
this.submittedTime = submittedTime;
|
this.submittedTime = submittedTime;
|
||||||
this.appTags = appTags;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -80,7 +75,4 @@ public class ApplicationCreatedEvent extends
|
||||||
return submittedTime;
|
return submittedTime;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Set<String> getAppTags() {
|
|
||||||
return appTags;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -106,7 +106,7 @@ public class SystemMetricsPublisher extends CompositeService {
|
||||||
app.getUser(),
|
app.getUser(),
|
||||||
app.getQueue(),
|
app.getQueue(),
|
||||||
app.getSubmitTime(),
|
app.getSubmitTime(),
|
||||||
createdTime, app.getApplicationTags()));
|
createdTime));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -251,8 +251,6 @@ public class SystemMetricsPublisher extends CompositeService {
|
||||||
event.getQueue());
|
event.getQueue());
|
||||||
entityInfo.put(ApplicationMetricsConstants.SUBMITTED_TIME_ENTITY_INFO,
|
entityInfo.put(ApplicationMetricsConstants.SUBMITTED_TIME_ENTITY_INFO,
|
||||||
event.getSubmittedTime());
|
event.getSubmittedTime());
|
||||||
entityInfo.put(ApplicationMetricsConstants.APP_TAGS_INFO,
|
|
||||||
event.getAppTags());
|
|
||||||
entity.setOtherInfo(entityInfo);
|
entity.setOtherInfo(entityInfo);
|
||||||
TimelineEvent tEvent = new TimelineEvent();
|
TimelineEvent tEvent = new TimelineEvent();
|
||||||
tEvent.setEventType(
|
tEvent.setEventType(
|
||||||
|
|
|
@ -289,7 +289,7 @@ public abstract class MockAsm extends MockApps {
|
||||||
getName(), null, 0, null, null, getDiagnostics().toString(),
|
getName(), null, 0, null, null, getDiagnostics().toString(),
|
||||||
getTrackingUrl(), getStartTime(), getFinishTime(),
|
getTrackingUrl(), getStartTime(), getFinishTime(),
|
||||||
getFinalApplicationStatus(), usageReport , null, getProgress(),
|
getFinalApplicationStatus(), usageReport , null, getProgress(),
|
||||||
type, null, null);
|
type, null);
|
||||||
return report;
|
return report;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -21,11 +21,7 @@ package org.apache.hadoop.yarn.server.resourcemanager.metrics;
|
||||||
import static org.mockito.Mockito.mock;
|
import static org.mockito.Mockito.mock;
|
||||||
import static org.mockito.Mockito.when;
|
import static org.mockito.Mockito.when;
|
||||||
|
|
||||||
import java.util.Collection;
|
|
||||||
import java.util.EnumSet;
|
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.ApplicationAttemptId;
|
||||||
import org.apache.hadoop.yarn.api.records.ApplicationId;
|
import org.apache.hadoop.yarn.api.records.ApplicationId;
|
||||||
|
@ -147,8 +143,6 @@ public class TestSystemMetricsPublisher {
|
||||||
Assert.assertEquals(app.getSubmitTime(),
|
Assert.assertEquals(app.getSubmitTime(),
|
||||||
entity.getOtherInfo().get(
|
entity.getOtherInfo().get(
|
||||||
ApplicationMetricsConstants.SUBMITTED_TIME_ENTITY_INFO));
|
ApplicationMetricsConstants.SUBMITTED_TIME_ENTITY_INFO));
|
||||||
Assert.assertTrue(verifyAppTags(app.getApplicationTags(),
|
|
||||||
entity.getOtherInfo()));
|
|
||||||
if (i == 1) {
|
if (i == 1) {
|
||||||
Assert.assertEquals("uers1,user2",
|
Assert.assertEquals("uers1,user2",
|
||||||
entity.getOtherInfo().get(
|
entity.getOtherInfo().get(
|
||||||
|
@ -358,10 +352,6 @@ public class TestSystemMetricsPublisher {
|
||||||
FinalApplicationStatus.UNDEFINED);
|
FinalApplicationStatus.UNDEFINED);
|
||||||
when(app.getRMAppMetrics()).thenReturn(
|
when(app.getRMAppMetrics()).thenReturn(
|
||||||
new RMAppMetrics(null, 0, 0, Integer.MAX_VALUE, Long.MAX_VALUE));
|
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;
|
return app;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -402,31 +392,4 @@ public class TestSystemMetricsPublisher {
|
||||||
return container;
|
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 class TestRMWebApp {
|
||||||
app.getStartTime(), app.getFinishTime(),
|
app.getStartTime(), app.getFinishTime(),
|
||||||
app.getFinalApplicationStatus(),
|
app.getFinalApplicationStatus(),
|
||||||
(ApplicationResourceUsageReport) null, app.getTrackingUrl(),
|
(ApplicationResourceUsageReport) null, app.getTrackingUrl(),
|
||||||
app.getProgress(), app.getApplicationType(), (Token) null, null);
|
app.getProgress(), app.getApplicationType(), (Token) null);
|
||||||
appReports.add(appReport);
|
appReports.add(appReport);
|
||||||
}
|
}
|
||||||
GetApplicationsResponse response = mock(GetApplicationsResponse.class);
|
GetApplicationsResponse response = mock(GetApplicationsResponse.class);
|
||||||
|
|
|
@ -1030,27 +1030,7 @@ Response Body:
|
||||||
"submittedTime":1430424769395,
|
"submittedTime":1430424769395,
|
||||||
"startedTime":1430424769395,
|
"startedTime":1430424769395,
|
||||||
"finishedTime":1430424776594,
|
"finishedTime":1430424776594,
|
||||||
"elapsedTime":7199},
|
"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"
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -1152,7 +1132,6 @@ Response Body:
|
||||||
<startedTime>1430424053809</startedTime>
|
<startedTime>1430424053809</startedTime>
|
||||||
<finishedTime>1430424072153</finishedTime>
|
<finishedTime>1430424072153</finishedTime>
|
||||||
<elapsedTime>18344</elapsedTime>
|
<elapsedTime>18344</elapsedTime>
|
||||||
<applicationTags>mrapplication,ta-example</applicationTags>
|
|
||||||
</app>
|
</app>
|
||||||
</apps>
|
</apps>
|
||||||
|
|
||||||
|
@ -1200,8 +1179,7 @@ None
|
||||||
| `allocatedVCores` | int | The sum of virtual cores allocated to the application's running containers |
|
| `allocatedVCores` | int | The sum of virtual cores allocated to the application's running containers |
|
||||||
| `currentAppAttemptId` | string | The latest application attempt ID |
|
| `currentAppAttemptId` | string | The latest application attempt ID |
|
||||||
| `host` | string | The host of the ApplicationMaster |
|
| `host` | string | The host of the ApplicationMaster |
|
||||||
| `rpcPort` | int | The RPC port of the ApplicationMaster; zero if no IPC service declared |
|
| `rpcPort` | int | The RPC port of the ApplicationMaster; zero if no IPC service declared. |
|
||||||
| `applicationTags` | string | The application tags. |
|
|
||||||
|
|
||||||
### Response Examples:
|
### Response Examples:
|
||||||
|
|
||||||
|
@ -1237,8 +1215,7 @@ Response Body:
|
||||||
"submittedTime": 1430424053809,
|
"submittedTime": 1430424053809,
|
||||||
"startedTime": 1430424053809,
|
"startedTime": 1430424053809,
|
||||||
"finishedTime": 1430424072153,
|
"finishedTime": 1430424072153,
|
||||||
"elapsedTime": 18344,
|
"elapsedTime": 18344
|
||||||
"applicationTags": mrapplication,tag-example
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#### XML response
|
#### XML response
|
||||||
|
@ -1276,7 +1253,6 @@ Response Body:
|
||||||
<startedTime>1430424053809</startedTime>
|
<startedTime>1430424053809</startedTime>
|
||||||
<finishedTime>1430424072153</finishedTime>
|
<finishedTime>1430424072153</finishedTime>
|
||||||
<elapsedTime>18344</elapsedTime>
|
<elapsedTime>18344</elapsedTime>
|
||||||
<applicationTags>mrapplication,ta-example</applicationTags>
|
|
||||||
</app>
|
</app>
|
||||||
|
|
||||||
## <a name="REST_API_APPLICATION_ATTEMPT_LIST"></a>Application Attempt List
|
## <a name="REST_API_APPLICATION_ATTEMPT_LIST"></a>Application Attempt List
|
||||||
|
|
Loading…
Reference in New Issue