[ https://issues.apache.org/jira/browse/HBASE-5179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13184296#comment-13184296 ]
Zhihong Yu commented on HBASE-5179: ----------------------------------- @Stack: The following code is for 0.90 branch: {code} - } else if (!serverManager.isServerOnline(regionLocation.getServerName())) { + } else if (!onlineServers.contains(regionLocation.getHostname())) { {code} I agree that serversWithoutSplitLog isn't a very good name. It holds both online servers and dead servers. How about naming it knownServers ? ServerManager.java already has: {code} public Set<ServerName> getDeadServers() { return this.deadservers.clone(); } {code} > Concurrent processing of processFaileOver and ServerShutdownHandler may > cause region is assigned before completing split log, it would cause data loss > ------------------------------------------------------------------------------------------------------------------------------------------------------- > > Key: HBASE-5179 > URL: https://issues.apache.org/jira/browse/HBASE-5179 > Project: HBase > Issue Type: Bug > Components: master > Affects Versions: 0.90.2 > Reporter: chunhui shen > Assignee: chunhui shen > Attachments: 5179-90.txt, 5179-v2.txt, hbase-5179.patch > > > If master's processing its failover and ServerShutdownHandler's processing > happen concurrently, it may appear following case. > 1.master completed splitLogAfterStartup() > 2.RegionserverA restarts, and ServerShutdownHandler is processing. > 3.master starts to rebuildUserRegions, and RegionserverA is considered as > dead server. > 4.master starts to assign regions of RegionserverA because it is a dead > server by step3. > However, when doing step4(assigning region), ServerShutdownHandler may be > doing split log, Therefore, it may cause data loss. -- 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