DB相互参照の再利用 (RCLDBXREF)
| 実行可能場所: すべての環境 (*ALL) スレッド・セーフ: いいえ |
パラメーター 例 エラー・メッセージ |
データベース相互参照の再利用(RCLDBXREF)コマンドは,特定のライブラリーのデータベース相互参照カタログ・データを回復します。このコマンドは,記憶域の再利用(RCLSTG)コマンドによって指定された機能のサブセットを提供して,SELECT(*DBXREF)を指定することでシステムのデータベース相互参照カタログ・データを再利用します。異なる点は,このコマンドではシステムが制限状態である必要がなく,システム上のすべてのライブラリーではなく特定のライブラリーの再利用をサポートしている点です。
さらにこのコマンドはユーザーに対して,どのカタログに矛盾があるか,およびどのライブラリーが影響を受けているかを判別するインターフェースを提供します。
補助記憶域プール(ASP)グループが現行スレッドに対して設定されている場合には,このコマンドは,そのASPグループ中の独立ASPに対して影響を与え,さらにシステムおよび基本ユーザーASP (ASP番号1から32)に対して影響を与えます。
このコマンドは,データベース相互参照カタログで問題が起こり,重大ななビジネス要件によりRCLSTG SELECT(*DBXREF)がオプションでない時にのみ使用されます。
このコマンドは制限状態で実行する必要がないため,相互参照情報を常に回復できるわけではありません。このような場合には,RCLSTG SELECT(*DBXREF)を実行する必要があります。
相互参照情報を回復するのにこのコマンドを使用する時には,再利用されているライブラリー中のオブジェクトを使用または変更することをアプリケーションに対して許可してはいけません。これに失敗すると,予測できない結果となる可能性があります。
RCLDBXREFで問題が訂正されない場合には,再利用されるライブラリーは,このコマンドを使用する前に存在していたより多くの矛盾がある場合があります。このような場合には,RCLSTG SELECT(*DBXREF)を実行する必要があります。
制約事項:
- このコマンドを使用するには,すべてのオブジェクト(*ALLOBJ)特殊権限がなければなりません。
| 上 |
オプション (OPTION)
コマンドが行う処置を指定します。このコマンドは,問題を検査することができ,あるいはこれらを修正しようとすることができます。
- *CHECK
- コマンドは,相互参照カタログの矛盾が見つかったかどうかの確認するよう検査します。各カタログがインスペクションされ,そのカタログに矛盾データをもつことがわかった各ライブラリーのジョブ・ログに診断メッセージ(CPD32A7)が送信されます。すべての相互参照カタログが検査された後,問題が見つかった場合にはエスケープ・メッセージ(CPF32AC)がシグナル通知されます。カタログで矛盾が見つからなかった場合には,相互参照データが正しいと思われることを示す完了メッセージ(CPC32AC)が送信されます。
- *FIX
- コマンドは,ライブラリー (LIB)パラメーターに指定したライブラリーの相互参照データを修正しようとします。
注: 場合によっては,記憶域の再利用(RCLSTG)コマンドを実行し,SELECT(*DBXREF)を指定することによって,データベース相互参照カタログの完全な再利用が必要であるということをシステムが判別することがあります。この場合には,CPF32ABエスケープ・メッセージが送信され,ライブラリーの相互参照データは修正されません。
*FIXオプションが指定されている時には,再利用プロセスを中断する,あるいは再利用されているライブラリー中のオブジェクトの使用または変更を試行することのないよう,注意しなければなりません。これに失敗すると,再利用が失敗する可能性があります。再利用が失敗した場合には,このコマンドを起動する前に存在したより多くのカタログ矛盾がそのライブラリーに存在する可能性があります。これが起こった場合には,このコマンドを再度使用することによって回復することができる可能性があります。問題が訂正されない場合には,記憶域の再利用DBXREF (RCLSTG SELECT(*DBXREF))が必要となります。
| 上 |
ライブラリー (LIB)
回復するライブラリーを指定します。
注: このパラメーターが有効となるのは,オプション (OPTION)パラメーターに*FIXが指定されている場合のみです。
- *ERR
- 相互参照カタログ中にエラーがあるとわかっているすべてのライブラリーで回復が試行されます。コマンドは,OPTION(*CHECK)を指定したRCLDBXREFが以前実行された時に矛盾データをもつことがわかったライブラリーのすべての相互参照データを回復しようとします。
- 名前
- 相互参照データが修正されるライブラリーの名前を指定してください。指定したライブラリーが,カタログに矛盾データをもつとわかっていない場合でも,そのライブラリーのすべての相互参照データが回復されます。ライブラリーは,このコマンドに指定されるように存在している必要はありません。
| 上 |
例
例1:相互参照問題の検査
RCLDBXREF OPTION(*CHECK)
このコマンドは,エラーについて相互参照カタログを検査します。
例2:相互参照カタログの回復
RCLDBXREF OPTION(*FIX) LIB(*ERR)
このコマンドは,エラーであるとわかっているすべてのライブラリーの相互参照情報を回復します。
例3: 1つのライブラリーの相互参照カタログ・データの回復
RCLDBXREF OPTION(*FIX) LIB(ABCD)
このコマンドは,ライブラリーABCDの相互参照情報を回復します。
| 上 |
エラー・メッセージ
*ESCAPE メッセージ
- CPF32AB
- データベース相互参照情報が回復されていません。
- CPF32AC
- データベース相互参照問題が存在します。
- CPF32A4
- システム相互参照プログラムで内部障害がありました。
| 上 |