大家都知道,在工作中用kettle做数据同步时,很多时候需要对数据进行校验,本人这次就被【成功】组件坑了。在任务调度系统串行调度多个作业时,原本预想的是第一个作业校验出问题后续作业就停止调度的,但目前实际情况是不管校验结果是什么,所有作业都全部跑了一遍。
1、下面创建了两个作业进行测试,校验结果为错误(两个作业只有一个组件的区别):
2、创建完两个作业,下面用调度系统创建任务组串联调度两个作业:
3、下面看测试结果,第3条记录是按以上顺序执行的结果,可以发现整个任务组只执行了第一个作业;第1/2条记录是把以上两个作业调换顺序后执行的结果,可以发现最后两个作业都执行完成了。
总结:通过以上测试可以看出:作业执行 中止作业 的分支时,整个作业最终的状态为“失败”,所以调度不会执行任务组中的后续作业;作业以 成功 组件结束时,整个作业执行完成的最终状态为“成功”,调度按正常状态顺序执行,达不到校验的效果。
可能描述得有些不清楚,大概意思能明白就OK。