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 sz...@apache.org on 2013/04/30 20:43:38 UTC
svn commit: r1477769 - in /hadoop/common/branches/branch-1: ./
src/hdfs/org/apache/hadoop/hdfs/server/namenode/ src/webapps/secondary/
Author: szetszwo
Date: Tue Apr 30 18:43:38 2013
New Revision: 1477769
URL: http://svn.apache.org/r1477769
Log:
HDFS-4776. Backport SecondaryNameNode web ui.
Added:
hadoop/common/branches/branch-1/src/webapps/secondary/
hadoop/common/branches/branch-1/src/webapps/secondary/index.html
hadoop/common/branches/branch-1/src/webapps/secondary/status.jsp
Modified:
hadoop/common/branches/branch-1/CHANGES.txt
hadoop/common/branches/branch-1/build.xml
hadoop/common/branches/branch-1/src/hdfs/org/apache/hadoop/hdfs/server/namenode/JspHelper.java
hadoop/common/branches/branch-1/src/hdfs/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
Modified: hadoop/common/branches/branch-1/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-1/CHANGES.txt?rev=1477769&r1=1477768&r2=1477769&view=diff
==============================================================================
--- hadoop/common/branches/branch-1/CHANGES.txt (original)
+++ hadoop/common/branches/branch-1/CHANGES.txt Tue Apr 30 18:43:38 2013
@@ -114,6 +114,8 @@ Release 1.2.0 - unreleased
MAPREDUCE-4824. Provide a mechanism for jobs to indicate they should not
be recovered on JobTracker restart. (tomwhite & acmurthy via acmurthy)
+ HDFS-4776. Backport SecondaryNameNode web ui. (szetszwo)
+
IMPROVEMENTS
HADOOP-9434. Backport HADOOP-9267: hadoop -h|-{0,2}help should print usage.
Modified: hadoop/common/branches/branch-1/build.xml
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-1/build.xml?rev=1477769&r1=1477768&r2=1477769&view=diff
==============================================================================
--- hadoop/common/branches/branch-1/build.xml (original)
+++ hadoop/common/branches/branch-1/build.xml Tue Apr 30 18:43:38 2013
@@ -572,6 +572,13 @@
webxml="${build.webapps}/datanode/WEB-INF/web.xml">
</jsp-compile>
+ <jsp-compile
+ uriroot="${src.webapps}/secondary"
+ outputdir="${build.src}"
+ package="org.apache.hadoop.hdfs.server.namenode"
+ webxml="${build.webapps}/secondary/WEB-INF/web.xml">
+ </jsp-compile>
+
<!-- Compile Java files (excluding JSPs) checking warnings -->
<javac
encoding="${build.encoding}"
Modified: hadoop/common/branches/branch-1/src/hdfs/org/apache/hadoop/hdfs/server/namenode/JspHelper.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-1/src/hdfs/org/apache/hadoop/hdfs/server/namenode/JspHelper.java?rev=1477769&r1=1477768&r2=1477769&view=diff
==============================================================================
--- hadoop/common/branches/branch-1/src/hdfs/org/apache/hadoop/hdfs/server/namenode/JspHelper.java (original)
+++ hadoop/common/branches/branch-1/src/hdfs/org/apache/hadoop/hdfs/server/namenode/JspHelper.java Tue Apr 30 18:43:38 2013
@@ -637,4 +637,12 @@ public class JspHelper {
+ VersionInfo.getDate() + " by " + VersionInfo.getUser()
+ "</td></tr>\n</table></div>";
}
+
+ /** Return a table containing version information. */
+ public static String getVersionTable() {
+ return "<div id='dfstable'><table>"
+ + "\n <tr><td id='col1'>Version:</td><td>" + VersionInfo.getVersion() + ", " + VersionInfo.getRevision()
+ + "\n <tr><td id='col1'>Compiled:</td><td>" + VersionInfo.getDate() + " by " + VersionInfo.getUser()
+ + "\n</table></div>";
+ }
}
Modified: hadoop/common/branches/branch-1/src/hdfs/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-1/src/hdfs/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java?rev=1477769&r1=1477768&r2=1477769&view=diff
==============================================================================
--- hadoop/common/branches/branch-1/src/hdfs/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java (original)
+++ hadoop/common/branches/branch-1/src/hdfs/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java Tue Apr 30 18:43:38 2013
@@ -17,17 +17,19 @@
*/
package org.apache.hadoop.hdfs.server.namenode;
+import static org.apache.hadoop.hdfs.protocol.FSConstants.BUFFER_SIZE;
+
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.net.InetSocketAddress;
-import java.net.URI;
import java.security.DigestInputStream;
import java.security.MessageDigest;
import java.security.PrivilegedAction;
import java.security.PrivilegedExceptionAction;
import java.util.ArrayList;
import java.util.Collection;
+import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
@@ -35,11 +37,9 @@ import java.util.Map;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.hdfs.DFSConfigKeys;
import org.apache.hadoop.hdfs.server.common.HdfsConstants;
import org.apache.hadoop.hdfs.server.common.InconsistentFSStateException;
-import static org.apache.hadoop.hdfs.protocol.FSConstants.BUFFER_SIZE;
import org.apache.hadoop.hdfs.server.protocol.NamenodeProtocol;
import org.apache.hadoop.http.HttpServer;
import org.apache.hadoop.io.MD5Hash;
@@ -76,6 +76,9 @@ public class SecondaryNameNode implement
public static final Log LOG =
LogFactory.getLog(SecondaryNameNode.class.getName());
+ private final long starttime = System.currentTimeMillis();
+ private volatile long lastCheckpointTime = 0;
+
private String fsName;
private CheckpointStorage checkpointImage;
@@ -91,8 +94,20 @@ public class SecondaryNameNode implement
private Collection<File> checkpointDirs;
private Collection<File> checkpointEditsDirs;
private long checkpointPeriod; // in seconds
- private long checkpointSize; // size (in MB) of current Edit Log
+ private long checkpointSize; // size (in bytes) of current Edit Log
+ /** {@inheritDoc} */
+ public String toString() {
+ return getClass().getSimpleName() + " Status"
+ + "\nName Node Address : " + nameNodeAddr
+ + "\nStart Time : " + new Date(starttime)
+ + "\nLast Checkpoint Time : " + (lastCheckpointTime == 0? "--": new Date(lastCheckpointTime))
+ + "\nCheckpoint Period : " + checkpointPeriod + " seconds"
+ + "\nCheckpoint Size : " + StringUtils.byteDesc(checkpointSize)
+ + " (= " + checkpointSize + " bytes)"
+ + "\nCheckpoint Dirs : " + checkpointDirs
+ + "\nCheckpoint Edits Dirs: " + checkpointEditsDirs;
+ }
/**
* Utility class to facilitate junit test error simulation.
*/
@@ -255,6 +270,7 @@ public class SecondaryNameNode implement
}
};
+ infoServer.setAttribute("secondary.name.node", this);
infoServer.setAttribute("name.system.image", checkpointImage);
infoServer.setAttribute(JspHelper.CURRENT_CONF, conf);
infoServer.addInternalServlet("getimage", "/getimage",
@@ -354,7 +370,6 @@ public class SecondaryNameNode implement
// pending edit log.
//
long period = 5 * 60; // 5 minutes
- long lastCheckpointTime = 0;
if (checkpointPeriod < period) {
period = checkpointPeriod;
}
Added: hadoop/common/branches/branch-1/src/webapps/secondary/index.html
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-1/src/webapps/secondary/index.html?rev=1477769&view=auto
==============================================================================
--- hadoop/common/branches/branch-1/src/webapps/secondary/index.html (added)
+++ hadoop/common/branches/branch-1/src/webapps/secondary/index.html Tue Apr 30 18:43:38 2013
@@ -0,0 +1,13 @@
+<meta HTTP-EQUIV="REFRESH" content="0;url=status.jsp"/>
+<html>
+<head><title>Hadoop Administration</title></head>
+
+<body>
+<h1>Hadoop Administration</h1>
+
+<ul>
+ <li><a href="status.jsp">Status</a></li>
+</ul>
+
+</body>
+</html>
Added: hadoop/common/branches/branch-1/src/webapps/secondary/status.jsp
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-1/src/webapps/secondary/status.jsp?rev=1477769&view=auto
==============================================================================
--- hadoop/common/branches/branch-1/src/webapps/secondary/status.jsp (added)
+++ hadoop/common/branches/branch-1/src/webapps/secondary/status.jsp Tue Apr 30 18:43:38 2013
@@ -0,0 +1,20 @@
+<%@ page
+ contentType="text/html; charset=UTF-8"
+ import="org.apache.hadoop.util.*"
+%>
+
+<html>
+<link rel="stylesheet" type="text/css" href="/static/hadoop.css">
+<title>Hadoop SecondaryNameNode</title>
+
+<body>
+<h1>SecondaryNameNode</h1>
+<%= JspHelper.getVersionTable() %>
+<hr />
+<pre>
+<%= application.getAttribute("secondary.name.node").toString() %>
+</pre>
+
+<br />
+<b><a href="/logs/">Logs</a></b>
+<%= ServletUtil.htmlFooter() %>