You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by ge...@apache.org on 2015/06/20 21:39:54 UTC
hadoop git commit: MAPREDUCE-6305. AM/Task log page should be able to
link back to the job. (Siqi Li via gera)
Repository: hadoop
Updated Branches:
refs/heads/trunk 63d40d528 -> 055cd5a9a
MAPREDUCE-6305. AM/Task log page should be able to link back to the job. (Siqi Li via gera)
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/055cd5a9
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/055cd5a9
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/055cd5a9
Branch: refs/heads/trunk
Commit: 055cd5a9a11bd3e544a8a67c6c44b53efcb3a9ed
Parents: 63d40d5
Author: Gera Shegalov <ge...@apache.org>
Authored: Sat Jun 20 12:38:36 2015 -0700
Committer: Gera Shegalov <ge...@apache.org>
Committed: Sat Jun 20 12:38:36 2015 -0700
----------------------------------------------------------------------
hadoop-mapreduce-project/CHANGES.txt | 3 +++
.../mapreduce/v2/hs/webapp/HsController.java | 28 ++++++++++++++++++--
.../mapreduce/v2/hs/webapp/HsCountersPage.java | 8 +-----
.../mapreduce/v2/hs/webapp/HsLogsPage.java | 11 +-------
.../v2/hs/webapp/HsSingleCounterPage.java | 8 +-----
.../hadoop/mapreduce/v2/hs/webapp/HsView.java | 13 +++++++++
6 files changed, 45 insertions(+), 26 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hadoop/blob/055cd5a9/hadoop-mapreduce-project/CHANGES.txt
----------------------------------------------------------------------
diff --git a/hadoop-mapreduce-project/CHANGES.txt b/hadoop-mapreduce-project/CHANGES.txt
index 71934b7..d48fc5b 100644
--- a/hadoop-mapreduce-project/CHANGES.txt
+++ b/hadoop-mapreduce-project/CHANGES.txt
@@ -355,6 +355,9 @@ Release 2.8.0 - UNRELEASED
MAPREDUCE-6316. Task Attempt List entries should link to the task overview.
(Siqi Li via gera)
+ MAPREDUCE-6305. AM/Task log page should be able to link back to the job.
+ (Siqi Li via gera)
+
OPTIMIZATIONS
BUG FIXES
http://git-wip-us.apache.org/repos/asf/hadoop/blob/055cd5a9/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsController.java
----------------------------------------------------------------------
diff --git a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsController.java b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsController.java
index b7bdfa4..2cc7ad5 100644
--- a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsController.java
+++ b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsController.java
@@ -18,9 +18,13 @@
package org.apache.hadoop.mapreduce.v2.hs.webapp;
+import static org.apache.hadoop.yarn.webapp.YarnWebParams.ENTITY_STRING;
+
import java.io.IOException;
import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.mapreduce.JobID;
+import org.apache.hadoop.mapreduce.TaskAttemptID;
import org.apache.hadoop.mapreduce.v2.app.webapp.App;
import org.apache.hadoop.mapreduce.v2.app.webapp.AppController;
import org.apache.hadoop.yarn.webapp.View;
@@ -32,8 +36,7 @@ import com.google.inject.Inject;
* This class renders the various pages that the History Server WebApp supports
*/
public class HsController extends AppController {
-
-
+
@Inject HsController(App app, Configuration conf, RequestContext ctx) {
super(app, conf, ctx, "History");
}
@@ -175,6 +178,27 @@ public class HsController extends AppController {
* Render the logs page.
*/
public void logs() {
+ String logEntity = $(ENTITY_STRING);
+ JobID jid = null;
+ try {
+ jid = JobID.forName(logEntity);
+ set(JOB_ID, logEntity);
+ requireJob();
+ } catch (Exception e) {
+ // fall below
+ }
+
+ if (jid == null) {
+ try {
+ TaskAttemptID taskAttemptId = TaskAttemptID.forName(logEntity);
+ set(TASK_ID, taskAttemptId.getTaskID().toString());
+ set(JOB_ID, taskAttemptId.getJobID().toString());
+ requireTask();
+ requireJob();
+ } catch (Exception e) {
+ // fall below
+ }
+ }
render(HsLogsPage.class);
}
http://git-wip-us.apache.org/repos/asf/hadoop/blob/055cd5a9/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsCountersPage.java
----------------------------------------------------------------------
diff --git a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsCountersPage.java b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsCountersPage.java
index 1bae8fd..e70a668 100644
--- a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsCountersPage.java
+++ b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsCountersPage.java
@@ -18,7 +18,6 @@
package org.apache.hadoop.mapreduce.v2.hs.webapp;
-import static org.apache.hadoop.mapreduce.v2.app.webapp.AMParams.TASK_ID;
import static org.apache.hadoop.yarn.webapp.view.JQueryUI.*;
import org.apache.hadoop.mapreduce.v2.app.webapp.CountersBlock;
@@ -35,12 +34,7 @@ public class HsCountersPage extends HsView {
*/
@Override protected void preHead(Page.HTML<_> html) {
commonPreHead(html);
- String tid = $(TASK_ID);
- String activeNav = "2";
- if(tid == null || tid.isEmpty()) {
- activeNav = "1";
- }
- set(initID(ACCORDION, "nav"), "{autoHeight:false, active:"+activeNav+"}");
+ setActiveNavColumnForTask();
set(DATATABLES_SELECTOR, "#counters .dt-counters");
set(initSelector(DATATABLES),
"{bJQueryUI:true, sDom:'t', iDisplayLength:-1}");
http://git-wip-us.apache.org/repos/asf/hadoop/blob/055cd5a9/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsLogsPage.java
----------------------------------------------------------------------
diff --git a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsLogsPage.java b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsLogsPage.java
index 909a316..f483dc9 100644
--- a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsLogsPage.java
+++ b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsLogsPage.java
@@ -17,9 +17,6 @@
*/
package org.apache.hadoop.mapreduce.v2.hs.webapp;
-import static org.apache.hadoop.yarn.webapp.YarnWebParams.CONTAINER_ID;
-import static org.apache.hadoop.yarn.webapp.YarnWebParams.ENTITY_STRING;
-
import org.apache.hadoop.yarn.webapp.SubView;
import org.apache.hadoop.yarn.webapp.log.AggregatedLogsBlock;
@@ -30,14 +27,8 @@ public class HsLogsPage extends HsView {
* @see org.apache.hadoop.mapreduce.v2.hs.webapp.HsView#preHead(org.apache.hadoop.yarn.webapp.hamlet.Hamlet.HTML)
*/
@Override protected void preHead(Page.HTML<_> html) {
- String logEntity = $(ENTITY_STRING);
- if (logEntity == null || logEntity.isEmpty()) {
- logEntity = $(CONTAINER_ID);
- }
- if (logEntity == null || logEntity.isEmpty()) {
- logEntity = "UNKNOWN";
- }
commonPreHead(html);
+ setActiveNavColumnForTask();
}
/**
http://git-wip-us.apache.org/repos/asf/hadoop/blob/055cd5a9/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsSingleCounterPage.java
----------------------------------------------------------------------
diff --git a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsSingleCounterPage.java b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsSingleCounterPage.java
index 4e0036a..5f97b8f 100644
--- a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsSingleCounterPage.java
+++ b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsSingleCounterPage.java
@@ -18,7 +18,6 @@
package org.apache.hadoop.mapreduce.v2.hs.webapp;
-import static org.apache.hadoop.mapreduce.v2.app.webapp.AMParams.TASK_ID;
import static org.apache.hadoop.yarn.webapp.view.JQueryUI.*;
import org.apache.hadoop.mapreduce.v2.app.webapp.SingleCounterBlock;
@@ -35,12 +34,7 @@ public class HsSingleCounterPage extends HsView {
*/
@Override protected void preHead(Page.HTML<_> html) {
commonPreHead(html);
- String tid = $(TASK_ID);
- String activeNav = "2";
- if(tid == null || tid.isEmpty()) {
- activeNav = "1";
- }
- set(initID(ACCORDION, "nav"), "{autoHeight:false, active:"+activeNav+"}");
+ setActiveNavColumnForTask();
set(DATATABLES_ID, "singleCounter");
set(initID(DATATABLES, "singleCounter"), counterTableInit());
setTableStyles(html, "singleCounter");
http://git-wip-us.apache.org/repos/asf/hadoop/blob/055cd5a9/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsView.java
----------------------------------------------------------------------
diff --git a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsView.java b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsView.java
index 229bbb0..8e39087 100644
--- a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsView.java
+++ b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/main/java/org/apache/hadoop/mapreduce/v2/hs/webapp/HsView.java
@@ -18,6 +18,7 @@
package org.apache.hadoop.mapreduce.v2.hs.webapp;
+import static org.apache.hadoop.mapreduce.v2.app.webapp.AMParams.TASK_ID;
import static org.apache.hadoop.yarn.webapp.view.JQueryUI.ACCORDION;
import static org.apache.hadoop.yarn.webapp.view.JQueryUI.ACCORDION_ID;
import static org.apache.hadoop.yarn.webapp.view.JQueryUI.DATATABLES;
@@ -55,6 +56,18 @@ public class HsView extends TwoColumnLayout {
set(initID(ACCORDION, "nav"), "{autoHeight:false, active:0}");
}
+ /**
+ * Determine which navigation column is active.
+ */
+ protected void setActiveNavColumnForTask() {
+ String tid = $(TASK_ID);
+ String activeNav = "2";
+ if((tid == null || tid.isEmpty())) {
+ activeNav = "1";
+ }
+ set(initID(ACCORDION, "nav"), "{autoHeight:false, active:"+activeNav+"}");
+ }
+
/*
* (non-Javadoc)
* @see org.apache.hadoop.yarn.webapp.view.TwoColumnLayout#nav()