You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by sh...@apache.org on 2018/05/26 13:02:56 UTC

[kylin] branch KYLIN-3359 updated: APACHE-KYLIN-3359 minor fix

This is an automated email from the ASF dual-hosted git repository.

shaofengshi pushed a commit to branch KYLIN-3359
in repository https://gitbox.apache.org/repos/asf/kylin.git


The following commit(s) were added to refs/heads/KYLIN-3359 by this push:
     new 28df046  APACHE-KYLIN-3359 minor fix
28df046 is described below

commit 28df046a00b7bad9fc71fdb2642d811ba94de237
Author: Zhong <nj...@apache.org>
AuthorDate: Thu May 24 15:50:37 2018 +0800

    APACHE-KYLIN-3359 minor fix
    
    Signed-off-by: shaofengshi <sh...@apache.org>
---
 .../kylin/metadata/expression/ExpressionVisitor.java       | 14 +++++++-------
 .../kylin/storage/gtrecord/GTCubeStorageQueryBase.java     |  5 +++--
 .../query/relnode/visitor/TupleExpressionVisitor.java      |  2 +-
 3 files changed, 11 insertions(+), 10 deletions(-)

diff --git a/core-metadata/src/main/java/org/apache/kylin/metadata/expression/ExpressionVisitor.java b/core-metadata/src/main/java/org/apache/kylin/metadata/expression/ExpressionVisitor.java
index 6fe703f..ee4cd9f 100644
--- a/core-metadata/src/main/java/org/apache/kylin/metadata/expression/ExpressionVisitor.java
+++ b/core-metadata/src/main/java/org/apache/kylin/metadata/expression/ExpressionVisitor.java
@@ -19,17 +19,17 @@
 package org.apache.kylin.metadata.expression;
 
 public interface ExpressionVisitor {
-    public TupleExpression visitNumber(NumberTupleExpression numExpr);
+    TupleExpression visitNumber(NumberTupleExpression numExpr);
 
-    public TupleExpression visitString(StringTupleExpression strExpr);
+    TupleExpression visitString(StringTupleExpression strExpr);
 
-    public TupleExpression visitColumn(ColumnTupleExpression colExpr);
+    TupleExpression visitColumn(ColumnTupleExpression colExpr);
 
-    public TupleExpression visitBinary(BinaryTupleExpression binaryExpr);
+    TupleExpression visitBinary(BinaryTupleExpression binaryExpr);
 
-    public TupleExpression visitCaseCall(CaseTupleExpression caseExpr);
+    TupleExpression visitCaseCall(CaseTupleExpression caseExpr);
 
-    public TupleExpression visitRexCall(RexCallTupleExpression rexCallExpr);
+    TupleExpression visitRexCall(RexCallTupleExpression rexCallExpr);
 
-    public TupleExpression visitNone(NoneTupleExpression noneExpr);
+    TupleExpression visitNone(NoneTupleExpression noneExpr);
 }
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 b9b10c2..4eb3a58 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
@@ -221,8 +221,9 @@ public abstract class GTCubeStorageQueryBase implements IStorageQuery {
 
         for (TblColRef column : sqlDigest.allColumns) {
             // skip measure columns
-            if (sqlDigest.metricColumns.contains(column)
-                    && !(sqlDigest.groupbyColumns.contains(column) || sqlDigest.filterColumns.contains(column))) {
+            if ((sqlDigest.metricColumns.contains(column) || sqlDigest.rtMetricColumns.contains(column))
+                    && !(sqlDigest.groupbyColumns.contains(column) || sqlDigest.filterColumns.contains(column)
+                            || sqlDigest.rtDimensionColumns.contains(column))) {
                 continue;
             }
 
diff --git a/query/src/main/java/org/apache/kylin/query/relnode/visitor/TupleExpressionVisitor.java b/query/src/main/java/org/apache/kylin/query/relnode/visitor/TupleExpressionVisitor.java
index 9c65918..4007754 100644
--- a/query/src/main/java/org/apache/kylin/query/relnode/visitor/TupleExpressionVisitor.java
+++ b/query/src/main/java/org/apache/kylin/query/relnode/visitor/TupleExpressionVisitor.java
@@ -64,7 +64,7 @@ public class TupleExpressionVisitor extends RexVisitorImpl<TupleExpression> {
         if (op == SqlStdOperatorTable.EXTRACT_DATE) {
             return visitFirstRexInputRef(call);
         } else if (op instanceof SqlCastFunction) {
-            return visitFirstRexInputRef(call);
+            return call.getOperands().get(0).accept(this);
         } else if (op instanceof SqlUserDefinedFunction) {
             if (op.getName().equals("QUARTER")) {
                 return visitFirstRexInputRef(call);

-- 
To stop receiving notification emails like this one, please contact
shaofengshi@apache.org.