浏览代码

HDFS-4932. Avoid a wide line on the name node webUI if we have more Journal nodes. Contributed by Fengdong Yu.

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1497141 13f79535-47bb-0310-9956-ffa450edef68
Chris Nauroth 12 年之前
父节点
当前提交
ca1058b27a

+ 3 - 0
hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt

@@ -414,6 +414,9 @@ Release 2.1.0-beta - 2013-07-02
 
     HDFS-4772. Add number of children in HdfsFileStatus. (brandonli)
 
+    HDFS-4932. Avoid a wide line on the name node webUI if we have more Journal
+    nodes. (Fengdong Yu via cnauroth)
+
   OPTIMIZATIONS
 
   BUG FIXES

+ 24 - 3
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NamenodeJspHelper.java

@@ -249,9 +249,30 @@ class NamenodeJspHelper {
               + "<thead><tr><td><b>Journal Manager</b></td><td><b>State</b></td></tr></thead>");
       for (JournalAndStream jas : log.getJournals()) {
         out.print("<tr>");
-        out.print("<td>" + jas.getManager());
-        if (jas.isRequired()) {
-          out.print(" [required]");
+        out.print("<td>");
+        
+        /**
+         * Insert a line break every 3 journal nodes to avoid a very wide line.
+         */  
+        JournalManager manager = jas.getManager();
+        if (null != manager) {
+          String[] managers = manager.toString().split(",");
+
+          for (int i = 0; i < managers.length; ++i) {
+            out.print(managers[i]);
+
+            if (i < managers.length - 1) {
+              out.print(",");
+            }
+
+            if ((i+1) % 3 == 0) {
+              out.print("<br/>");
+            }
+          }
+
+          if (jas.isRequired()) {
+            out.print(" [required]");
+          }
         }
         out.print("</td><td>");