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;
         }


Reply via email to