Hi all,
Recently, I met a trouble when we built and refreshed cube. This is in forth
step, “Build Dimension Dictionary”, occurred ArrayIndexOutOfBoundsException as
follow:
Java.lang.ArrayIndexOutOfBoundsException: 14
at
org.apache.kylin.dict.lookup.LookupStringTable.convertRow(LookupStringTable.java:85)
at
org.apache.kylin.dict.lookup.LookupStringTable.convertRow(LookupStringTable.java:34)
at
org.apache.kylin.dict.lookup.LookupTable.initRow(LookupTable.java:76)
at org.apache.kylin.dict.lookup.LookupTable.init(LookupTable.java:67)
at
org.apache.kylin.dict.lookup.LookupStringTable.init(LookupStringTable.java:79)
at org.apache.kylin.dict.lookup.LookupTable.<init>(LookupTable.java:55)
at
org.apache.kylin.dict.lookup.LookupStringTable.<init>(LookupStringTable.java:65)
at
org.apache.kylin.cube.CubeManager.getLookupTable(CubeManager.java:619)
at
org.apache.kylin.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:61)
at
org.apache.kylin.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:42)
at
org.apache.kylin.engine.mr.steps.CreateDictionaryJob.run(CreateDictionaryJob.java:56)
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.HadoopShellExecutable.doWork(HadoopShellExecutable.java:63)
at
org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:112)
at
org.apache.kylin.job.execution.DefaultChainedExecutable.doWork(DefaultChainedExecutable.java:57)
at
org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:112)
at
org.apache.kylin.job.impl.threadpool.DefaultScheduler$JobRunner.run(DefaultScheduler.java:127)
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)
result code:2
Our environment:
Kylin version: 1.5.3; HBase version: 1.2
Cube infos:
1 fact table and 4 dimension tables
Cube size: 270.33GB and source records: 1,300,012,200
Because of exception messages are less, I read some source codes, but I still
cannot find the cause of error. So I hope to get help. Could you please help
locate the problem or give some ideas to find the problem. We have been using
kylin online, so I want to fix it as early as possible. Please give me replies
as soon as possible. Thanks!
Sincerely!
问题描述:
在对cube执行build和refresh时,在第四步“Build Dimension
Dictionary”发生ArrayIndexOutOfBoundsException:
java.lang.ArrayIndexOutOfBoundsException: 14
at
org.apache.kylin.dict.lookup.LookupStringTable.convertRow(LookupStringTable.java:85)
at
org.apache.kylin.dict.lookup.LookupStringTable.convertRow(LookupStringTable.java:34)
at
org.apache.kylin.dict.lookup.LookupTable.initRow(LookupTable.java:76)
at org.apache.kylin.dict.lookup.LookupTable.init(LookupTable.java:67)
at
org.apache.kylin.dict.lookup.LookupStringTable.init(LookupStringTable.java:79)
at org.apache.kylin.dict.lookup.LookupTable.<init>(LookupTable.java:55)
at
org.apache.kylin.dict.lookup.LookupStringTable.<init>(LookupStringTable.java:65)
at
org.apache.kylin.cube.CubeManager.getLookupTable(CubeManager.java:619)
at
org.apache.kylin.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:61)
at
org.apache.kylin.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:42)
at
org.apache.kylin.engine.mr.steps.CreateDictionaryJob.run(CreateDictionaryJob.java:56)
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.HadoopShellExecutable.doWork(HadoopShellExecutable.java:63)
at
org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:112)
at
org.apache.kylin.job.execution.DefaultChainedExecutable.doWork(DefaultChainedExecutable.java:57)
at
org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:112)
at
org.apache.kylin.job.impl.threadpool.DefaultScheduler$JobRunner.run(DefaultScheduler.java:127)
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)
result code:2
版本说明:
kylin版本1.5.3
hbase版本1.2
cube信息:
1张事实表,4张维表
cube size:270.33GB
Source Records 1,300,012,200
请问这个有可能是维表中什么问题导致的?因为异常信息太过简单,查看源码也没看出更多的信息,
所以能否帮忙定位下问题或者给出一些定位问题得思路,这样有利于我们定位问题。
kylin1.5.3已经在正式环境上被使用了一段时间了,希望尽快得到答复,多谢。