Repository: phoenix
Updated Branches:
  refs/heads/3.0 a16ef59c1 -> 9eb935cdf


PHOENIX-1133 Skip scan intersect method not reseting state correctly


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/8cde1d17
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/8cde1d17
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/8cde1d17

Branch: refs/heads/3.0
Commit: 8cde1d173b5b1a6e02d3c6e9caaae9d8ffcb4f28
Parents: 2f557ab
Author: James Taylor <[email protected]>
Authored: Wed Jul 30 11:44:42 2014 -0700
Committer: James Taylor <[email protected]>
Committed: Wed Jul 30 11:44:42 2014 -0700

----------------------------------------------------------------------
 .../src/main/java/org/apache/phoenix/execute/ScanPlan.java  | 6 +++---
 .../main/java/org/apache/phoenix/filter/SkipScanFilter.java | 9 +++++++--
 2 files changed, 10 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/phoenix/blob/8cde1d17/phoenix-core/src/main/java/org/apache/phoenix/execute/ScanPlan.java
----------------------------------------------------------------------
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/execute/ScanPlan.java 
b/phoenix-core/src/main/java/org/apache/phoenix/execute/ScanPlan.java
index a994067..03deca7 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/execute/ScanPlan.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/execute/ScanPlan.java
@@ -18,6 +18,9 @@
 package org.apache.phoenix.execute;
 
 
+import java.sql.SQLException;
+import java.util.List;
+
 import org.apache.phoenix.compile.GroupByCompiler.GroupBy;
 import org.apache.phoenix.compile.OrderByCompiler.OrderBy;
 import org.apache.phoenix.compile.RowProjector;
@@ -44,9 +47,6 @@ import org.apache.phoenix.schema.SaltingUtil;
 import org.apache.phoenix.schema.TableRef;
 import org.apache.phoenix.util.ScanUtil;
 
-import java.sql.SQLException;
-import java.util.List;
-
 
 
 /**

http://git-wip-us.apache.org/repos/asf/phoenix/blob/8cde1d17/phoenix-core/src/main/java/org/apache/phoenix/filter/SkipScanFilter.java
----------------------------------------------------------------------
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/filter/SkipScanFilter.java 
b/phoenix-core/src/main/java/org/apache/phoenix/filter/SkipScanFilter.java
index 3245bc5..e3b8d22 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/filter/SkipScanFilter.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/filter/SkipScanFilter.java
@@ -147,10 +147,15 @@ public class SkipScanFilter extends FilterBase {
         return true;
     }
     
+    private void resetState() {
+        isDone = false;
+        endKeyLength = 0;
+        Arrays.fill(position, 0);
+    }
+    
     private boolean intersect(byte[] lowerInclusiveKey, byte[] 
upperExclusiveKey, List<List<KeyRange>> newSlots) {
+        resetState();
         boolean lowerUnbound = (lowerInclusiveKey.length == 0);
-        Arrays.fill(position, 0);
-        isDone = false;
         int startPos = 0;
         int lastSlot = slots.size()-1;
         if (!lowerUnbound) {

Reply via email to