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 2016/12/15 23:57:49 UTC

kylin git commit: minor, fix NPE in OLAPTable

Repository: kylin
Updated Branches:
  refs/heads/master 1c2c43cb8 -> 3003d9fba


minor, fix NPE in OLAPTable


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

Branch: refs/heads/master
Commit: 3003d9fba7c0b20a74785cbc431f9e708e775418
Parents: 1c2c43c
Author: Yang Li <li...@apache.org>
Authored: Fri Dec 16 07:57:33 2016 +0800
Committer: Yang Li <li...@apache.org>
Committed: Fri Dec 16 07:57:33 2016 +0800

----------------------------------------------------------------------
 .../java/org/apache/kylin/query/schema/OLAPTable.java  | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/3003d9fb/query/src/main/java/org/apache/kylin/query/schema/OLAPTable.java
----------------------------------------------------------------------
diff --git a/query/src/main/java/org/apache/kylin/query/schema/OLAPTable.java b/query/src/main/java/org/apache/kylin/query/schema/OLAPTable.java
index 06ffdba..c33c4ed 100644
--- a/query/src/main/java/org/apache/kylin/query/schema/OLAPTable.java
+++ b/query/src/main/java/org/apache/kylin/query/schema/OLAPTable.java
@@ -43,13 +43,13 @@ import org.apache.calcite.schema.impl.AbstractTableQueryable;
 import org.apache.calcite.sql.type.SqlTypeName;
 import org.apache.calcite.sql.type.SqlTypeUtil;
 import org.apache.calcite.util.ImmutableBitSet;
-import org.apache.kylin.metadata.MetadataManager;
 import org.apache.kylin.metadata.datatype.DataType;
 import org.apache.kylin.metadata.model.ColumnDesc;
 import org.apache.kylin.metadata.model.DataModelDesc;
 import org.apache.kylin.metadata.model.FunctionDesc;
 import org.apache.kylin.metadata.model.MeasureDesc;
 import org.apache.kylin.metadata.model.TableDesc;
+import org.apache.kylin.metadata.model.TblColRef;
 import org.apache.kylin.metadata.project.ProjectManager;
 import org.apache.kylin.metadata.realization.IRealization;
 import org.apache.kylin.metadata.realization.RealizationType;
@@ -198,14 +198,13 @@ public class OLAPTable extends AbstractQueryableTable implements TranslatableTab
             }
         }
         //2. All integer measures in non-cube realizations
-        MetadataManager metadataManager = MetadataManager.getInstance(olapSchema.getConfig());
         for (IRealization realization : mgr.listAllRealizations(olapSchema.getProjectName())) {
             if (realization.getType() == RealizationType.INVERTED_INDEX && realization.getModel().isFactTable(sourceTable.getIdentity())) {
-                DataModelDesc dataModelDesc = realization.getModel();
-                for (String metricColumn : dataModelDesc.getMetrics()) {
-                    ColumnDesc columnDesc = metadataManager.getColumnDesc(dataModelDesc.getRootFactTable().getTableIdentity() + "." + metricColumn);
-                    if (columnDesc.getType().isIntegerFamily() && !columnDesc.getType().isBigInt())
-                        updateColumns.add(columnDesc);
+                DataModelDesc model = realization.getModel();
+                for (String metricColumn : model.getMetrics()) {
+                    TblColRef col = model.findColumn(metricColumn);
+                    if (col.getType().isIntegerFamily() && !col.getType().isBigInt())
+                        updateColumns.add(col.getColumnDesc());
                 }
             }
         }