This is an automated email from the ASF dual-hosted git repository.

psomogyi pushed a commit to branch branch-2.2
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/branch-2.2 by this push:
     new b0b1d6b  HBASE-22751 table.jsp fails if ugly regions in table
b0b1d6b is described below

commit b0b1d6b15a17c338a9bf976016abc9e93cfd6a12
Author: stack <st...@apache.org>
AuthorDate: Fri Jul 26 21:32:37 2019 -0700

    HBASE-22751 table.jsp fails if ugly regions in table
---
 .../main/resources/hbase-webapps/master/table.jsp  | 22 ++++++++++++----------
 1 file changed, 12 insertions(+), 10 deletions(-)

diff --git a/hbase-server/src/main/resources/hbase-webapps/master/table.jsp 
b/hbase-server/src/main/resources/hbase-webapps/master/table.jsp
index c0138ca..555ae08 100644
--- a/hbase-server/src/main/resources/hbase-webapps/master/table.jsp
+++ b/hbase-server/src/main/resources/hbase-webapps/master/table.jsp
@@ -27,6 +27,7 @@
   import="java.util.List"
   import="java.util.Map"
   import="java.util.TreeMap"
+  import=" java.util.concurrent.TimeUnit"
   import="org.apache.commons.lang3.StringEscapeUtils"
   import="org.apache.hadoop.conf.Configuration"
   import="org.apache.hadoop.hbase.HColumnDescriptor"
@@ -35,8 +36,10 @@
   import="org.apache.hadoop.hbase.ServerName"
   import="org.apache.hadoop.hbase.TableName"
   import="org.apache.hadoop.hbase.TableNotFoundException"
-  import="org.apache.hadoop.hbase.client.Admin"
+  import="org.apache.hadoop.hbase.client.AsyncAdmin"
+  import="org.apache.hadoop.hbase.client.AsyncConnection"
   import="org.apache.hadoop.hbase.client.CompactionState"
+  import="org.apache.hadoop.hbase.client.ConnectionFactory"
   import="org.apache.hadoop.hbase.client.RegionInfo"
   import="org.apache.hadoop.hbase.client.RegionInfoBuilder"
   import="org.apache.hadoop.hbase.client.RegionLocator"
@@ -117,6 +120,8 @@
       pageTitle = "Table: " + escaped_fqtn;
   }
   pageContext.setAttribute("pageTitle", pageTitle);
+  AsyncConnection connection = 
ConnectionFactory.createAsyncConnection(master.getConfiguration()).get();
+  AsyncAdmin admin = connection.getAdminBuilder().setOperationTimeout(5, 
TimeUnit.SECONDS).build();
 %>
 
 <jsp:include page="header.jsp">
@@ -143,7 +148,6 @@ if (fqtn != null && master.isInitialized()) {
         </div>
 <p><hr><p>
 <%
-  try (Admin admin = master.getConnection().getAdmin()) {
     if (action.equals("split")) {
       if (key != null && key.length() > 0) {
         admin.split(TableName.valueOf(fqtn), Bytes.toBytes(key));
@@ -154,7 +158,7 @@ if (fqtn != null && master.isInitialized()) {
     %> Split request accepted. <%
     } else if (action.equals("compact")) {
       if (key != null && key.length() > 0) {
-        List<RegionInfo> regions = admin.getRegions(TableName.valueOf(fqtn));
+        List<RegionInfo> regions = 
admin.getRegions(TableName.valueOf(fqtn)).get();
         byte[] row = Bytes.toBytes(key);
 
         for (RegionInfo region : regions) {
@@ -172,7 +176,6 @@ if (fqtn != null && master.isInitialized()) {
         }
         %> Merge request accepted. <%
     }
-  }
 %>
 <jsp:include page="redirect.jsp" />
 </div>
@@ -248,8 +251,7 @@ if (fqtn != null && master.isInitialized()) {
 </tbody>
 </table>
 <%} else {
-  Admin admin = master.getConnection().getAdmin();
-  RegionLocator r = 
master.getClusterConnection().getRegionLocator(table.getName());
+  RegionLocator r = master.getConnection().getRegionLocator(table.getName());
   try { %>
 <h2>Table Attributes</h2>
 <table class="table table-striped">
@@ -260,7 +262,7 @@ if (fqtn != null && master.isInitialized()) {
   </tr>
   <tr>
       <td>Enabled</td>
-      <td><%= admin.isTableEnabled(table.getName()) %></td>
+      <td><%= admin.isTableEnabled(table.getName()).get() %></td>
       <td>Is the table enabled</td>
   </tr>
   <tr>
@@ -268,7 +270,7 @@ if (fqtn != null && master.isInitialized()) {
       <td>
 <%
   try {
-    CompactionState compactionState = 
admin.getCompactionState(table.getName());
+    CompactionState compactionState = 
admin.getCompactionState(table.getName()).get();
 %>
 <%= compactionState %>
 <%
@@ -503,7 +505,7 @@ if (fqtn != null && master.isInitialized()) {
   if (urlRegionServer != null) {
   %>
   <td>
-     <a href="<%= urlRegionServer %>"><%= 
StringEscapeUtils.escapeHtml4(addr.getHostname().toString()) + ":" + 
master.getRegionServerInfoPort(addr) %></a>
+     <a href="<%= urlRegionServer %>"><%= addr == null? "-": 
StringEscapeUtils.escapeHtml4(addr.getHostname().toString()) + ":" + 
master.getRegionServerInfoPort(addr) %></a>
   </td>
   <%
   } else {
@@ -577,7 +579,7 @@ if (withReplica) {
     %><%= StringEscapeUtils.escapeHtml4(element.toString()) %><%
   }
 } finally {
-  admin.close();
+  connection.close();
 }
 } // end else
 %>

Reply via email to