在oozie中有Bundle、Coordinator和Workflow三种类型的job,他们之间可以有以下包含关系。

Bundle > Coordinator > Workflow。

1. 重新运行一个Coordinator job,可以通过如下命令:

oozie job -rerun 0000034-180116183039102-oozie-hado-C -refresh -action 1-4

0000034-180116183039102-oozie-hado-C 表示coordinator的job id-action 表示包含的action对应的序号的1-4,即重新运行历史的4次job。

2. 如果只想重新运行一个workflow job,可以通过如下命令:

oozie job -rerun 0000411-180116183039102-oozie-hado-W -config rerun_workflow.xml

或者通过-D 参数直接设置 (上面rerun_workflow.xml中内容也是oozie.wf.rerun.failnodes=false的xml形式而已)
oozie job -rerun 0000411-180116183039102-oozie-hado-W -D oozie.wf.rerun.failnodes=false

否则会报错如下:

Error: E0401 : E0401: Missing configuration property [oozie.wf.rerun.skip.nodes OR oozie.wf.rerun.failnodes]

oozie.wf.rerun.failnodes 参数含义:true指在失败的节点重新运行,false指不在失败的节点运行oozie.wf.rerun.skip.nodes 指定跳过哪些节点运行

 

注意: 使用rerun重新运行workflow的job时,在coordinator中配置的参数会失效,因此通常是rerun一个coordinator程序。

另外在worfkflow程序中,也可以按照如下配置来自动重试:

retry-max: 表示重试次数,如果该配置大于系统的配置最大重试次数,则取系统配置的最大次数

retry-interval: 重试时间间隔,3分钟。 

总体可以解释为:每3分钟重试一次,一共重试5次。

    <!-- 统计day: dm_guba_loginlog --><action name="hive-node"  retry-max="5" retry-interval="3"><hive xmlns="uri:oozie:hive-action:0.2"><job-tracker>${jobTracker}</job-tracker><name-node>${nameNode}</name-node><job-xml>${hive_site_path}</job-xml><configuration><property><name>mapred.job.queue.name</name><value>${queueName}</value></property></configuration><script>script.q</script><param>tmp_table=tmp_dm_guba_loginlog_day</param><param>params_dt=${params_dt}</param></hive><ok to="java-node"/><error to="senderror"/></action>

oozie调度中的重试和手工rerun一个workflow相关推荐

  1. 通过shell脚本来rerun一个oozie调度失败的job,从而可以跳过执行失败的节点

    标题很长:通过shell脚本来rerun一个oozie调度失败的job,从而可以跳过执行失败的节点 不过目前从oozie调度测试的例子来看,oozie本身的retry好像并没有参数可以控制跳过失败的节 ...

  2. CDH中hue使用oozie调度的文件注意事项

    CDH中hue使用oozie调度的文件注意事项 三个文件 job.properties 这个很重要,往往在创建得时候没有的,可以从其他地方cp也可以的 [root@hadoop001 bin]# su ...

  3. CDH中hue的oozie调度流程shell

    CDH中hue的oozie调度流程shell 1.将shell脚本上传到对应的hdfs的路径下 2.创建工作流 3.编辑工作流 4.上传脚本 5.添加文件 6.指定执行oozie的时候使用的Hadoo ...

  4. Kubernetes调度器源码学习(三):Preempt抢占机制、调度失败与重试处理

    本文基于Kubernetes v1.22.4版本进行源码学习 5.Preempt抢占机制 当高优先级的Pod没有找到合适的节点时,调度器会尝试抢占低优先级的Pod的节点.抢占过程是将低优先级的Pod从 ...

  5. 利刃 MVVMLight 8:DispatchHelper在多线程和调度中的使用

    原文:利刃 MVVMLight 8:DispatchHelper在多线程和调度中的使用 在应用程序中,线程可以被看做是应用程序的一个较小的执行单位.每个应用程序都至少拥有一个线程,我们称为主线程,这是 ...

  6. Controller中目标场景及手工场景

    场景是一种用来模拟大量用户操作的技术手段,通过配置和执行场景向服务器产生负载,验证系统各项性能指标是否达到用户要求. 新建场景 1.通过VuGen直接切换当前脚步进入到场景 在菜单下打开Create ...

  7. 水库调度matlab,基于MATLAB模糊系统在水库调度中的应用初探_廖明潮

    文章编号:1009-4881(2004)01-0022-03 收稿日期:2003-04-25 修回日期:2003-12-15 作者简介:廖明朝(1968-),男,湖北省洪湖市人,讲师. 基于MATLA ...

  8. 操作系统 系统开销比率_操作系统中的最高响应比率下一个(HRRN)调度

    操作系统 系统开销比率 操作系统中的HRRN调度是什么? (What is HRRN Scheduling in Operating System?) HRRN is the abbreviation ...

  9. 在VS中手工创建一个最简单的WPF程序

    如果不用VS的WPF项目模板,如何手工创建一个WPF程序呢?我们来模仿WPF模板,创建一个最简单的WPF程序. 第一步:文件--新建--项目--空项目,创建一个空项目. 第二步:添加引用,Presen ...

最新文章

  1. Prokka:快速原核基因组、宏基因组基因注释
  2. java传参怎么理解_如何理解Java的值传递
  3. linux tomcat守护_linux-非root用户运行tomcat(示例代码)
  4. 初探基于GameProtocol和NetFrame的RPG服务器
  5. redis缓存跟数据库数据不一致问题解决
  6. python list(列表)操作用法总结
  7. Ubuntu14.04安装mysql
  8. LINQToSQL中如何更好的手动设置导航字段,并返回实名类型而不是匿名类型
  9. PHP毕业设计——许愿墙(有源码)
  10. 拿火柴游戏(拿子游戏)
  11. python list超出范围_错误:列表索引超出范围Python(Error: List Index out of Range Python)...
  12. 一个硬盘的感人爱情故事
  13. C#中使用设置(Settings.settings) Properties.Settings.Default .
  14. 高并发部署策略 多副本服务+nginx均衡负载
  15. 大一计算机专业自我总结,计算机专业大学的毕业生自我鉴定
  16. 退役赛总结(山东省第八届ACM程序设计大赛总结)
  17. 【愚公系列】2021年11月 攻防世界-进阶题-MISC-032(就在其中)
  18. 12月第3周网络安全报告:发现放马站点域名131个
  19. Dr.Web(大蜘蛛) 下载
  20. JAVA JIT编译

热门文章

  1. 设计模式之观察者模式(Observer)摘录
  2. python re match groups_python re.match与re.search的区别
  3. map multimapc++_C++的Map和Multimap
  4. Java项目:日历万年历(java+swing)
  5. 两条波浪线符号_四年级数学上册第二单元“线的认识”作业单(附带答案)
  6. python编码问题无法复现_Python编码问题详解
  7. 【java】暑期需要复习的操作
  8. Angular应用开发中遇到的问题
  9. Java程序的运行原理 用记事本编写Java代码
  10. Adobe源码泄漏?3行代码搞定,Flash动画无缝导入Android/iOS/cocos2dx(二)