Oracle JOB 失敗後的重試規律

A系統需要停機變更,B系統利用job同步A中數據,由於oracle job失敗16次後會broken需要重新手動啓用,業務方想知道job失敗多久之後該job會broken(該job 5分鐘執行一次)。

JOB 失敗後的重試規律是怎麼樣的,根據 文檔 ID 103349.1描述如下:

  • If a job returns an error while Oracle is attempting to execute it, Oracle tries to execute it again.
  • The first attempt is made after one minute, the second attempt after two minutes, the third after four minutes, and so on, with the interval doubling between each attempt. 
  • If the job fails 16 times, Oracle automatically marks the job as broken and no longer tries to execute it. 
  • However, between attempts, you have the opportunity to correct the problem that is preventing the job from running. This will not disturb the retry cycle, and Oracle will eventually attempt to run the job again.

可以看到oracle自動重試規律如下:

  • 第1次重試在執行失敗1分鐘後、第2次在失敗2分鐘後、第3次在失敗4分鐘後,每次間隔時間翻倍,以此類推。
  • 在此期間可以修復該job問題,但是如果你不手動執行(或者設置job間隔執行時間),oracle依然會按照自動重試規律執行。
  • 另外,當間隔超過1440分鐘,也就是24小時,固定的重試時間爲1天。

 

未完待補充

 

參考

http://blog.itpub.net/28291944/viewspace-2146658/

Broken Jobs and the Job Queue (文檔 ID 103349.1)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章