From the source code where the NPE be thrown, we can see it seems the cube statistics file wasn't found in Kylin meta store. It seems your metadata is incomplete:
https://github.com/apache/kylin/blob/2.2.x/engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/MergeStatisticsStep.java#L80 Best regards, Shaofeng Shi 史少锋 Apache Kylin PMC Work email: shaofeng....@kyligence.io Kyligence Inc: https://kyligence.io/ Apache Kylin FAQ: https://kylin.apache.org/docs/gettingstarted/faq.html Join Kylin user mail group: user-subscr...@kylin.apache.org Join Kylin dev mail group: dev-subscr...@kylin.apache.org 王林 <1059790...@qq.com> 于2019年1月31日周四 下午5:11写道: > 2.2.0 > > > > > ------------------ 原始邮件 ------------------ > 发件人: "Na Zhai"<na.z...@kyligence.io>; > 发送时间: 2019年1月31日(星期四) 下午2:54 > 收件人: "dev@kylin.apache.org"<dev@kylin.apache.org>; > > 主题: 答复: kylin 手动合并(merge)报错问题 > > > > Hi, wanglin. > > What’s your Kylin version? There is an issue about auto merge: > https://issues.apache.org/jira/browse/KYLIN-3718. > > But I think your error is not related to that issue. It is may be caused > by the deletion of cube_statistics directory. > > > > 发送自 Windows 10 版邮件<https://go.microsoft.com/fwlink/?LinkId=550986>应用 > > > > ________________________________ > 发件人: 王林 <1059790...@qq.com> > 发送时间: Monday, January 28, 2019 10:23:37 AM > 收件人: dev > 主题: kylin 手动合并(merge)报错问题 > > 你好: > 我使用kylin 创建了一个cube,开启了自动合并功能,合并周期为7天,28天。 > 但是发现kylin 自动合并功能没有生效,然后手动合并cube,合并最近几天的没有问题,但是合并以前的就报错信息如下: > > > 报错步骤:#2 Step Name: Merge Cuboid Statistics Duration: > 0.01 mins Waiting: 0 seconds > 报错日志:java.lang.NullPointerException > at > org.apache.kylin.engine.mr.steps.MergeStatisticsStep.doWork(MergeStatisticsStep.java:80) > at > org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:125) > at > org.apache.kylin.job.execution.DefaultChainedExecutable.doWork(DefaultChainedExecutable.java:64) > at > org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:125) > at > org.apache.kylin.job.impl.threadpool.DefaultScheduler$JobRunner.run(DefaultScheduler.java:144) > 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) > 请教是什么原因。 > 谢谢