我正在尝试使用oozie测试运行一个简单的配置单元脚本,但是我不断遇到一个我无法理解的错误。
每次提交作业时,都会收到一条错误消息,上面写着“job failed,error message[parameter expression must contain an assignment:jobrequest]”。但是,我定义了这个参数,并在最初提交配置时为其赋值。
有问题的参数是我试图创建的外部配置单元表名。在oozie工作流中,我在此处定义传递给配置单元脚本的表名参数:
<param>${hiveTableName}</param>
然后,我创建一个job.xml,提交给oozie,其中这个参数的赋值如下:
<property>
<name>hiveTableName</name>
<value>jobRequest</value>
</property>
有没有其他人遇到过这样的问题,或者知道是什么原因造成的?似乎参数已经正确定义和分配,但作业仍然失败,并显示上述错误消息。如果有帮助的话,我使用的xml命名空间是:
<hive xmlns="uri:oozie:hive-action:0.2">
1条答案
按热度按时间dl5txlt91#
我收到一条错误消息,上面写着“job failed,error message[参数表达式必须包含赋值:jobrequest]”
它抱怨param标记中缺少赋值运算符。查看文档了解更多详细信息https://oozie.apache.org/docs/3.3.1/dg_hiveactionextension.html
第一种解决方案,使用如下所示的属性标签
添加如下参数:
通过job.properties的第二种解决方案:您希望通过
<param>
标记,在job.properties中定义变量,然后使用<param>
标签。e、 g在job.properties中添加,
然后把
<param>hiveTableName=${hiveTableName}</param>
在oozie工作流配置单元操作中