From 3f2dd926f525ddda2a47710cefb611324dbb4be0 Mon Sep 17 00:00:00 2001 From: Max Lapan Date: Wed, 16 Nov 2011 17:41:19 +0400 Subject: [PATCH 2/2] Temporary fix to remove leaked regions. --- .../apache/hadoop/hbase/master/CatalogJanitor.java | 8 +++++--- 1 files changed, 5 insertions(+), 3 deletions(-) diff --git src/main/java/org/apache/hadoop/hbase/master/CatalogJanitor.java src/main/java/org/apache/hadoop/hbase/master/CatalogJanitor.java index 8e8b348..bb317d3 100644 --- src/main/java/org/apache/hadoop/hbase/master/CatalogJanitor.java +++ src/main/java/org/apache/hadoop/hbase/master/CatalogJanitor.java @@ -208,8 +208,10 @@ class CatalogJanitor extends Chore { // a failed split. The ServerShutdownHandler will do the fixup. Don't // do any deletes in here that could intefere with ServerShutdownHandler // fixup - removeDaughterFromParent(parent, a_region, HConstants.SPLITA_QUALIFIER); - removeDaughterFromParent(parent, b_region, HConstants.SPLITB_QUALIFIER); + if (a_region != null) + removeDaughterFromParent(parent, a_region, HConstants.SPLITA_QUALIFIER); + if (b_region != null) + removeDaughterFromParent(parent, b_region, HConstants.SPLITB_QUALIFIER); // This latter regionOffline should not be necessary but is done for now // until we let go of regionserver to master heartbeats. See HBASE-3368. @@ -287,7 +289,7 @@ class CatalogJanitor extends Chore { boolean references = false; boolean exists = false; if (split == null) { - return new Pair(Boolean.FALSE, Boolean.FALSE); + return new Pair(Boolean.TRUE, Boolean.FALSE); } FileSystem fs = this.services.getMasterFileSystem().getFileSystem(); Path rootdir = this.services.getMasterFileSystem().getRootDir(); -- 1.7.3.1.msysgit.0