[ 
https://issues.apache.org/jira/browse/HBASE-6721?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13492557#comment-13492557
 ] 

Ted Yu commented on HBASE-6721:
-------------------------------

{code}
+  public GroupMoveServerWorker(Server master, Map<String, String> 
serversInTransition,
...
+    this.master = (MasterServices)master;
{code}
master parameter should be declared as MasterServices.
{code}
+        if(sourceGroup != null && !tmpGroup.equals(sourceGroup)) {
+          throw new DoNotRetryIOException("Move server request should only 
come from one source group");
{code}
Consider including sourceGroup and tmpGroup in the exception message.
{code}
+      if(!sourceGroup.startsWith(GroupInfo.TRANSITION_GROUP_PREFIX)) {
+        transGroup = GroupInfo.TRANSITION_GROUP_PREFIX+
+            
System.currentTimeMillis()+"_"+sourceGroup+"-"+plan.getTargetGroup();
+        groupManager.addGroup(new GroupInfo(transGroup, new 
TreeSet<String>()));
+      }
+    }
+    groupManager.moveServers(plan.getServers(), sourceGroup, 
transGroup!=null?transGroup:plan.getTargetGroup());
{code}
Why moving the servers to a transitional group ?
{code}
+        } catch (InterruptedException e) {
+          LOG.warn("Sleep interrupted", e);
{code}
Restore interrupt status.
In complete():
{code}
+      if(success) {
+        groupManager.moveServers(plan.getServers(), tmpSourceGroup, 
plan.getTargetGroup());
+        if(transGroup != null) {
+          groupManager.removeGroup(transGroup);
{code}
If early action in run() wasn't successful, the transitional group would hang 
around ?

                
> RegionServer Group based Assignment
> -----------------------------------
>
>                 Key: HBASE-6721
>                 URL: https://issues.apache.org/jira/browse/HBASE-6721
>             Project: HBase
>          Issue Type: New Feature
>            Reporter: Francis Liu
>            Assignee: Vandana Ayyalasomayajula
>             Fix For: 0.96.0
>
>         Attachments: HBASE-6721_94_2.patch, HBASE-6721_94_3.patch, 
> HBASE-6721_94.patch, HBASE-6721_94.patch, HBASE-6721-DesigDoc.pdf
>
>
> In multi-tenant deployments of HBase, it is likely that a RegionServer will 
> be serving out regions from a number of different tables owned by various 
> client applications. Being able to group a subset of running RegionServers 
> and assign specific tables to it, provides a client application a level of 
> isolation and resource allocation.
> The proposal essentially is to have an AssignmentManager which is aware of 
> RegionServer groups and assigns tables to region servers based on groupings. 
> Load balancing will occur on a per group basis as well. 
> This is essentially a simplification of the approach taken in HBASE-4120. See 
> attached document.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to