[ https://issues.apache.org/jira/browse/HBASE-5624?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
stack updated HBASE-5624: ------------------------- Resolution: Fixed Fix Version/s: 0.94.0 0.92.2 Hadoop Flags: Reviewed Status: Resolved (was: Patch Available) Committed to trunk, 0.92 and 0.94 branches. Thanks for the patch Chunhui. Good one. > Aborting regionserver when splitting region, may cause daughter region not > assigned by ServerShutdownHandler. > ------------------------------------------------------------------------------------------------------------- > > Key: HBASE-5624 > URL: https://issues.apache.org/jira/browse/HBASE-5624 > Project: HBase > Issue Type: Bug > Reporter: chunhui shen > Assignee: chunhui shen > Fix For: 0.92.2, 0.94.0 > > Attachments: HBASE-5624.patch > > > If one region is splitting when regionserver is stoping. > The following code may executed in SplitTransaction#openDaughters. > {code} > // TODO: Is this check needed here? > if (stopped || stopping) { > // add 2nd daughter first (see HBASE-4335) > MetaEditor.addDaughter(server.getCatalogTracker(), > b.getRegionInfo(), null); > MetaEditor.addDaughter(server.getCatalogTracker(), > a.getRegionInfo(), null); > LOG.info("Not opening daughters " + > b.getRegionInfo().getRegionNameAsString() + > " and " + > a.getRegionInfo().getRegionNameAsString() + > " because stopping=" + stopping + ", stopped=" + stopped); > } > {code} > So, for the two daughter regions, their location are both null in .META. > When ServerShutdownHandler process the dead server, it will not assign these > two daughter regions since their location(info:server) are null in .META. by > MetaReader.getServerUserRegions(). -- 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