[
https://issues.apache.org/jira/browse/HBASE-8251?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13624971#comment-13624971
]
Jeffrey Zhong commented on HBASE-8251:
--------------------------------------
[~jeason] The changes still not guarantee the possible double meta assignment.
For example, right after {code}boolean needToAssign = !(currentMetaServer !=
null &&
this.serverManager.isOnlineOrProcessingDeadServer(currentMetaServer));{code},
currentMetaServer is marked dead by master. Then we still have two possible
places to assign meta.
In addition, I thought about enableSSH globally idea before. A concern is that
once SSH is enabled and meta assignment could be delayed by other dead servers
log splitting work from SSHs so master starts up will slower than before. It's
not ideal otherwise the existing code could have skipped
assignmentManager.assignMeta(); right after expireServer.
The above are just IMHO. Thanks.
> enable SSH before assign META on Master startup
> -----------------------------------------------
>
> Key: HBASE-8251
> URL: https://issues.apache.org/jira/browse/HBASE-8251
> Project: HBase
> Issue Type: Bug
> Components: master, Region Assignment
> Affects Versions: 0.94.6
> Reporter: Jieshan Bean
> Assignee: Jieshan Bean
> Attachments: HBASE-8251-94.patch, HBASE-8251-94-v2.patch
>
>
> I think HBASE-5918 could not fix this issue. In HMaster#assignRootAndMeta:
> 1. Assign ROOT.
> 2. Block until ROOT be opened.
> 3. Assign META.
> 4. Block until META be opened.
> SSH is enabled after step 4. So if the RS who host ROOT dies before step 4,
> master will be blocked.
--
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