diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java index 5188befeaa1..b2a487a7c1e 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java @@ -3604,7 +3604,7 @@ public class HRegion implements HeapSize { // , Writable{ // there're no left overs. // the reasons for calling this method are: // 1. reset the filters. - // 2. fast forward the row + // 2. provide a hook to fast forward the row (used by subclasses) nextRow(currentRow); // This row was totally filtered out, if this is NOT the last row, @@ -3617,15 +3617,16 @@ public class HRegion implements HeapSize { // , Writable{ } } + private boolean filterRow() { + return filter != null + && filter.filterRow(); + } private boolean filterRowKey(byte[] row) { return filter != null && filter.filterRowKey(row, 0, row.length); } protected void nextRow(byte [] currentRow) throws IOException { - KeyValue kv = KeyValue.createLastOnRow(currentRow); - this.storeHeap.requestSeek(kv, true, true); - while (Bytes.equals(currentRow, peekRow())) { this.storeHeap.next(MOCKED_LIST); }