diff --git a/core/src/main/java/org/apache/accumulo/core/spi/balancer/HostRegexTableLoadBalancer.java b/core/src/main/java/org/apache/accumulo/core/spi/balancer/HostRegexTableLoadBalancer.java index 49309dc3526..5a0c021d1a8 100644 --- a/core/src/main/java/org/apache/accumulo/core/spi/balancer/HostRegexTableLoadBalancer.java +++ b/core/src/main/java/org/apache/accumulo/core/spi/balancer/HostRegexTableLoadBalancer.java @@ -421,6 +421,14 @@ public long balance(BalanceParameters params) { + " it may have been deleted or renamed.", table); continue; } + // If current information in the Manager indicates that the tserver + // is not hosting tablets for the table, then move on to the next + // tserver + if (e.getValue().getTableMap() != null + && !e.getValue().getTableMap().containsKey(tid.canonical())) { + LOG.debug("TServer {} is not hosting any tablets for table {}", e.getKey(), table); + continue; + } try { List outOfBoundsTablets = getOnlineTabletsForTable(e.getKey(), tid); if (outOfBoundsTablets == null) {