HBASE-3368 Split message can come in before region opened message; results in 'Region has been PENDING_CLOSE for too long' cycle

git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1050279 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Michael Stack 2010-12-17 05:48:05 +00:00
parent d154629ef9
commit 1cb79368d3
2 changed files with 6 additions and 1 deletions

View File

@ -787,6 +787,8 @@ Release 0.90.0 - Unreleased
HBASE-3365 EOFE contacting crashed RS causes Master abort
HBASE-3362 If .META. offline between OPENING and OPENED, then wrong server
location in .META. is possible
HBASE-3368 Split message can come in before region opened message; results
in 'Region has been PENDING_CLOSE for too long' cycle
IMPROVEMENTS

View File

@ -160,6 +160,9 @@ class CatalogJanitor extends Chore {
if (!hasReferencesA && !hasReferencesB) {
LOG.debug("Deleting region " + parent.getRegionNameAsString() +
" because daughter splits no longer hold references");
// This latter regionOffline should not be necessary but is done for now
// until we let go of regionserver to master heartbeats. See HBASE-3368.
this.services.getAssignmentManager().regionOffline(parent);
FileSystem fs = this.services.getMasterFileSystem().getFileSystem();
Path rootdir = this.services.getMasterFileSystem().getRootDir();
HRegion.deleteRegion(fs, rootdir, parent);