[11/32] kylin git commit: KYLIN-1301 fix segment pruning failure in 2.x versions
KYLIN-1301 fix segment pruning failure in 2.x versions Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/df4018a4 Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/df4018a4 Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/df4018a4 Branch: refs/heads/KYLIN-1122 Commit: df4018a416d8b970fb901a57e5b1faf8b0133e6e Parents: b15a3db Author: honmaAuthored: Mon Jan 11 11:25:44 2016 +0800 Committer: Xiaoyu Wang Committed: Mon Jan 18 13:38:30 2016 +0800 -- .../kylin/gridtable/GTScanRangePlanner.java | 13 +++-- .../hbase/cube/v2/CubeHBaseEndpointRPC.java | 4 .../kylin/storage/hbase/cube/v2/CubeHBaseRPC.java | 18 +- .../storage/hbase/cube/v2/CubeHBaseScanRPC.java | 5 - .../storage/hbase/cube/v2/CubeSegmentScanner.java | 14 ++ 5 files changed, 38 insertions(+), 16 deletions(-) -- http://git-wip-us.apache.org/repos/asf/kylin/blob/df4018a4/core-cube/src/main/java/org/apache/kylin/gridtable/GTScanRangePlanner.java -- diff --git a/core-cube/src/main/java/org/apache/kylin/gridtable/GTScanRangePlanner.java b/core-cube/src/main/java/org/apache/kylin/gridtable/GTScanRangePlanner.java index f0e42a0..dad0f7c 100644 --- a/core-cube/src/main/java/org/apache/kylin/gridtable/GTScanRangePlanner.java +++ b/core-cube/src/main/java/org/apache/kylin/gridtable/GTScanRangePlanner.java @@ -43,7 +43,16 @@ public class GTScanRangePlanner { final private RecordComparator rangeEndComparator; final private RecordComparator rangeStartEndComparator; +/** + * @param info + * @param segmentStartAndEnd in GT encoding + * @param partitionColRef the TblColRef in GT + */ public GTScanRangePlanner(GTInfo info, Pair segmentStartAndEnd, TblColRef partitionColRef) { +if (partitionColRef != null && segmentStartAndEnd == null) { +throw new IllegalArgumentException("segmentStartAndEnd not provided when partitionColRef is set to " + partitionColRef); +} + this.info = info; this.segmentStartAndEnd = segmentStartAndEnd; this.partitionColRef = partitionColRef; @@ -91,9 +100,9 @@ public class GTScanRangePlanner { List fuzzyKeys; for (ColumnRange range : andDimRanges) { - if (partitionColRef != null && range.column.equals(partitionColRef)) { - +logger.debug("Pre-check partition col filter, partitionColRef {}, segmentstartandend {}, range begin {}, range end {}",// +new Object[] { partitionColRef, segmentStartAndEnd, range.begin, range.end }); if (rangeStartEndComparator.comparator.compare(segmentStartAndEnd.getFirst(), range.end) <= 0 // && rangeStartEndComparator.comparator.compare(range.begin, segmentStartAndEnd.getSecond()) < 0) { //segment range is [Closed,Open) http://git-wip-us.apache.org/repos/asf/kylin/blob/df4018a4/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeHBaseEndpointRPC.java -- diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeHBaseEndpointRPC.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeHBaseEndpointRPC.java index 6ff07a4..a193d10 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeHBaseEndpointRPC.java +++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeHBaseEndpointRPC.java @@ -63,9 +63,13 @@ import com.google.common.collect.Iterators; import com.google.common.collect.Lists; import com.google.protobuf.ByteString; import com.google.protobuf.HBaseZeroCopyByteString; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; public class CubeHBaseEndpointRPC extends CubeHBaseRPC { +public static final Logger logger = LoggerFactory.getLogger(CubeHBaseEndpointRPC.class); + private static ExecutorService executorService = Executors.newCachedThreadPool(); static class EndpointResultsAsGTScanner implements IGTScanner { http://git-wip-us.apache.org/repos/asf/kylin/blob/df4018a4/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeHBaseRPC.java -- diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeHBaseRPC.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeHBaseRPC.java index 4a7a966..c25197f 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeHBaseRPC.java +++
kylin git commit: KYLIN-1301 fix IT
Repository: kylin Updated Branches: refs/heads/2.0-rc 28b2154fd -> 3904a1767 KYLIN-1301 fix IT Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/3904a176 Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/3904a176 Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/3904a176 Branch: refs/heads/2.0-rc Commit: 3904a17671ba150728f9dbc40d1504d76401f9e6 Parents: 28b2154 Author: honmaAuthored: Mon Jan 11 16:57:52 2016 +0800 Committer: honma Committed: Mon Jan 11 16:57:52 2016 +0800 -- query/src/test/resources/query/sql/query96.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/kylin/blob/3904a176/query/src/test/resources/query/sql/query96.sql -- diff --git a/query/src/test/resources/query/sql/query96.sql b/query/src/test/resources/query/sql/query96.sql index a1eda6f..c9c0c6f 100644 --- a/query/src/test/resources/query/sql/query96.sql +++ b/query/src/test/resources/query/sql/query96.sql @@ -24,5 +24,5 @@ inner JOIN edw.test_cal_dt as test_cal_dt ON test_kylin_fact.leaf_categ_id = test_category_groupings.leaf_categ_id AND test_kylin_fact.lstg_site_id = test_category_groupings.site_id inner JOIN edw.test_sites as test_sites ON test_kylin_fact.lstg_site_id = test_sites.site_id - where test_kylin_fact.lstg_format_name='XXXUnknownFP-GTC' + where test_kylin_fact.lstg_format_name='XXXUnknown' group by test_cal_dt.cal_dt
kylin git commit: KYLIN-1301 fix segment pruning failure in 2.x versions
Repository: kylin Updated Branches: refs/heads/2.0-rc f91e738a7 -> edab5a433 KYLIN-1301 fix segment pruning failure in 2.x versions Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/edab5a43 Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/edab5a43 Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/edab5a43 Branch: refs/heads/2.0-rc Commit: edab5a433cb3260065ebddb6869505175db30758 Parents: f91e738 Author: honmaAuthored: Mon Jan 11 11:25:44 2016 +0800 Committer: honma Committed: Mon Jan 11 11:25:44 2016 +0800 -- .../kylin/gridtable/GTScanRangePlanner.java | 13 +++-- .../hbase/cube/v2/CubeHBaseEndpointRPC.java | 4 .../kylin/storage/hbase/cube/v2/CubeHBaseRPC.java | 18 +- .../storage/hbase/cube/v2/CubeHBaseScanRPC.java | 5 - .../storage/hbase/cube/v2/CubeSegmentScanner.java | 14 ++ 5 files changed, 38 insertions(+), 16 deletions(-) -- http://git-wip-us.apache.org/repos/asf/kylin/blob/edab5a43/core-cube/src/main/java/org/apache/kylin/gridtable/GTScanRangePlanner.java -- diff --git a/core-cube/src/main/java/org/apache/kylin/gridtable/GTScanRangePlanner.java b/core-cube/src/main/java/org/apache/kylin/gridtable/GTScanRangePlanner.java index f0e42a0..dad0f7c 100644 --- a/core-cube/src/main/java/org/apache/kylin/gridtable/GTScanRangePlanner.java +++ b/core-cube/src/main/java/org/apache/kylin/gridtable/GTScanRangePlanner.java @@ -43,7 +43,16 @@ public class GTScanRangePlanner { final private RecordComparator rangeEndComparator; final private RecordComparator rangeStartEndComparator; +/** + * @param info + * @param segmentStartAndEnd in GT encoding + * @param partitionColRef the TblColRef in GT + */ public GTScanRangePlanner(GTInfo info, Pair segmentStartAndEnd, TblColRef partitionColRef) { +if (partitionColRef != null && segmentStartAndEnd == null) { +throw new IllegalArgumentException("segmentStartAndEnd not provided when partitionColRef is set to " + partitionColRef); +} + this.info = info; this.segmentStartAndEnd = segmentStartAndEnd; this.partitionColRef = partitionColRef; @@ -91,9 +100,9 @@ public class GTScanRangePlanner { List fuzzyKeys; for (ColumnRange range : andDimRanges) { - if (partitionColRef != null && range.column.equals(partitionColRef)) { - +logger.debug("Pre-check partition col filter, partitionColRef {}, segmentstartandend {}, range begin {}, range end {}",// +new Object[] { partitionColRef, segmentStartAndEnd, range.begin, range.end }); if (rangeStartEndComparator.comparator.compare(segmentStartAndEnd.getFirst(), range.end) <= 0 // && rangeStartEndComparator.comparator.compare(range.begin, segmentStartAndEnd.getSecond()) < 0) { //segment range is [Closed,Open) http://git-wip-us.apache.org/repos/asf/kylin/blob/edab5a43/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeHBaseEndpointRPC.java -- diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeHBaseEndpointRPC.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeHBaseEndpointRPC.java index 6ff07a4..a193d10 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeHBaseEndpointRPC.java +++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeHBaseEndpointRPC.java @@ -63,9 +63,13 @@ import com.google.common.collect.Iterators; import com.google.common.collect.Lists; import com.google.protobuf.ByteString; import com.google.protobuf.HBaseZeroCopyByteString; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; public class CubeHBaseEndpointRPC extends CubeHBaseRPC { +public static final Logger logger = LoggerFactory.getLogger(CubeHBaseEndpointRPC.class); + private static ExecutorService executorService = Executors.newCachedThreadPool(); static class EndpointResultsAsGTScanner implements IGTScanner { http://git-wip-us.apache.org/repos/asf/kylin/blob/edab5a43/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeHBaseRPC.java -- diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeHBaseRPC.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/cube/v2/CubeHBaseRPC.java index 1335af0..d319c2d 100644 ---