[
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