Apache9 commented on a change in pull request #613: HBASE-22932 Add rs group 
management methods in Admin and AsyncAdmin
URL: https://github.com/apache/hbase/pull/613#discussion_r325714982
 
 

 ##########
 File path: 
hbase-client/src/main/java/org/apache/hadoop/hbase/client/AsyncAdmin.java
 ##########
 @@ -1506,5 +1508,63 @@
    *   The return value will be wrapped by a {@link CompletableFuture}.
    */
   CompletableFuture<Boolean> isSnapshotCleanupEnabled();
+  
+  /**
+   * Gets group info for the given group name
+   * @param groupName the group name
+   * @return group info
+   */
+  CompletableFuture<? extends RSGroupInfo> getRSGroupInfo(String groupName);
+
+  /**
+   * Move given set of servers to the specified target RegionServer group
+   * @param servers set of servers to move
+   * @param targetGroup the group to move servers to
+   */
+  CompletableFuture<Void> moveServers(Set<Address> servers, String 
targetGroup);
+
+  /**
+   * Creates a new RegionServer group with the given name
+   * @param groupName the name of the group
+   */
+  CompletableFuture<Void> addRSGroup(String groupName);
+
+  /**
+   * Removes RegionServer group associated with the given name
+   * @param groupName the group name
+   */
+  CompletableFuture<Void> removeRSGroup(String groupName);
+
+  /**
+   * Balance regions in the given RegionServer group
+   * @param groupName the group name
+   * @return boolean Whether balance ran or not
+   */
+  CompletableFuture<Boolean> balanceRSGroup(String groupName);
+
+  /**
+   * Lists current set of RegionServer groups
+   */
+  CompletableFuture<List<RSGroupInfo>> listRSGroups();
+
+  /**
+   * Retrieve the RSGroupInfo a server is affiliated to
+   * @param hostPort HostPort to get RSGroupInfo for
+   */
+  CompletableFuture<? extends RSGroupInfo> getRSGroupOfServer(Address 
hostPort);
+
+  /**
+   * Remove decommissioned servers from group
+   * 1. Sometimes we may find the server aborted due to some hardware failure 
and we must offline
+   * the server for repairing. Or we need to move some servers to join other 
clusters.
+   * So we need to remove these servers from the group.
+   * 2. Dead/recovering/live servers will be disallowed.
+   * @param servers set of servers to remove
+   */
+  CompletableFuture<Void> removeServers(Set<Address> servers);
+
+  CompletableFuture<RSGroupInfo> getRSGroupInfoOfTable(TableName tableName);
 
 Review comment:
   Can just make a default implementation here?

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to