web-dev-qa-db-ja.com

コード3 / SQLSTATE = 57016が発生した場合のオーバーライド/キル

私のプロセスが前処理目的で使用する一時テーブルに一括読み込みを実行するときに、問題が数回発生しました。何らかの理由で一括読み込みが失敗し(これは個別に調査して対処しています)、一括読み込みを行っていたテーブルがロックされます。静止/静止解除、さらにはDB2を再起動しても、このテーブルのロックは解放されません。

以下は、毎回受け取る問題のエラーのスクリーンショットです。

Here is the screenshot of the error in question

このエラーコードはテーブルは「ロードペンディング」状態にあります。このテーブルに対して以前にLOADを試行した結果、エラーが発生しました。LOAD操作が再開または終了されるまで、テーブルへのアクセスは許可されません。

これを回避する、またはこの特定のテーブルへのアクセスを回復するコマンドまたは方法はありますか?このバルクロードの実行時に他の多くのプロセスが実行されているため、DB2の再起動は非常に望ましくないオプションであり、今回のケースではテーブルを解放していません。

これで十分な情報が得られない場合は、お詫びします。必要に応じて、他に何を提供すればよいか教えてください。

2
SMT

LOADが中断されたため、テーブルはLOAD PENDING状態になりました。 LOAD PENDING状態を解除するには、次のいずれかを発行する必要があります。

  • LOAD TERMINATEは操作をロールバックします
  • LOAD REPLACEはテーブル全体をリロードします
  • LOAD RESTART

また、テーブルをLOAD PENDING状態から解除する前にバックアップを取らないでください。

詳細については、インフォメーションセンターの 中断されたロード操作の再開 を参照してください。

3
Chris Aldrich