Index: src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java =================================================================== --- src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java (revision 1125166) +++ src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java (working copy) @@ -683,18 +683,26 @@ if (Bytes.equals(tableName, info.getTableDesc().getName())) { value = row.getValue(HConstants.CATALOG_FAMILY, HConstants.SERVER_QUALIFIER); - if (value == null) { + if (value == null || value.length == 0) { available.set(false); return false; } - regionCount.incrementAndGet(); + if (!(info.isOffline() || info.isSplit())) { + regionCount.incrementAndGet(); + } } + } else { + available.set(false); + return false; } return true; } }; - MetaScanner.metaScan(conf, visitor); - return available.get() && (regionCount.get() > 0); + MetaScanner.metaScan(conf, visitor, tableName); + boolean isAvailable = available.get() && (regionCount.get() > 0); + if (isAvailable) LOG.info("Table " + Bytes.toStringBinary(tableName) + + " available with " + regionCount.get() + " regions"); + return isAvailable; } /*