[ https://issues.apache.org/jira/browse/HBASE-5918?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13267243#comment-13267243 ]
stack commented on HBASE-5918: ------------------------------ @Chunhui I suppose so.... Its just odd have flags set in such different locations... It makes the tracking of stuff difficult. At a minimum I'd think we'd make a single method that set the flag and then did the call to expireDeadNotExpiredServers so they are grouped... What about the call to expireDeadNotExpiredServers that is done twice? On first call, we'd process possibly the server that was carrying root. What happens when we call it again later out in finishInitialization? Could we end up processing same server twice at all? Thanks. > Master will block forever when startup if root server died between assign > root and assign meta > ---------------------------------------------------------------------------------------------- > > Key: HBASE-5918 > URL: https://issues.apache.org/jira/browse/HBASE-5918 > Project: HBase > Issue Type: Bug > Components: master > Affects Versions: 0.92.1 > Reporter: chunhui shen > Assignee: chunhui shen > Attachments: HBASE-5918.patch, HBASE-5918.patch > > > When master is initializing, if root server died between assign root and > assign meta, master will block at > HMaster#assignRootAndMeta:{code}assignmentManager.assignMeta(); > this.catalogTracker.waitForMeta();{code} > because ServerShutdownHandler is disabled, > So we should enable ServerShutdownHandler after called > assignmentManager.assignMeta(); -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira