KYLIN-2593 fix hard coding in TopNMeasureType
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/38308bc4 Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/38308bc4 Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/38308bc4 Branch: refs/heads/master Commit: 38308bc4c0383517ace73ad213a9f265ae74756b Parents: 84408d5 Author: shaofengshi <shaofeng...@apache.org> Authored: Wed May 31 21:24:38 2017 +0800 Committer: hongbin ma <m...@kyligence.io> Committed: Thu Jun 1 13:11:34 2017 +0800 ---------------------------------------------------------------------- .../main/java/org/apache/kylin/measure/topn/TopNMeasureType.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kylin/blob/38308bc4/core-metadata/src/main/java/org/apache/kylin/measure/topn/TopNMeasureType.java ---------------------------------------------------------------------- diff --git a/core-metadata/src/main/java/org/apache/kylin/measure/topn/TopNMeasureType.java b/core-metadata/src/main/java/org/apache/kylin/measure/topn/TopNMeasureType.java index f936cb8..89ed8ae 100644 --- a/core-metadata/src/main/java/org/apache/kylin/measure/topn/TopNMeasureType.java +++ b/core-metadata/src/main/java/org/apache/kylin/measure/topn/TopNMeasureType.java @@ -40,6 +40,7 @@ import org.apache.kylin.metadata.datatype.DataType; import org.apache.kylin.metadata.datatype.DataTypeSerializer; import org.apache.kylin.metadata.model.FunctionDesc; import org.apache.kylin.metadata.model.MeasureDesc; +import org.apache.kylin.metadata.model.ParameterDesc; import org.apache.kylin.metadata.model.TblColRef; import org.apache.kylin.metadata.realization.CapabilityResult.CapabilityInfluence; import org.apache.kylin.metadata.realization.SQLDigest; @@ -371,7 +372,8 @@ public class TopNMeasureType extends MeasureType<TopNCounter<ByteArray>> { if (numericCol != null) { numericTupleIdx = tupleInfo.hasColumn(numericCol) ? tupleInfo.getColumnIndex(numericCol) : -1; } else { - numericTupleIdx = tupleInfo.getFieldIndex("COUNT__"); + FunctionDesc countFunction = FunctionDesc.newInstance(FunctionDesc.FUNC_COUNT, ParameterDesc.newInstance("1"), "bigint"); + numericTupleIdx = tupleInfo.getFieldIndex(countFunction.getRewriteFieldName()); } return new IAdvMeasureFiller() { private TopNCounter<ByteArray> topNCounter;