Author: stack Date: Mon Apr 21 09:46:31 2008 New Revision: 650202 URL: http://svn.apache.org/viewvc?rev=650202&view=rev Log: HBASE-595 RowFilterInterface.rowProcessed() is called *before* fhe final filtering decision is made
Modified: hadoop/hbase/branches/0.1/CHANGES.txt hadoop/hbase/branches/0.1/src/java/org/apache/hadoop/hbase/HRegion.java hadoop/hbase/branches/0.1/src/java/org/apache/hadoop/hbase/HStore.java hadoop/hbase/trunk/CHANGES.txt hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HRegion.java hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HStoreScanner.java Modified: hadoop/hbase/branches/0.1/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/hbase/branches/0.1/CHANGES.txt?rev=650202&r1=650201&r2=650202&view=diff ============================================================================== --- hadoop/hbase/branches/0.1/CHANGES.txt (original) +++ hadoop/hbase/branches/0.1/CHANGES.txt Mon Apr 21 09:46:31 2008 @@ -17,6 +17,8 @@ HBASE-532 Odd interaction between HRegion.get, HRegion.deleteAll and compactions HBASE-590 HBase migration tool does not get correct FileSystem or root directory if configuration is not correct + HBASE-595 RowFilterInterface.rowProcessed() is called *before* fhe final + filtering decision is made (Clint Morgan via Stack) IMPROVEMENTS HBASE-559 MR example job to count table rows Modified: hadoop/hbase/branches/0.1/src/java/org/apache/hadoop/hbase/HRegion.java URL: http://svn.apache.org/viewvc/hadoop/hbase/branches/0.1/src/java/org/apache/hadoop/hbase/HRegion.java?rev=650202&r1=650201&r2=650202&view=diff ============================================================================== --- hadoop/hbase/branches/0.1/src/java/org/apache/hadoop/hbase/HRegion.java (original) +++ hadoop/hbase/branches/0.1/src/java/org/apache/hadoop/hbase/HRegion.java Mon Apr 21 09:46:31 2008 @@ -1861,9 +1861,14 @@ } filtered = filter == null ? false : filter.filterNotNull(results); - - if (filtered && moreToFollow) { - results.clear(); + + if (moreToFollow) { + if (filter != null) { + filter.rowProcessed(filtered, key.getRow()); + } + if (filtered) { + results.clear(); + } } } while(filtered && moreToFollow); Modified: hadoop/hbase/branches/0.1/src/java/org/apache/hadoop/hbase/HStore.java URL: http://svn.apache.org/viewvc/hadoop/hbase/branches/0.1/src/java/org/apache/hadoop/hbase/HStore.java?rev=650202&r1=650201&r2=650202&view=diff ============================================================================== --- hadoop/hbase/branches/0.1/src/java/org/apache/hadoop/hbase/HStore.java (original) +++ hadoop/hbase/branches/0.1/src/java/org/apache/hadoop/hbase/HStore.java Mon Apr 21 09:46:31 2008 @@ -2748,9 +2748,6 @@ moreToFollow = chosenTimestamp >= 0; if (dataFilter != null) { - if (moreToFollow) { - dataFilter.rowProcessed(filtered, chosenRow); - } if (dataFilter.filterAllRemaining()) { moreToFollow = false; } Modified: hadoop/hbase/trunk/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/CHANGES.txt?rev=650202&r1=650201&r2=650202&view=diff ============================================================================== --- hadoop/hbase/trunk/CHANGES.txt (original) +++ hadoop/hbase/trunk/CHANGES.txt Mon Apr 21 09:46:31 2008 @@ -12,6 +12,8 @@ HBASE-532 Odd interaction between HRegion.get, HRegion.deleteAll and compactions HBASE-10 HRegionServer hangs upon exit due to DFSClient Exception HBASE-598 Loggging, no .log file; all goes into .out + HBASE-595 RowFilterInterface.rowProcessed() is called *before* fhe final + filtering decision is made (Clint Morgan via Stack) IMPROVEMENTS HBASE-559 MR example job to count table rows Modified: hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HRegion.java URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HRegion.java?rev=650202&r1=650201&r2=650202&view=diff ============================================================================== --- hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HRegion.java (original) +++ hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HRegion.java Mon Apr 21 09:46:31 2008 @@ -1804,9 +1804,14 @@ } filtered = filter == null ? false : filter.filterNotNull(results); - - if (filtered && moreToFollow) { - results.clear(); + + if (moreToFollow) { + if (filter != null) { + filter.rowProcessed(filtered, key.getRow()); + } + if (filtered) { + results.clear(); + } } } while(filtered && moreToFollow); Modified: hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HStoreScanner.java URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HStoreScanner.java?rev=650202&r1=650201&r2=650202&view=diff ============================================================================== --- hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HStoreScanner.java (original) +++ hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HStoreScanner.java Mon Apr 21 09:46:31 2008 @@ -219,9 +219,6 @@ moreToFollow = chosenTimestamp >= 0; if (dataFilter != null) { - if (moreToFollow) { - dataFilter.rowProcessed(filtered, chosenRow); - } if (dataFilter.filterAllRemaining()) { moreToFollow = false; }