You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by li...@apache.org on 2017/04/11 02:20:27 UTC

kylin git commit: KYLIN-2539 bug fix

Repository: kylin
Updated Branches:
  refs/heads/yang22 35b7a2914 -> ba94580f9


KYLIN-2539 bug fix


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

Branch: refs/heads/yang22
Commit: ba94580f993ece8632026eeb5f9461c456664987
Parents: 35b7a29
Author: Hongbin Ma <ma...@apache.org>
Authored: Tue Apr 11 10:19:56 2017 +0800
Committer: Hongbin Ma <ma...@apache.org>
Committed: Tue Apr 11 10:19:56 2017 +0800

----------------------------------------------------------------------
 .../apache/kylin/storage/gtrecord/GTCubeStorageQueryBase.java   | 2 --
 .../main/java/org/apache/kylin/query/relnode/OLAPFilterRel.java | 5 ++++-
 2 files changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/ba94580f/core-storage/src/main/java/org/apache/kylin/storage/gtrecord/GTCubeStorageQueryBase.java
----------------------------------------------------------------------
diff --git a/core-storage/src/main/java/org/apache/kylin/storage/gtrecord/GTCubeStorageQueryBase.java b/core-storage/src/main/java/org/apache/kylin/storage/gtrecord/GTCubeStorageQueryBase.java
index 575ca22..f841365 100644
--- a/core-storage/src/main/java/org/apache/kylin/storage/gtrecord/GTCubeStorageQueryBase.java
+++ b/core-storage/src/main/java/org/apache/kylin/storage/gtrecord/GTCubeStorageQueryBase.java
@@ -132,8 +132,6 @@ public abstract class GTCubeStorageQueryBase implements IStorageQuery {
                 logger.info("Skip cube segment {} because its input record is 0", cubeSeg);
                 continue;
             }
-            // optimize the filter, the optimization has to be segment-irrelevant
-            new FilterOptimizeTransformer().transform(filterD);
 
             scanner = new CubeSegmentScanner(cubeSeg, cuboid, dimensionsD, groupsD, metrics, filterD, context);
             scanners.add(scanner);

http://git-wip-us.apache.org/repos/asf/kylin/blob/ba94580f/query/src/main/java/org/apache/kylin/query/relnode/OLAPFilterRel.java
----------------------------------------------------------------------
diff --git a/query/src/main/java/org/apache/kylin/query/relnode/OLAPFilterRel.java b/query/src/main/java/org/apache/kylin/query/relnode/OLAPFilterRel.java
index 1981c10..c826ff3 100755
--- a/query/src/main/java/org/apache/kylin/query/relnode/OLAPFilterRel.java
+++ b/query/src/main/java/org/apache/kylin/query/relnode/OLAPFilterRel.java
@@ -59,10 +59,11 @@ import org.apache.kylin.metadata.filter.CompareTupleFilter;
 import org.apache.kylin.metadata.filter.ConstantTupleFilter;
 import org.apache.kylin.metadata.filter.DynamicTupleFilter;
 import org.apache.kylin.metadata.filter.ExtractTupleFilter;
+import org.apache.kylin.metadata.filter.FilterOptimizeTransformer;
 import org.apache.kylin.metadata.filter.LogicalTupleFilter;
 import org.apache.kylin.metadata.filter.TupleFilter;
-import org.apache.kylin.metadata.filter.UnsupportedTupleFilter;
 import org.apache.kylin.metadata.filter.TupleFilter.FilterOperatorEnum;
+import org.apache.kylin.metadata.filter.UnsupportedTupleFilter;
 import org.apache.kylin.metadata.filter.function.Functions;
 import org.apache.kylin.metadata.model.TblColRef;
 
@@ -319,6 +320,8 @@ public class OLAPFilterRel extends Filter implements OLAPRel {
 
         TupleFilterVisitor visitor = new TupleFilterVisitor(this.columnRowType, context);
         context.filter = this.condition.accept(visitor);
+        // optimize the filter, the optimization has to be segment-irrelevant
+        new FilterOptimizeTransformer().transform(context.filter);
 
         context.filterColumns = collectColumns(context.filter);
     }