Revert "YARN-3840. Resource Manager web ui issue when sorting application by id (with application having id > 9999) Contributed by Mohammad Shahid Khan"

This reverts commit cb4d4d5918.

Conflicts:
	hadoop-yarn-project/CHANGES.txt
This commit is contained in:
Jian He 2015-11-16 20:20:46 -08:00
parent f95f416fad
commit 27b786660e
11 changed files with 23 additions and 88 deletions

View File

@ -43,7 +43,7 @@ public class TasksPage extends AppView {
.append(", bProcessing: true")
.append("\n, aoColumnDefs: [\n")
.append("{'sType':'natural', 'aTargets': [0]")
.append("{'sType':'string', 'aTargets': [0]")
.append(", 'mRender': parseHadoopID }")
.append("\n, {'sType':'numeric', bSearchable:false, 'aTargets': [1]")

View File

@ -15,9 +15,6 @@ Release 2.7.3 - UNRELEASED
YARN-4326. Fix TestDistributedShell timeout as AHS in MiniYarnCluster no longer
binds to default port 8188. (Meng Ding via wangda)
YARN-3840. Resource Manager web ui issue when sorting application by id (with
application having id > 9999) (Mohammad Shahid Khan via jianhe)
YARN-4347. Resource manager fails with Null pointer exception. (Jian He via wangda)
Release 2.7.2 - UNRELEASED

View File

@ -65,14 +65,14 @@ public class JQueryUI extends HtmlBlock {
@Override
protected void render(Block html) {
html.link(root_url("static/jquery/themes-1.9.1/base/jquery-ui.css"))
.link(root_url("static/dt-1.9.4/css/jui-dt.css"))
.script(root_url("static/jquery/jquery-1.8.2.min.js"))
.script(root_url("static/jquery/jquery-ui-1.9.1.custom.min.js"))
.script(root_url("static/dt-1.9.4/js/jquery.dataTables.min.js"))
.script(root_url("static/yarn.dt.plugins.js"))
.script(root_url("static/dt-plugin-1.10.7/sorting/natural.js"))
.style("#jsnotice { padding: 0.2em; text-align: center; }",
html.
link(root_url("static/jquery/themes-1.9.1/base/jquery-ui.css")).
link(root_url("static/dt-1.9.4/css/jui-dt.css")).
script(root_url("static/jquery/jquery-1.8.2.min.js")).
script(root_url("static/jquery/jquery-ui-1.9.1.custom.min.js")).
script(root_url("static/dt-1.9.4/js/jquery.dataTables.min.js")).
script(root_url("static/yarn.dt.plugins.js")).
style("#jsnotice { padding: 0.2em; text-align: center; }",
".ui-progressbar { height: 1em; min-width: 5em }"); // required
List<String> list = Lists.newArrayList();
@ -82,8 +82,9 @@ public class JQueryUI extends HtmlBlock {
initProgressBars(list);
if (!list.isEmpty()) {
html.script().$type("text/javascript")._("$(function() {")
._(list.toArray())._("});")._();
html.
script().$type("text/javascript").
_("$(function() {")._(list.toArray())._("});")._();
}
}

View File

@ -53,7 +53,7 @@ public class AppAttemptPage extends AHSView {
protected String getContainersTableColumnDefs() {
StringBuilder sb = new StringBuilder();
return sb.append("[\n").append("{'sType':'natural', 'aTargets': [0]")
return sb.append("[\n").append("{'sType':'string', 'aTargets': [0]")
.append(", 'mRender': parseHadoopID }]").toString();
}

View File

@ -55,7 +55,7 @@ public class AppPage extends AHSView {
protected String getAttemptsTableColumnDefs() {
StringBuilder sb = new StringBuilder();
return sb.append("[\n").append("{'sType':'natural', 'aTargets': [0]")
return sb.append("[\n").append("{'sType':'string', 'aTargets': [0]")
.append(", 'mRender': parseHadoopID }")
.append("\n, {'sType':'numeric', 'aTargets': [1]")

View File

@ -21,7 +21,7 @@ package org.apache.hadoop.yarn.server.applicationhistoryservice.webapp;
import static org.apache.hadoop.yarn.webapp.Params.TITLE;
import static org.mockito.Mockito.mock;
import java.util.Map;
import org.junit.Assert;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.yarn.api.ApplicationBaseProtocol;
import org.apache.hadoop.yarn.api.records.ApplicationAttemptId;
@ -38,7 +38,6 @@ import org.apache.hadoop.yarn.server.applicationhistoryservice.MemoryApplication
import org.apache.hadoop.yarn.util.StringHelper;
import org.apache.hadoop.yarn.webapp.YarnWebParams;
import org.apache.hadoop.yarn.webapp.test.WebAppTests;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
@ -88,21 +87,6 @@ public class TestAHSWebApp extends ApplicationHistoryStoreTestUtils {
WebAppTests.flushOutput(injector);
}
@Test
public void testAPPViewNaturalSortType() throws Exception {
Injector injector =
WebAppTests.createMockInjector(ApplicationBaseProtocol.class,
mockApplicationHistoryClientService(5, 1, 1));
AHSView ahsViewInstance = injector.getInstance(AHSView.class);
ahsViewInstance.render();
WebAppTests.flushOutput(injector);
Map<String, String> moreParams =
ahsViewInstance.context().requestContext().moreParams();
String appTableColumnsMeta = moreParams.get("ui.dataTables.apps.init");
Assert.assertTrue(appTableColumnsMeta.indexOf("natural") != -1);
}
@Test
public void testAppPage() throws Exception {
Injector injector =
@ -119,22 +103,6 @@ public class TestAHSWebApp extends ApplicationHistoryStoreTestUtils {
WebAppTests.flushOutput(injector);
}
@Test
public void testAppPageNaturalSortType() throws Exception {
Injector injector =
WebAppTests.createMockInjector(ApplicationBaseProtocol.class,
mockApplicationHistoryClientService(1, 5, 1));
AppPage appPageInstance = injector.getInstance(AppPage.class);
appPageInstance.render();
WebAppTests.flushOutput(injector);
Map<String, String> moreParams =
appPageInstance.context().requestContext().moreParams();
String attemptsTableColumnsMeta =
moreParams.get("ui.dataTables.attempts.init");
Assert.assertTrue(attemptsTableColumnsMeta.indexOf("natural") != -1);
}
@Test
public void testAppAttemptPage() throws Exception {
Injector injector =
@ -153,21 +121,6 @@ public class TestAHSWebApp extends ApplicationHistoryStoreTestUtils {
WebAppTests.flushOutput(injector);
}
@Test
public void testAppAttemptPageNaturalSortType() throws Exception {
Injector injector =
WebAppTests.createMockInjector(ApplicationBaseProtocol.class,
mockApplicationHistoryClientService(1, 1, 5));
AppAttemptPage appAttemptPageInstance =
injector.getInstance(AppAttemptPage.class);
appAttemptPageInstance.render();
WebAppTests.flushOutput(injector);
Map<String, String> moreParams =
appAttemptPageInstance.context().requestContext().moreParams();
String tableColumnsMeta = moreParams.get("ui.dataTables.containers.init");
Assert.assertTrue(tableColumnsMeta.indexOf("natural") != -1);
}
@Test
public void testContainerPage() throws Exception {
Injector injector =
@ -228,4 +181,5 @@ public class TestAHSWebApp extends ApplicationHistoryStoreTestUtils {
return store;
}
};
}

View File

@ -42,8 +42,9 @@ public class WebPageUtils {
private static String getAppsTableColumnDefs(boolean isFairSchedulerPage) {
StringBuilder sb = new StringBuilder();
return sb.append("[\n")
.append("{'sType':'natural', 'aTargets': [0]")
return sb
.append("[\n")
.append("{'sType':'string', 'aTargets': [0]")
.append(", 'mRender': parseHadoopID }")
.append("\n, {'sType':'numeric', 'aTargets': " +
(isFairSchedulerPage ? "[6, 7]": "[5, 6]"))
@ -62,7 +63,7 @@ public class WebPageUtils {
private static String getAttemptsTableColumnDefs() {
StringBuilder sb = new StringBuilder();
return sb.append("[\n").append("{'sType':'natural', 'aTargets': [0]")
return sb.append("[\n").append("{'sType':'string', 'aTargets': [0]")
.append(", 'mRender': parseHadoopID }")
.append("\n, {'sType':'numeric', 'aTargets': [1]")
.append(", 'mRender': renderHadoopDate }]").toString();
@ -78,7 +79,7 @@ public class WebPageUtils {
private static String getContainersTableColumnDefs() {
StringBuilder sb = new StringBuilder();
return sb.append("[\n").append("{'sType':'natural', 'aTargets': [0]")
return sb.append("[\n").append("{'sType':'string', 'aTargets': [0]")
.append(", 'mRender': parseHadoopID }]").toString();
}

View File

@ -54,14 +54,7 @@ public class AllApplicationsPage extends NMView {
// Sort by id upon page load
append(", aaSorting: [[0, 'asc']]").
// applicationid, applicationstate
append(", aoColumns:[").append(getApplicationsIdColumnDefs())
.append(", null]} ").toString();
}
private String getApplicationsIdColumnDefs() {
StringBuilder sb = new StringBuilder();
return sb.append("{'sType':'natural', 'aTargets': [0]")
.append(", 'mRender': parseHadoopID }").toString();
append(", aoColumns:[null, null]} ").toString();
}
@Override

View File

@ -52,15 +52,9 @@ public class AllContainersPage extends NMView {
private String containersTableInit() {
return tableInit().
// containerid, containerid, log-url
append(", aoColumns:[").append(getContainersIdColumnDefs())
.append(", null, {bSearchable:false}]} ").toString();
append(", aoColumns:[null, null, {bSearchable:false}]} ").toString();
}
private String getContainersIdColumnDefs() {
StringBuilder sb = new StringBuilder();
return sb.append("{'sType':'natural', 'aTargets': [0]")
.append(", 'mRender': parseHadoopID }").toString();
}
@Override
protected Class<? extends SubView> content() {
return AllContainersBlock.class;

View File

@ -28,7 +28,6 @@ import static org.mockito.Mockito.when;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentMap;
import org.apache.hadoop.conf.Configuration;
@ -120,10 +119,6 @@ public class TestRMWebApp {
YarnApplicationState.RUNNING.toString()));
rmViewInstance.render();
WebAppTests.flushOutput(injector);
Map<String, String> moreParams =
rmViewInstance.context().requestContext().moreParams();
String appsTableColumnsMeta = moreParams.get("ui.dataTables.apps.init");
Assert.assertTrue(appsTableColumnsMeta.indexOf("natural") != -1);
}
@Test public void testNodesPage() {