Shaofeng SHI created KYLIN-1551:
-----------------------------------
Summary: Should check and ensure TopN measure has two parameters
specified
Key: KYLIN-1551
URL: https://issues.apache.org/jira/browse/KYLIN-1551
Project: Kylin
Issue Type: Bug
Components: Web
Affects Versions: v1.5.0
Reporter: Shaofeng SHI
Assignee: Zhong,Jason
Fix For: v1.5.1
User from mailing list reported an error when using TopN:
{code}
when I use TOP-N, exception occured
java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
at java.util.ArrayList.rangeCheck(ArrayList.java:635)
at java.util.ArrayList.get(ArrayList.java:411)
at
org.apache.kylin.measure.topn.TopNMeasureType.getColumnsNeedDictionary(TopNMeasureType.java:170)
at
org.apache.kylin.cube.model.CubeDesc.getAllColumnsNeedDictionary(CubeDesc.java:975)
at
org.apache.kylin.cube.CubeManager.getAllDictColumnsOnFact(CubeManager.java:904)
at
org.apache.kylin.engine.mr.steps.FactDistinctColumnsJob.run(FactDistinctColumnsJob.java:80)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
at
org.apache.kylin.engine.mr.common.MapReduceExecutable.doWork(MapReduceExecutable.java:118)
at
org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:114)
at
org.apache.kylin.job.execution.DefaultChainedExecutable.doWork(DefaultChainedExecutable.java:50)
at
org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:114)
at
org.apache.kylin.job.impl.threadpool.DefaultScheduler$JobRunner.run(DefaultScheduler.java:124)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
{code}
The reason should be: no second parameter be specified for TopN. I can
reproduce it on v1.5.0; The cube GUI should check and report to user when find
such a case.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)