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 d6c59ae83dde..ec5818ae99a3 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" @@ -119,6 +122,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(); %> @@ -145,7 +150,6 @@ if (fqtn != null && master.isInitialized()) {


<% - try (Admin admin = master.getConnection().getAdmin()) { if (action.equals("split")) { if (key != null && key.length() > 0) { admin.split(TableName.valueOf(fqtn), Bytes.toBytes(key)); @@ -156,7 +160,7 @@ if (fqtn != null && master.isInitialized()) { %> Split request accepted. <% } else if (action.equals("compact")) { if (key != null && key.length() > 0) { - List regions = admin.getRegions(TableName.valueOf(fqtn)); + List regions = admin.getRegions(TableName.valueOf(fqtn)).get(); byte[] row = Bytes.toBytes(key); for (RegionInfo region : regions) { @@ -174,7 +178,6 @@ if (fqtn != null && master.isInitialized()) { } %> Merge request accepted. <% } - } %> @@ -250,8 +253,7 @@ if (fqtn != null && master.isInitialized()) { <%} else { - Admin admin = master.getConnection().getAdmin(); - RegionLocator r = master.getClusterConnection().getRegionLocator(table.getName()); + RegionLocator r = master.getConnection().getRegionLocator(table.getName()); try { %>

Table Attributes

@@ -262,7 +264,7 @@ if (fqtn != null && master.isInitialized()) { - + @@ -270,7 +272,7 @@ if (fqtn != null && master.isInitialized()) { <% } else { @@ -578,7 +580,7 @@ if (withReplica) { %><%= StringEscapeUtils.escapeHtml4(element.toString()) %><% } } finally { - admin.close(); + connection.close(); } } // end else %>
Enabled<%= admin.isTableEnabled(table.getName()) %><%= admin.isTableEnabled(table.getName()).get() %> Is the table enabled
<% try { - CompactionState compactionState = admin.getCompactionState(table.getName()); + CompactionState compactionState = admin.getCompactionState(table.getName()).get(); %> <%= compactionState %> <% @@ -504,7 +506,7 @@ if (fqtn != null && master.isInitialized()) { if (urlRegionServer != null) { %> - <%= StringEscapeUtils.escapeHtml4(addr.getHostname().toString()) + ":" + master.getRegionServerInfoPort(addr) %> + <%= addr == null? "-": StringEscapeUtils.escapeHtml4(addr.getHostname().toString()) + ":" + master.getRegionServerInfoPort(addr) %>