Oracle データベースでは、データベース リンクを介してある DB から別の DB にデータをコピーする大きな PL/SQL プロシージャが定期的に実行され、数時間後に次のエラーで失敗します。
ORA-03150: end-of-file on communication channel for database link
ORA-02063: preceding line from DBPREMOTE
ORA-06512: at "DBLOCAL.JOB_NAME", line 710
...
ORA-06512: at line 1
行 710 は、プロシージャの最初の行です。
execute immediate 'set constraints all deferred';
次に、手順はいくつかの挿入と更新を行いますが、PK、データが無効、またはその他の理由により、ある時点で失敗していると思います。実際にそこで失敗しているからではなく、最初の行であるため、例外がその行を指していると思いますが、実際の例外は確かではありません。
実際の例外を取得して処理できる可能性はありますか?