OOzie Shell -Impala 操作 XML 错误

Posted

技术标签:

【中文标题】OOzie Shell -Impala 操作 XML 错误【英文标题】:OOzie Shell -Impala action XML error 【发布时间】:2016-07-29 19:13:32 【问题描述】:

我正在尝试使用 ozzie 运行示例 impala 查询。运行 shell 时出现以下错误

错误:E0701:E0701:XML 架构错误,cvc-complex-type.2.3:元素 'shell' 不能有字符 [children],因为类型的内容 类型是仅元素。

HDFS 中的 Workflow.xml

  <workflow-app name="shell-impala-select-wf" xmlns="uri:oozie:workflow:0.4">
    <start to="shell-impala-select"/>
        <action name="shell-impala-select">
            <shell xmlns="uri:oozie:shell-action:0.1">
                <job-tracker>$jobTracker</job-tracker>
                <name-node>$nameNode</name-node>
                <configuration>
                    <property>
                        <name>mapred.job.queue.name</name>
                        <value>$queueName</value>
                    </property>
                </configuration>
                <exec>script.sh</exec>
                <file>$appPath/script.sh#script.sh</file>
                <file>$appPath/first_impala.iql#first_impala.iql</file>
           </shell>
           <ok to="end"/>
           <error to="kill"/>
        </action>
      <kill name="kill">
             <message>Action failed, error message[$wf:errorMessage(wf:lastErrorNode())]</message>
      </kill>
    <end name="end"/>
</workflow-app>

我检查了..这是一个有效的 XML.first_impala.iql 有一个 select count(*) 查询。

【问题讨论】:

【参考方案1】:

Oozie 验证命令表明这是有效的 XML。不过,我最近遇到了我自己的 XML 的相同错误消息。这是由一些无效的空白字符以某种方式进入我的 XML 引起的(很可能是杂散的复制/粘贴)。尝试从每行中删除所有前导/尾随空格,并查找任何其他可能无效的字符。 Stack Overflow 可能已从您的帖子中删除了无效字符。

【讨论】:

感谢 bduffin 成功了。特殊字符是问题

以上是关于OOzie Shell -Impala 操作 XML 错误的主要内容,如果未能解决你的问题,请参考以下文章

Oozie shell 动作内存限制

oozie的shell-action中加入hive脚本命令启动执行shell同时操作hive,抛异常Container killed on request. Exit code is 143 Cont

在 oozie shell 动作中运行 pig

Apache Oozie:Oozie调度shell脚本

使用 oozie 自动化 shell 脚本

工作流调度引擎---Oozie