5. オリジナル RD エリアを(D)から障害発生直前の状態まで回復
4.4 オンライン業務と更新バッチ処理の同時実行
4.4.3 注意事項
×:保証しません。
−:該当しません。
更新列だけの反映処理を使用する場合は,pdorbegin コマンドに-e オプションを指定して実行してくださ い。
(2) 追い付き反映処理でのエラーのスキップ
追い付き反映処理で論理的なエラーが発生する場合,pdorend(追い付き反映処理コマンド)に-f オプショ ンを指定して実行します。-f オプションでは追い付き反映処理の制御文が指定でき,ここで反映エラース キップを指定することで,エラーが生じたデータを無視して,追い付き反映処理を続行できます。エラー となったデータ情報は,制御ファイルで指定したスキップ情報ファイルに出力します。
追い付き反映処理でのエラーをスキップする機能の概要を次の図に示します。
図 4‒13 追い付き反映処理でのエラーのスキップ機能
反映をスキップしたデータを,データベースに反映するかどうかはユーザが判断します。反映する場合は SQL などを実行して,データベースの整合性を回復します。
(1) 参照表更新時の注意
追い付き反映処理を行う場合,更新バッチ処理で対象となる表に参照表,および被参照表が含まれていて も,参照制約のチェックは行われません。そのため,参照制約に違反するデータが発生するおそれがあり ます。
したがって,更新バッチ処理で参照表,および被参照表からキーを削除する場合,オンライン業務で削除 するキーにデータが追加されないことを確認する必要があります。
また,追い付き反映処理でのエラーをスキップしていた場合,必ず参照制約のある表間でのデータ整合性 も検証してください。検証方法については,マニュアル「HiRDB システム導入・設計ガイド」を参照し てください。
なお,システム共通定義の pd_check_pending オペランドの値に USE を指定した場合,更新可能なオン ライン再編成の対象としたオリジナル世代の関連 RD エリア内の参照表が検査保留状態になります。
(2) 追い付き反映処理の開始
追い付き反映処理は,必ず更新バッチ処理が終了してから実行してください。更新バッチ処理の終了前に,
追い付き処理を実行すると,タイムアウトまたはデッドロックが発生することがあります。その場合,更 新バッチ処理が終了したことを確認したあと,再度,追い付き反映処理を実行してください。