[ https://issues.apache.org/jira/browse/HBASE-5179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13184120#comment-13184120 ]
Zhihong Yu commented on HBASE-5179: ----------------------------------- {code} + private final Set<ServerName> processingDeadServers = new HashSet<ServerName>(); {code} The field name above sounds like method name. How about naming it deadServersUnderProcessing ? Related method names should be changed as well. {code} + * Called on startup. Figures whether a fresh cluster start of we are joining {code} should read 'start or we are'. For ServerManager.java and DeadServer.java: {code} + public Set<ServerName> getProcessingDeadServers() { + return this.deadservers.cloneProcessingDeadServers(); + } {code} The method should be called cloneDeadServersUnderProcessing(). > 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: 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