HDFS-4926. namenode webserver's page has a tooltip that is inconsistent with the datanode HTML link. Contributed by Vivek Ganesan.

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1511477 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Jing Zhao 2013-08-07 20:34:39 +00:00
parent c5c90ff8f5
commit 54e144059e
4 changed files with 21 additions and 13 deletions

View File

@ -45,8 +45,7 @@ div#dfsnodetable a#title {
font-weight : bolder; font-weight : bolder;
} }
div#dfsnodetable td, th { div#dfsnodetable td, th {
border-bottom-style : none;
padding-bottom : 4px; padding-bottom : 4px;
padding-top : 4px; padding-top : 4px;
} }

View File

@ -284,6 +284,9 @@ Release 2.1.1-beta - UNRELEASED
HDFS-4905. Add appendToFile command to "hdfs dfs". (Arpit Agarwal via HDFS-4905. Add appendToFile command to "hdfs dfs". (Arpit Agarwal via
cnauroth) cnauroth)
HDFS-4926. Namenode webserver's page has a tooltip that is inconsistent
with the datanode HTML link. (Vivek Ganesan via jing9)
OPTIMIZATIONS OPTIMIZATIONS
BUG FIXES BUG FIXES

View File

@ -709,10 +709,10 @@ private void generateNodeDataHeader(JspWriter out, DatanodeDescriptor d,
int idx = (suffix != null && name.endsWith(suffix)) ? name int idx = (suffix != null && name.endsWith(suffix)) ? name
.indexOf(suffix) : -1; .indexOf(suffix) : -1;
out.print(rowTxt() + "<td class=\"name\"><a title=\"" + d.getXferAddr() out.print(rowTxt() + "<td class=\"name\"> <a title=\"" + url
+ "\" href=\"" + url + "\">" + "\" href=\"" + url + "\">"
+ ((idx > 0) ? name.substring(0, idx) : name) + "</a>" + ((idx > 0) ? name.substring(0, idx) : name) + "</a>"
+ ((alive) ? "" : "\n")); + ((alive) ? "" : "\n") + "<td class=\"address\">" + d.getXferAddr());
} }
void generateDecommissioningNodeData(JspWriter out, DatanodeDescriptor d, void generateDecommissioningNodeData(JspWriter out, DatanodeDescriptor d,
@ -746,10 +746,10 @@ void generateNodeData(JspWriter out, DatanodeDescriptor d, String suffix,
/* /*
* Say the datanode is dn1.hadoop.apache.org with ip 192.168.0.5 we use: * Say the datanode is dn1.hadoop.apache.org with ip 192.168.0.5 we use:
* 1) d.getHostName():d.getPort() to display. Domain and port are stripped * 1) d.getHostName():d.getPort() to display. Domain and port are stripped
* if they are common across the nodes. i.e. "dn1" * if they are common across the nodes. i.e. "dn1"
* 2) d.getHost():d.Port() for "title". i.e. "192.168.0.5:50010" * 2) d.getHostName():d.getInfoPort() for url and title.
* 3) d.getHostName():d.getInfoPort() for url.
* i.e. "http://dn1.hadoop.apache.org:50075/..." * i.e. "http://dn1.hadoop.apache.org:50075/..."
* 3) d.getXferAddr() for "Transferring Address". i.e. "192.168.0.5:50010"
* Note that "d.getHost():d.getPort()" is what DFS clients use to * Note that "d.getHost():d.getPort()" is what DFS clients use to
* interact with datanodes. * interact with datanodes.
*/ */
@ -880,7 +880,9 @@ void generateNodesList(ServletContext context, JspWriter out,
} }
out.print("<tr class=\"headerRow\"> <th " + nodeHeaderStr("name") out.print("<tr class=\"headerRow\"> <th " + nodeHeaderStr("name")
+ "> Node <th " + nodeHeaderStr("lastcontact") + "> Node <th " + nodeHeaderStr("address")
+ "> Transferring<br>Address <th "
+ nodeHeaderStr("lastcontact")
+ "> Last <br>Contact <th " + nodeHeaderStr("adminstate") + "> Last <br>Contact <th " + nodeHeaderStr("adminstate")
+ "> Admin State <th " + nodeHeaderStr("capacity") + "> Admin State <th " + nodeHeaderStr("capacity")
+ "> Configured <br>Capacity (" + diskByteStr + ") <th " + "> Configured <br>Capacity (" + diskByteStr + ") <th "
@ -896,8 +898,8 @@ void generateNodesList(ServletContext context, JspWriter out,
+ nodeHeaderStr("bpused") + "> Block Pool<br>Used (" + nodeHeaderStr("bpused") + "> Block Pool<br>Used ("
+ diskByteStr + ") <th " + diskByteStr + ") <th "
+ nodeHeaderStr("pcbpused") + nodeHeaderStr("pcbpused")
+ "> Block Pool<br>Used (%)" + "> Block Pool<br>Used (%)" + " <th "
+ "> Blocks <th " + nodeHeaderStr("volfails") + nodeHeaderStr("volfails")
+"> Failed Volumes\n"); +"> Failed Volumes\n");
JspHelper.sortNodeList(live, sorterField, sorterOrder); JspHelper.sortNodeList(live, sorterField, sorterOrder);
@ -915,7 +917,9 @@ void generateNodesList(ServletContext context, JspWriter out,
if (dead.size() > 0) { if (dead.size() > 0) {
out.print("<table border=1 cellspacing=0> <tr id=\"row1\"> " out.print("<table border=1 cellspacing=0> <tr id=\"row1\"> "
+ "<th " + nodeHeaderStr("node") + "<th " + nodeHeaderStr("node")
+ "> Node <th " + nodeHeaderStr("decommissioned") + "> Node <th " + nodeHeaderStr("address")
+ "> Transferring<br>Address <th "
+ nodeHeaderStr("decommissioned")
+ "> Decommissioned\n"); + "> Decommissioned\n");
JspHelper.sortNodeList(dead, sorterField, sorterOrder); JspHelper.sortNodeList(dead, sorterField, sorterOrder);
@ -935,7 +939,9 @@ void generateNodesList(ServletContext context, JspWriter out,
if (decommissioning.size() > 0) { if (decommissioning.size() > 0) {
out.print("<table border=1 cellspacing=0> <tr class=\"headRow\"> " out.print("<table border=1 cellspacing=0> <tr class=\"headRow\"> "
+ "<th " + nodeHeaderStr("name") + "<th " + nodeHeaderStr("name")
+ "> Node <th " + nodeHeaderStr("lastcontact") + "> Node <th " + nodeHeaderStr("address")
+ "> Transferring<br>Address <th "
+ nodeHeaderStr("lastcontact")
+ "> Last <br>Contact <th " + "> Last <br>Contact <th "
+ nodeHeaderStr("underreplicatedblocks") + nodeHeaderStr("underreplicatedblocks")
+ "> Under Replicated Blocks <th " + "> Under Replicated Blocks <th "

View File

@ -47,7 +47,6 @@ div#dfsnodetable a#title {
} }
div#dfsnodetable td, th { div#dfsnodetable td, th {
border-bottom-style : none;
padding-bottom : 4px; padding-bottom : 4px;
padding-top : 4px; padding-top : 4px;
} }
@ -103,6 +102,7 @@ table.nodes td {
div#dfsnodetable td, div#dfsnodetable th, div.dfstable td { div#dfsnodetable td, div#dfsnodetable th, div.dfstable td {
padding-left : 10px; padding-left : 10px;
padding-right : 10px; padding-right : 10px;
border:1px solid black;
} }
td.perc_filled { td.perc_filled {