DB2でLOAD PENDINGを解消する
他のチームの人からある作業依頼がありました。
あるテーブルにCSVファイルのデータ(1千万件以上)をインポートしてほしいという内容でした。
なぜ依頼をしてきたかというと、独自のツールを使用してインポートしたら、何回やっても途中でフリーズしてしまうとの事でした。
そこでこちらでツール等を使わずに普通にインポートしてみました。
そしたら途中でエラーでコケました。エラーコードは「SQL0668N」、理由コードは「3」でした。
「db2 ? sql コード」で調べてみたら以下のような内容でした。
理由コード3は、以前のLOAD処理が完了していない状態でありLOAD PENDINGになっている状態。
LOAD PENDINGを解除する為に、LOADをTERMINATEする必要がある。
つまり依頼者が行った作業が完全に終わっていない状態で、不正に作業を中断した上に
さらに同作業をしようしたせいでエラーが発生しました。
色々調べてLOAD PENDING状態を解消するコマンドはこちら
db2 load from インポート対象ファイルcsv(ixf) of del terminate into スキーマ名.テーブル名
PENDINGはほんとやっかいだ( ̄_ ̄ i)