본문 바로가기
빅데이터/oozie

[oozie] 워크플로우의 액션에 오류가 발생하면 retry 하게 설정 하기

by hs_seo 2017. 12. 22.

우지의 워크플로우 액션에서 오류가 발생하면 자동으로 재작업 하게 하는 기능은 

다음과 같이 retry-max, retry-interval을 이용하여 설정한다. 


    <action name="HQL" retry-max="3" retry-interval="1">

        <hive xmlns="uri:oozie:hive-action:0.4">

            <script>sample.hql</script>

            <param>runDate=${runDate}</param>

        </hive>

        <ok to="end" />

        <error to="fail" />

    </action>


워크플로우의 <action> 태그에서는 어디에서나 동작하지만 

oozie-site.xml 에 설정된 오류에 대해서만 동작한다. (oozie-default.xml 참고)


oozie.service.LiteWorkflowStoreService.user.retry.error.code = JA008, JA009, JA017, JA018, JA019, FS009, FS008



따라서 액션 내부적으로 발생하는 오류에 대해서는 동작하지 않을 수도 있다. 

이럴때는 다음의 설정에 오류코드를 추가하면 우지가 자동으로 retry 를 수행한다. 


oozie.service.LiteWorkflowStoreService.user.retry.error.code.ext = ALL



우지 로그에서 확인할 수 있는 오류코드를 넣어도 되고, 

ALL 로 설정하면 모든 오류에 대하여 자동으로 retry 를 수행한다. 


우지의 conf/oozie-site.xml 에 다음을 추가하고, 우지를 재부팅하면 된다. 


  <property>

    <name>oozie.service.LiteWorkflowStoreService.user.retry.error.code.ext</name>

    <value>ALL</value>

  </property>




반응형