oracle job执行时间往后延迟分析

问题描述:job的执行时间往后推迟很长时间,导致查询的数据不再时间范围内。
原因分析:
原因一:job执行时间间隔没有加trunc截取精度,而是直接使用sysdate+1/(24*60),由于job启动需要时间或扫描精度,导致下次执行时间用的标准时间已经不是启动JOB的时间,而是延迟几秒,执行一次就延迟几秒,执行次数多了延迟就长了
原因二:由于job执行的存储过程异常,导致job执行失败,查询select * from dba_jobs的failures字段加1,同时下次执行时间为本次执行时间+2分钟,如果再次失败,由下次执行的时间为上次开始执行时间+4 , 再次失败则+8,2的阶乘,以此类推,直到失败16次后,job就broken了,不再尝试执行。执行成功后,failures字段清0
问题处理:
原因一处理:job的执行时间间隔加trunc函数,trunc(sysdate,'hh24')+3/24
原因二处理:查看执行的失败存过,处理后,重新编译

如果您觉得我的文章给了您帮助,请为我买一杯饮料吧!以下是我的支付宝,意思一下我将非常感激!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

咫尺的梦想ing

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值