HBASE-27307 Add Move table to Target Group on master web

This commit is contained in:
SiCheng-Zheng 2023-02-22 01:12:40 +08:00
parent 222ec684d6
commit 553cec4450
1 changed files with 32 additions and 2 deletions

View File

@ -44,15 +44,19 @@
import="org.apache.hadoop.hbase.Size"
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.ColumnFamilyDescriptor"
import="org.apache.hadoop.hbase.client.CompactionState"
import="org.apache.hadoop.hbase.client.Connection"
import="org.apache.hadoop.hbase.client.RegionInfo"
import="org.apache.hadoop.hbase.client.RegionInfoBuilder"
import="org.apache.hadoop.hbase.client.RegionLocator"
import="org.apache.hadoop.hbase.client.RegionReplicaUtil"
import="org.apache.hadoop.hbase.client.Table"
import="org.apache.hadoop.hbase.client.TableDescriptor"
import="org.apache.hadoop.hbase.client.TableDescriptorBuilder"
import="org.apache.hadoop.hbase.client.TableState"
import="org.apache.hadoop.hbase.client.ColumnFamilyDescriptor"
import="org.apache.hadoop.hbase.http.InfoServer"
@ -77,6 +81,7 @@
<%@ page import="org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.Quotas" %>
<%@ page import="org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.SpaceQuota" %>
<%@ page import="java.util.stream.Collectors" %>
<%@ page import="org.apache.hadoop.hbase.rsgroup.RSGroupAdminClient" %>
<%!
/**
* @return An empty region load stamped with the passed in <code>regionInfo</code>
@ -233,7 +238,7 @@
<% return;
} %>
<% // table split/major compact/compact/merge actions
<% // table split/major compact/compact/merge/move actions
if ( !readOnly && action != null ) { %>
<div class="container-fluid content">
<div class="row inner_header">
@ -282,7 +287,19 @@
admin.mergeRegions(Bytes.toBytesBinary(left), Bytes.toBytesBinary(right), false);
}
%> Merge request accepted. <%
} %>
} else if (action.equals("move")) {
Connection connect = master.getConnection();
Admin newAdmin = connect.getAdmin();
TableName tableName = TableName.valueOf(fqtn);
TableDescriptor td = TableDescriptorBuilder.newBuilder(newAdmin.getDescriptor(tableName))
.setRegionServerGroup(key).build();
newAdmin.modifyTable(td);
RSGroupAdminClient rsGroupAdminClient = new RSGroupAdminClient(connect);
Set<TableName> tableNameSet = new HashSet<>();
tableNameSet.add(tableName);
rsGroupAdminClient.moveTables(tableNameSet,key);
%> Move Table group accepted. <%
}%>
<jsp:include page="redirect.jsp" />
</div>
<% return;
@ -1235,6 +1252,19 @@ Actions:
</td>
</form>
</tr>
<tr>
<form method="get">
<input type="hidden" name="action" value="move">
<input type="hidden" name="name" value="<%= fqtn %>">
<td class="centered">
<input style="font-size: 12pt; width: 10em" type="submit" value="Move" class="btn">
</td>
<td style="text-align: center;">
<input type="text" name="key" size="40" placeholder="Target Group (required)">
</td>
<td>Move table to Target Group</td>
</form>
</tr>
</table>
</center>
</p>