diff --git a/fe/src/main/java/com/cloudera/impala/planner/HBaseScanNode.java b/fe/src/main/java/com/cloudera/impala/planner/HBaseScanNode.java index 803e24d..98fd545 100644 --- a/fe/src/main/java/com/cloudera/impala/planner/HBaseScanNode.java +++ b/fe/src/main/java/com/cloudera/impala/planner/HBaseScanNode.java @@ -300,7 +300,7 @@ public class HBaseScanNode extends ScanNode { List regionList = new ArrayList(); byte [] currentKey = startKey; do { - HRegionLocation regionLocation = hbaseTbl.getRegionLocation(currentKey); + HRegionLocation regionLocation = hbaseTbl.getRegionLocation(currentKey, true); regionList.add(regionLocation); currentKey = regionLocation.getRegionInfo().getEndKey(); } while (!Bytes.equals(currentKey, HConstants.EMPTY_END_ROW) && @@ -342,6 +342,11 @@ public class HBaseScanNode extends ScanNode { rangeEndKey : stopKey; keyRange.setStopKey(Bytes.toString(partEnd)); } + } else { + if (keyRange.isSetStopKey()) { + // set StopKey unbounded + keyRange.unsetStopKey(); + } } }