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) {
