首页 > 代码库 > 解决kylin报错:java.lang.IllegalStateException

解决kylin报错:java.lang.IllegalStateException

一个kylin build job执行到第三步Extract Fact Table Distinct Columns时报错:

2017-05-24 20:04:07,930 ERROR [pool-9-thread-3] common.MapReduceExecutable:127 : error execute MapReduceExecutable{id=a79c9625-39aa-4f17-8015-73b640558425-02, name=Extract Fact Table Distinct Columns, state=RUNNING}java.lang.IllegalStateException        at org.apache.kylin.engine.mr.steps.FactDistinctColumnsJob.run(FactDistinctColumnsJob.java:98)        at org.apache.kylin.engine.mr.MRUtil.runMRJob(MRUtil.java:92)        at org.apache.kylin.engine.mr.common.MapReduceExecutable.doWork(MapReduceExecutable.java:120)        at org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:113)        at org.apache.kylin.job.execution.DefaultChainedExecutable.doWork(DefaultChainedExecutable.java:57)        at org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:113)        at org.apache.kylin.job.impl.threadpool.DefaultScheduler$JobRunner.run(DefaultScheduler.java:136)        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)        at java.lang.Thread.run(Thread.java:745)

解决方案:找到执行这个build任务的kylin实例,reload metadata或重启kylin服务(不推荐),然后重新build.

原因分析:执行build的job server内存中的Meta没有被更新,使用了缓存中的Meta执行build导致。

解决kylin报错:java.lang.IllegalStateException