読者です 読者をやめる 読者になる 読者になる

Gblog

おもにTips

SQL TRACE の生トレース

生トレースみるのは、バインド変数の確認や待機イベントの分析時でしょうか。

PARSE とか WAIT とか STAT とか、いろいろな情報が出力されていますが、いつも忘れてしまうのは XCTEND。

トランザクションの終了を意味するトレースです。

COMMIT は

XCTEND rlbk=0, rd_only=0, tim=1455033424011458

ROLLBACK は

XCTEND rlbk=1, rd_only=0, tim=1455033424075948

です。rlbk で判断できます。

たまにしか見ないから、忘れちゃうんですよね・・・。

ちなみに、DDL 実行時の暗黙的 COMMIT なんかも SQL TRACE に出力されます。

 

あと忘れてしまうのはエラー。

エラーは2種類あるようです。

ERROR #139786572812992:err=1 tim=1455033579090050

PARSE ERROR #139786572812992:len=31 dep=0 uid=161 oct=2 lid=161 tim=1455033579117158 err=942

パース・エラーと、データ(フェッチ)・エラーみたいです。

上が ORA-1(一意制約違反)で、下が ORA-942 (表が存在しません)になります。