hue oozie报错ELException: variable [wf] cannot be resolved问题

1、流程

hue oozie报错ELException: variable [wf] cannot be resolved问题

2、报错

hue oozie报错ELException: variable [wf] cannot be resolved问题


3、解决思路

查源码,看变量初始化时机,以及为什么没有该变量。

1)org.apache.oozie.util.ELEvaluator中有个private Map<String, Object> vars;变量,用于存放流程中的变量。

2)vars变量赋值有setVariables & setVariable两个方法。

3)赋值的地方有:org.apache.oozie.util.ELUtils.resolveAppName() 方法;

4)搜索 https://github.com/apache/oozie/search?utf8=%E2%9C%93&q=ELUtils&type= 得到resolveAppName被调用的,wf提交的类,org.apache.oozie.command.wf.SubmitXCommand.submitJob(Configuration conf, boolean startJob) 中conf的源头。

5)


4、解决方式


========================================

放弃了,这个应该是hue oozie 的BUG ,在“Sync Workflow”时重新加载参数时有问题。

hue oozie报错ELException: variable [wf] cannot be resolved问题

解决方式:每次修改Coordinator依赖的Workflow 和action依赖的文件时,都kill掉Coordinator重启。