Repository: kylin Updated Branches: refs/heads/KYLIN-1971 9b4209bed -> ea01024d9
tmp Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/ea01024d Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/ea01024d Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/ea01024d Branch: refs/heads/KYLIN-1971 Commit: ea01024d911be40d17c2b22580cf5874e8e90a85 Parents: 9b4209b Author: Yang Li <liy...@apache.org> Authored: Tue Oct 25 06:21:56 2016 +0800 Committer: Yang Li <liy...@apache.org> Committed: Tue Oct 25 06:21:56 2016 +0800 ---------------------------------------------------------------------- .../kylin/query/relnode/OLAPToEnumerableConverter.java | 10 ++-------- .../java/org/apache/kylin/query/routing/ModelChooser.java | 10 ++++++++++ 2 files changed, 12 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kylin/blob/ea01024d/query/src/main/java/org/apache/kylin/query/relnode/OLAPToEnumerableConverter.java ---------------------------------------------------------------------- diff --git a/query/src/main/java/org/apache/kylin/query/relnode/OLAPToEnumerableConverter.java b/query/src/main/java/org/apache/kylin/query/relnode/OLAPToEnumerableConverter.java index aa01086..f34893a 100644 --- a/query/src/main/java/org/apache/kylin/query/relnode/OLAPToEnumerableConverter.java +++ b/query/src/main/java/org/apache/kylin/query/relnode/OLAPToEnumerableConverter.java @@ -48,6 +48,7 @@ import org.apache.kylin.metadata.filter.TupleFilter.FilterOperatorEnum; import org.apache.kylin.metadata.model.DataModelDesc; import org.apache.kylin.metadata.model.TblColRef; import org.apache.kylin.metadata.realization.IRealization; +import org.apache.kylin.query.routing.ModelChooser; import org.apache.kylin.query.routing.NoRealizationFoundException; import org.apache.kylin.query.routing.QueryRouter; import org.apache.kylin.query.schema.OLAPTable; @@ -89,10 +90,10 @@ public class OLAPToEnumerableConverter extends ConverterImpl implements Enumerab continue; } + ModelChooser.chooseModel(context); IRealization realization = QueryRouter.selectRealization(context); context.realization = realization; - fixModel(context); doAccessControl(context); } } catch (NoRealizationFoundException e) { @@ -123,13 +124,6 @@ public class OLAPToEnumerableConverter extends ConverterImpl implements Enumerab return impl.visitChild(this, 0, inputAsEnum, pref); } - private void fixModel(OLAPContext context) { - DataModelDesc model = context.realization.getDataModelDesc(); - for (OLAPTableScan tableScan : context.allTableScans) { - tableScan.fixColumnRowTypeWithModel(model); - } - } - private void doAccessControl(OLAPContext context) { String controllerCls = KylinConfig.getInstanceFromEnv().getQueryAccessController(); if (null != controllerCls && !controllerCls.isEmpty()) { http://git-wip-us.apache.org/repos/asf/kylin/blob/ea01024d/query/src/main/java/org/apache/kylin/query/routing/ModelChooser.java ---------------------------------------------------------------------- diff --git a/query/src/main/java/org/apache/kylin/query/routing/ModelChooser.java b/query/src/main/java/org/apache/kylin/query/routing/ModelChooser.java index 623866b..972efd0 100644 --- a/query/src/main/java/org/apache/kylin/query/routing/ModelChooser.java +++ b/query/src/main/java/org/apache/kylin/query/routing/ModelChooser.java @@ -18,11 +18,21 @@ package org.apache.kylin.query.routing; +import org.apache.kylin.metadata.model.DataModelDesc; import org.apache.kylin.query.relnode.OLAPContext; +import org.apache.kylin.query.relnode.OLAPTableScan; public class ModelChooser { public static void chooseModel(OLAPContext context) { + DataModelDesc model = null; + fixModel(context, model); + } + + private static void fixModel(OLAPContext context, DataModelDesc model) { + for (OLAPTableScan tableScan : context.allTableScans) { + tableScan.fixColumnRowTypeWithModel(model); + } } }