2016-10-02 6 views
1

Я пытаюсь запустить простую работу Oozie, чтобы извлекать данные из локальной базы данных MySQL, используя Sqoop. Ниже мой workflow.xml:Oozie Job не работает

<workflow-app name="sqoopoozietest" xmlns="uri:oozie:workflow:0.1"> 
<start to="sqoopconnect"/> 
<action name="sqoopconnect"> 
    <sqoop xmlns="uri:oozie:sqoop-action:0.2"> 
     <job-tracker>horton-n2.hdp.local:8050</job-tracker> 
     <name-node>hdfs://horton-n1.hdp.local:8020</name-node> 
     <prepare> 
      <delete path="hdfs://horton-n1.hdp.local:8020/user/mannb/sqoopoozie/sqoopinput"/> 
     </prepare> 
     <configuration> 
      <property> 
       <name>mapred.compress.map.output</name> 
       <value>true</value> 
      </property> 
     </configuration> 
     <command>import --connect jdbc:mysql://horton-n1.hdp.local/sqooptest --table sampledata --username sqoop --password sqoop123 --target-dir --driver com.mysql.jdbc.Driver hdfs://horton-n1.hdp.local:8020/user/mannb/sqoopoozie/sqoopinput -m 1</command> 
    </sqoop> 
    <ok to = "sqoopend"/> 
    <error to = "kill"/> 
</action> 

    <kill name = "kill"> 
     <message>"Workflow failed."</message> 
    </kill> 

    <end name = "sqoopend" /> 
</workflow-app> 

Основная ошибка, я получаю сообщение об ошибке от /var/log/oozie.log:

javax.servlet.jsp.el.ELException: Функция " wf: errorMessage "требует 1 аргумент, но был принят 0

Я думал, что это странно, поскольку я передаю аргумент в сообщение с именем kill:« Workflow failed. ».

Ниже мой job.properties файл:

nameNode=hdfs://horton-n1.hdp.local:8020 
jobTracker=horton-n2.hdp.local:8050 

queueName=default 
#oozie.use.system.libpath=true 

oozie.wf.application.path=${nameNode}/user/mannb/sqoopoozie/workflow.xml 

Любая помощь очень ценится.

ответ

1

Изменить код, как указано ниже.

<error to = "kill_job"/> 

<kill name = "kill_job"> 
     <message>Workflow failed</message> 
</kill> 
+0

Я сделал это изменение и все еще получаю ту же ошибку в oozie.log. Я раскомментировал # oozie.use.system.libpath = true из job.properties, так как комментирование этого вызвало проблему с поиском Sqoop .jars. – user2432819

+0

У меня была ошибка в моей команде импорта sqoop. После исправления он успешно выполнил, все еще не уверен, почему код ошибки не будет возвращаться должным образом. Это отвлекло меня от основной проблемы. Спасибо за ваши вклады. – user2432819

+0

Это также отвлекало меня, но в сценарии ошибок оно должно работать, вам, возможно, придется дважды проверить один раз. –

Смежные вопросы