Index: src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java =================================================================== --- src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java (revision 1124446) +++ src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java (working copy) @@ -1776,7 +1776,9 @@ for (Iterator > i = this.regionPlans.entrySet().iterator(); i.hasNext();) { Map.Entry e = i.next(); - if (e.getValue().getDestination().equals(hsi)) { + HServerInfo otherHsi = e.getValue().getDestination(); + // The HSI will be null if the region is planned for a random assign. + if (otherHsi != null && otherHsi.equals(hsi)) { // Use iterator's remove else we'll get CME i.remove(); }