Repository: kylin Updated Branches: refs/heads/master f70c18f0b -> 849fe3c4e
Revert "KYLIN-2706 Should disable Storage limit push down when singleValuesD doesn't containsAll othersD" This reverts commit 0dc2cd4665efd32d2f782e53382f86e5dadb720a. Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/849fe3c4 Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/849fe3c4 Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/849fe3c4 Branch: refs/heads/master Commit: 849fe3c4e3197ccca57778042aa5de9e96cf8cb8 Parents: f70c18f Author: kangkaisen <kangkai...@meituan.com> Authored: Sun Jul 23 18:22:15 2017 +0800 Committer: kangkaisen <kangkai...@meituan.com> Committed: Sun Jul 23 18:22:15 2017 +0800 ---------------------------------------------------------------------- .../kylin/storage/gtrecord/GTCubeStorageQueryBase.java | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kylin/blob/849fe3c4/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 2e4aca3..f89fc47 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 @@ -143,7 +143,7 @@ public abstract class GTCubeStorageQueryBase implements IStorageQuery { TupleFilter.collectColumns(filter, filterColumnD); // set limit push down - enableStorageLimitIfPossible(cuboid, groups, otherDimsD, singleValuesD, derivedPostAggregation, groupsD, filter, loosenedColumnD, sqlDigest.aggregations, context); + enableStorageLimitIfPossible(cuboid, groups, derivedPostAggregation, groupsD, filter, loosenedColumnD, sqlDigest.aggregations, context); // set whether to aggregate results from multiple partitions enableStreamAggregateIfBeneficial(cuboid, groupsD, context); // set query deadline @@ -340,7 +340,7 @@ public abstract class GTCubeStorageQueryBase implements IStorageQuery { } } - private void enableStorageLimitIfPossible(Cuboid cuboid, Collection<TblColRef> groups, Set<TblColRef> othersD, Set<TblColRef> singleValuesD, Set<TblColRef> derivedPostAggregation, Collection<TblColRef> groupsD, TupleFilter filter, Set<TblColRef> loosenedColumnD, Collection<FunctionDesc> functionDescs, StorageContext context) { + private void enableStorageLimitIfPossible(Cuboid cuboid, Collection<TblColRef> groups, Set<TblColRef> derivedPostAggregation, Collection<TblColRef> groupsD, TupleFilter filter, Set<TblColRef> loosenedColumnD, Collection<FunctionDesc> functionDescs, StorageContext context) { boolean possible = true; if (!TupleFilter.isEvaluableRecursively(filter)) { @@ -358,13 +358,6 @@ public abstract class GTCubeStorageQueryBase implements IStorageQuery { logger.debug("Storage limit push down is impossible because the query has order by"); } - // other columns (from filter) is bad, unless they are ensured to have single value - if (singleValuesD.containsAll(othersD) == false) { - possible = false; - logger.debug("Storage limit push down is impossible because some column not on group by: " + othersD // - + " (single value column: " + singleValuesD + ")"); - } - // derived aggregation is bad, unless expanded columns are already in group by if (!groups.containsAll(derivedPostAggregation)) { possible = false;