问题描述
我遇到了一个 oracle 作业的问题
此作业每 10 分钟运行一次,它从包中调用一个过程。 在程序内部,有一个选择,然后是一个循环。 选择可以返回 10 到 1000 行
一个星期以来,一切都运行良好(但突然之间好像工作没有调用程序。 它每 10 分钟成功运行一次,但该过程不影响行。
我自己运行这个程序,它运行正常。
DBMS 调度程序运行详细信息未显示任何内容。一切都很顺利。唯一的区别是问题前的运行时间是5到30秒,问题后的时间只有1秒。
你知道还有什么好看的吗?
解决方法
记录程序中发生的事情。如何?创建一个自治事务过程,将日志信息插入到单独的表中并提交;由于它是一个自治事务过程,commit
不会影响事务的其余部分(即主过程本身)。
记录每个步骤,然后查看结果。可能发生了一些事情,但是 - 很难猜测是什么。一种选择可能是您使用了
exception
when others then null;
成功隐藏问题的异常处理程序。