[
https://issues.apache.org/jira/browse/HBASE-6381?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13459737#comment-13459737
]
Jimmy Xiang commented on HBASE-6381:
------------------------------------
@Rajesh, good catch! I changed the corresponding code as below:
{noformat}
if (deadServers != null) {
for (Map.Entry<ServerName, List<HRegionInfo>> server:
deadServers.entrySet()) {
ServerName serverName = server.getKey();
if (!serverManager.isServerDead(serverName)) {
serverManager.expireServer(serverName); // Let SSH do region re-assign
}
}
}
nodes = ZKUtil.listChildrenAndWatchForNewChildren(
this.watcher, this.watcher.assignmentZNode);
if (!nodes.isEmpty()) {
for (String encodedRegionName : nodes) {
processRegionInTransition(encodedRegionName, null, deadServers);
}
}
....
failoverCleanupDone();
{noformat}
Any other issues? Any place we can enhance more? We can use RB if you prefer.
Thanks.
> AssignmentManager should use the same logic for clean startup and failover
> --------------------------------------------------------------------------
>
> Key: HBASE-6381
> URL: https://issues.apache.org/jira/browse/HBASE-6381
> Project: HBase
> Issue Type: Bug
> Components: master
> Reporter: Jimmy Xiang
> Assignee: Jimmy Xiang
> Attachments: hbase-6381-notes.pdf, hbase-6381.pdf,
> trunk-6381_v5.patch, trunk-6381_v7.patch, trunk-6381_v8.patch
>
>
> Currently AssignmentManager handles clean startup and failover very
> differently.
> Different logic is mingled together so it is hard to find out which is for
> which.
> We should clean it up and share the same logic so that AssignmentManager
> handles
> both cases the same way. This way, the code will much easier to understand
> and
> maintain.
--
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