minor, logging derive translated filter columns

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

Branch: refs/heads/2.1.x
Commit: 02868adfc3f264fbb32ecc025110aa3d69e20657
Parents: 42abb73
Author: lidongsjtu <lid...@apache.org>
Authored: Fri Aug 4 17:14:47 2017 +0800
Committer: Dong Li <lid...@apache.org>
Committed: Fri Aug 4 18:28:37 2017 +0800

----------------------------------------------------------------------
 .../main/java/org/apache/kylin/cube/CubeManager.java |  2 +-
 .../storage/gtrecord/GTCubeStorageQueryBase.java     | 15 ++++++++++-----
 2 files changed, 11 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/02868adf/core-cube/src/main/java/org/apache/kylin/cube/CubeManager.java
----------------------------------------------------------------------
diff --git a/core-cube/src/main/java/org/apache/kylin/cube/CubeManager.java 
b/core-cube/src/main/java/org/apache/kylin/cube/CubeManager.java
index 0beb926..4215746 100644
--- a/core-cube/src/main/java/org/apache/kylin/cube/CubeManager.java
+++ b/core-cube/src/main/java/org/apache/kylin/cube/CubeManager.java
@@ -677,7 +677,7 @@ public class CubeManager implements IRealizationProvider {
         String[] pkCols = join.getPrimaryKey();
         String snapshotResPath = cubeSegment.getSnapshotResPath(tableName);
         if (snapshotResPath == null)
-            throw new IllegalStateException("No snaphot for table '" + 
tableName + "' found on cube segment"
+            throw new IllegalStateException("No snapshot for table '" + 
tableName + "' found on cube segment"
                     + cubeSegment.getCubeInstance().getName() + "/" + 
cubeSegment);
 
         try {

http://git-wip-us.apache.org/repos/asf/kylin/blob/02868adf/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 22f5fc9..ea3811c 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
@@ -140,10 +140,10 @@ public abstract class GTCubeStorageQueryBase implements 
IStorageQuery {
         Set<TblColRef> filterColumnD = Sets.newHashSet();
         TupleFilter filterD = translateDerived(filter, loosenedColumnD);
         groupsD.addAll(loosenedColumnD);
-        TupleFilter.collectColumns(filter, filterColumnD);
+        TupleFilter.collectColumns(filterD, filterColumnD);
 
         // set limit push down
-        enableStorageLimitIfPossible(cuboid, groups, derivedPostAggregation, 
groupsD, filter, loosenedColumnD, sqlDigest.aggregations, context);
+        enableStorageLimitIfPossible(cuboid, groups, derivedPostAggregation, 
groupsD, filterD, loosenedColumnD, sqlDigest.aggregations, context);
         // set whether to aggregate results from multiple partitions
         enableStreamAggregateIfBeneficial(cuboid, groupsD, context);
         // set query deadline
@@ -316,9 +316,7 @@ public abstract class GTCubeStorageQueryBase implements 
IStorageQuery {
             return compf;
 
         DeriveInfo hostInfo = cubeDesc.getHostInfo(derived);
-        CubeManager cubeMgr = 
CubeManager.getInstance(this.cubeInstance.getConfig());
-        CubeSegment seg = cubeInstance.getLatestReadySegment();
-        LookupStringTable lookup = cubeMgr.getLookupTable(seg, hostInfo.join);
+        LookupStringTable lookup = getLookupStringTableForDerived(derived, 
hostInfo);
         Pair<TupleFilter, Boolean> translated = 
DerivedFilterTranslator.translate(lookup, hostInfo, compf);
         TupleFilter translatedFilter = translated.getFirst();
         boolean loosened = translated.getSecond();
@@ -328,6 +326,13 @@ public abstract class GTCubeStorageQueryBase implements 
IStorageQuery {
         return translatedFilter;
     }
 
+    @SuppressWarnings("unchecked")
+    protected LookupStringTable getLookupStringTableForDerived(TblColRef 
derived, DeriveInfo hostInfo) {
+        CubeManager cubeMgr = 
CubeManager.getInstance(this.cubeInstance.getConfig());
+        CubeSegment seg = cubeInstance.getLatestReadySegment();
+        return cubeMgr.getLookupTable(seg, hostInfo.join);
+    }
+
     private void collectColumnsRecursively(TupleFilter filter, Set<TblColRef> 
collector) {
         if (filter == null)
             return;

Reply via email to