Bläddra i källkod

MAPREDUCE-6300. Task list sort by task id broken. Contributed by Siqi Li.

(cherry picked from commit 1fa8075794894b3e0053d251788277fb88e85533)
(cherry picked from commit 51c458a5c4562c54ff147824816f7b44c4b9b8f6)
Akira Ajisaka 10 år sedan
förälder
incheckning
48d6e994bf
10 ändrade filer med 10 tillägg och 11 borttagningar
  1. 2 0
      hadoop-mapreduce-project/CHANGES.txt
  2. 1 1
      hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/webapp/TasksPage.java
  3. 1 1
      hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsTasksPage.java
  4. 3 0
      hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/resources/webapps/static/yarn.dt.plugins.js
  5. 2 2
      hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/webapp/AppAttemptPage.java
  6. 1 1
      hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/webapp/AppPage.java
  7. 0 2
      hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/webapp/AppAttemptBlock.java
  8. 0 2
      hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/webapp/AppBlock.java
  9. 0 1
      hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/webapp/AppsBlock.java
  10. 0 1
      hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/FairSchedulerAppsBlock.java

+ 2 - 0
hadoop-mapreduce-project/CHANGES.txt

@@ -12,6 +12,8 @@ Release 2.7.1 - UNRELEASED
 
 
   BUG FIXES
   BUG FIXES
 
 
+    MAPREDUCE-6300. Task list sort by task id broken. (Siqi Li via aajisaka)
+
 Release 2.7.0 - UNRELEASED
 Release 2.7.0 - UNRELEASED
 
 
   INCOMPATIBLE CHANGES
   INCOMPATIBLE CHANGES

+ 1 - 1
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/webapp/TasksPage.java

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

+ 1 - 1
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsTasksPage.java

@@ -76,7 +76,7 @@ public class HsTasksPage extends HsView {
     .append(", bProcessing: true")
     .append(", bProcessing: true")
 
 
     .append("\n, aoColumnDefs: [\n")
     .append("\n, aoColumnDefs: [\n")
-    .append("{'sType':'numeric', 'aTargets': [ 0 ]")
+    .append("{'sType':'string', 'aTargets': [ 0 ]")
     .append(", 'mRender': parseHadoopID }")
     .append(", 'mRender': parseHadoopID }")
 
 
     .append(", {'sType':'numeric', 'aTargets': [ 4")
     .append(", {'sType':'numeric', 'aTargets': [ 4")

+ 3 - 0
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/resources/webapps/static/yarn.dt.plugins.js

@@ -139,6 +139,9 @@ function renderHadoopElapsedTime(data, type, full) {
   return data;  
   return data;  
 }
 }
 
 
+//JSON array element is formatted like
+//"<a href="/proxy/application_1360183373897_0001>">application_1360183373897_0001</a>"
+//this function removes <a> tag and return a string value for sorting
 function parseHadoopID(data, type, full) {
 function parseHadoopID(data, type, full) {
   if (type === 'display') {
   if (type === 'display') {
     return data;
     return data;

+ 2 - 2
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/webapp/AppAttemptPage.java

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

+ 1 - 1
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/webapp/AppPage.java

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

+ 0 - 2
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/webapp/AppAttemptBlock.java

@@ -183,8 +183,6 @@ public class AppAttemptBlock extends HtmlBlock {
     StringBuilder containersTableData = new StringBuilder("[\n");
     StringBuilder containersTableData = new StringBuilder("[\n");
     for (ContainerReport containerReport : containers) {
     for (ContainerReport containerReport : containers) {
       ContainerInfo container = new ContainerInfo(containerReport);
       ContainerInfo container = new ContainerInfo(containerReport);
-      // ConatinerID numerical value parsed by parseHadoopID in
-      // yarn.dt.plugins.js
       containersTableData
       containersTableData
         .append("[\"<a href='")
         .append("[\"<a href='")
         .append(url("container", container.getContainerId()))
         .append(url("container", container.getContainerId()))

+ 0 - 2
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/webapp/AppBlock.java

@@ -261,8 +261,6 @@ public class AppBlock extends HtmlBlock {
         logsLink = containerReport.getLogUrl();
         logsLink = containerReport.getLogUrl();
         nodeLink = containerReport.getNodeHttpAddress();
         nodeLink = containerReport.getNodeHttpAddress();
       }
       }
-      // AppAttemptID numerical value parsed by parseHadoopID in
-      // yarn.dt.plugins.js
       attemptsTableData
       attemptsTableData
         .append("[\"<a href='")
         .append("[\"<a href='")
         .append(url("appattempt", appAttempt.getAppAttemptId()))
         .append(url("appattempt", appAttempt.getAppAttemptId()))

+ 0 - 1
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/webapp/AppsBlock.java

@@ -108,7 +108,6 @@ public class AppsBlock extends HtmlBlock {
       }
       }
       AppInfo app = new AppInfo(appReport);
       AppInfo app = new AppInfo(appReport);
       String percent = String.format("%.1f", app.getProgress());
       String percent = String.format("%.1f", app.getProgress());
-      // AppID numerical value parsed by parseHadoopID in yarn.dt.plugins.js
       appsTableData
       appsTableData
         .append("[\"<a href='")
         .append("[\"<a href='")
         .append(url("app", app.getAppId()))
         .append(url("app", app.getAppId()))

+ 0 - 1
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/FairSchedulerAppsBlock.java

@@ -116,7 +116,6 @@ public class FairSchedulerAppsBlock extends HtmlBlock {
         // FairScheduler#applications don't have the entry. Skip it.
         // FairScheduler#applications don't have the entry. Skip it.
         continue;
         continue;
       }
       }
-      //AppID numerical value parsed by parseHadoopID in yarn.dt.plugins.js
       appsTableData.append("[\"<a href='")
       appsTableData.append("[\"<a href='")
       .append(url("app", appInfo.getAppId())).append("'>")
       .append(url("app", appInfo.getAppId())).append("'>")
       .append(appInfo.getAppId()).append("</a>\",\"")
       .append(appInfo.getAppId()).append("</a>\",\"")