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
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