潜伏バグからのロングフリーズ

Javaっぽいエンジニアの徒然草

ORA-00060とORA-02049

デッドロックについて問い合わせを受けたのでメモ。

 

デッドロック ORA-00060

分散トランザクション待機 ORA-02049

 

デッドロックは発生した瞬間エラーとなり、タイムアウト設定不可。

→ ORA-00060が発生したら設計を見直し。

 

WAIT句対象レコードにロックがかかっていた時に、指定時間待機する。

→ ORA-02049は状況次第でこれで対処できそう。

  もちろんいくら待ってもロックが解除されないような設計であれば見直し。

 

ORA-02049が発生してとりあえずロックを解除したい場合は過去記事で書いた通りにプロセスをkill。