Oozie Hive Action 由于参数分配而不断失败?
Oozie Hive Action keeps failing due to parameter assignment?
我正在尝试使用 Oozie 测试 运行 一个简单的 Hive 脚本,但我不断收到无法理解的错误。
每次提交作业时,我都会收到一条错误消息 "Job failed, error message[Parameter expression must contain an assignment: jobRequest]"。但是,我在最初提交配置时定义了这个参数并为其赋值。
有问题的参数是我尝试创建的外部配置单元 table 名称。在 Oozie 工作流中,我在此处定义了传递给 Hive 脚本的 table 名称参数:
<param>${hiveTableName}</param>
然后我创建一个 job.xml 并提交给 oozie,其中为该参数分配的值如下所示:
<property>
<name>hiveTableName</name>
<value>jobRequest</value>
</property>
有没有其他人 运行 遇到过这样的问题,或者知道是什么原因造成的?似乎参数已正确定义和分配,但作业一直失败并显示上述错误消息。如果有帮助,我使用的 xml 命名空间是:
<hive xmlns="uri:oozie:hive-action:0.2">
I get an error message that says "Job failed, error message[Parameter expression must contain an assignment: jobRequest]"
它抱怨 param 标记中缺少赋值运算符。查看文档以获取更多详细信息 https://oozie.apache.org/docs/3.3.1/DG_HiveActionExtension.html
第一个解决方案,使用 属性 标签 如下使用
<property>
<name>hiveTableName</name>
<value>jobRequest</value>
</property>
像这样添加参数:
<param>hiveTableName=${hiveTableName}</param>
通过 job.properties 的第二种解决方案:
你想用 <param>
标签传递参数,在你的 job.properties 中定义变量,然后用 <param>
标签传递。
例如在 job.properties 中添加
hiveTableName=jobRequest
然后将 <param>hiveTableName=${hiveTableName}</param>
放入 oozie 工作流配置单元操作中
我正在尝试使用 Oozie 测试 运行 一个简单的 Hive 脚本,但我不断收到无法理解的错误。
每次提交作业时,我都会收到一条错误消息 "Job failed, error message[Parameter expression must contain an assignment: jobRequest]"。但是,我在最初提交配置时定义了这个参数并为其赋值。
有问题的参数是我尝试创建的外部配置单元 table 名称。在 Oozie 工作流中,我在此处定义了传递给 Hive 脚本的 table 名称参数:
<param>${hiveTableName}</param>
然后我创建一个 job.xml 并提交给 oozie,其中为该参数分配的值如下所示:
<property>
<name>hiveTableName</name>
<value>jobRequest</value>
</property>
有没有其他人 运行 遇到过这样的问题,或者知道是什么原因造成的?似乎参数已正确定义和分配,但作业一直失败并显示上述错误消息。如果有帮助,我使用的 xml 命名空间是:
<hive xmlns="uri:oozie:hive-action:0.2">
I get an error message that says "Job failed, error message[Parameter expression must contain an assignment: jobRequest]"
它抱怨 param 标记中缺少赋值运算符。查看文档以获取更多详细信息 https://oozie.apache.org/docs/3.3.1/DG_HiveActionExtension.html
第一个解决方案,使用 属性 标签 如下使用
<property>
<name>hiveTableName</name>
<value>jobRequest</value>
</property>
像这样添加参数:
<param>hiveTableName=${hiveTableName}</param>
通过 job.properties 的第二种解决方案:
你想用 <param>
标签传递参数,在你的 job.properties 中定义变量,然后用 <param>
标签传递。
例如在 job.properties 中添加
hiveTableName=jobRequest
然后将 <param>hiveTableName=${hiveTableName}</param>
放入 oozie 工作流配置单元操作中