活動時保管を使用して保管されたデータを同期する
複数の保管操作用にチェックポイントが設定されているデータを全同期するには、保管同期の開始 (STRSAVSYNC) コマンドを使用して、同期する保管操作の数を指定します。 次に、各操作に全同期を指定して、各保管操作を開始します。 複数の保管操作が異なるジョブで並行して実行されます。
オブジェクト保管 (SAV)、ライブラリー保管 (SAVLIB)、オブジェクト保管 (SAVOBJ)、または変更されたオブジェクトの保管 (SAVCHGOBJ) コマンドの任意の組み合わせを同期することができます。 例えば、STRSAVSYNC、SAV、および SAVLIB といったコマンドを指定することができます。 ディレクトリーおよびライブラリーの複数の保管操作を同期するには、以下の手順を完了します。
さらに、バッチ・モードで複数の保管操作を同期したり、同じジャーナルにジャーナル処理されている 2 つの異なるライブラリーの保管操作を同期したりすることができます。
以下の例では、ライブラリーおよびディレクトリーの保管時にチェックポイントが設定されたデータを同期する方法について示します。 STRSAVSYNC コマンドは、2 つの活動時保管操作の SYNCMYDATA という同期チェックポイントを開始します。 2 つの関係する保管操作がバッチ処理用にサブミットされます。 最初の活動時保管操作は、MYLIB ライブラリーを TAP01 デバイスに保管し、2 番目の活動時保管操作は MYDIR ディレクトリーを TAP02 デバイスに保管します。 関係する各保管操作は、保管するデータの全同期の SAVACT 値および同期 ID (SYNCMYDATA) を指定します。
STRSAVSYNC SYNCID(SYNCMYDATA) NUMSYNC(2)
SBMJOB CMD(SAVLIB LIB(MYLIB) DEV(TAP01)
SAVACT(*SYNCLIB) SYNCID(SYNCMYDATA))
SBMJOB CMD(SAV DEV('/QSYS.LIB/TAP02.DEVD') OBJ(('/MYDIR'))
SAVACT(*SYNC) SYNCID(SYNCMYDATA))
次の表は、活動時保管処理中に発生する可能性があるエラーをリストしたものです。 保管同期の終了 (ENDSAVSYNC) コマンドを使用して、活動中の同期チェックポイントおよびチェックポイントに到達していない関連する活動時保管操作を終了できます。
| エラー・メッセージ | 原因 | 処置 |
|---|---|---|
| CPF37BC,Synchronization ID &1 ended. Wait time exceeded. | 1 つ以上の保管ジョブが、STRSAVSYNC コマンドで指定された待ち時間 (STRSAVWAIT) 内で開始できません。 | より大きな値の待ち時間 (STRSAVWAIT) および保管コマンドを使用して、STRSAVSYNC コマンドを再発行します。 |
| CPF37BB,Synchronization ID &1 already started | STRSAVSYNC は既存の同期 ID を指定します。 | 固有の同期 ID (SYNCID) を使用して STRSAVSYNC コマンドを再発行します。 |
| CPF37BE,Synchronization ID &1 not started | システムは保管ジョブを同期しようとしましたが、ユーザーは STRSAVSYNC コマンドを発行しませんでした。 | STRSAVSYNC コマンドを発行してから、SAV または SAVLIB コマンドを発行します。 |
| CPF37B9,Synchronization ID &1 in use | システムは、SYNCID 値が同じ複数の保管ジョブ操作を開始しようとしました。 | 同期する保管ジョブの正しい数 (NUMSYNC) を使用して、STRSAVSYNC コマンドを再発行します。 例えば、5 つの保管ジョブが必要であるのに、STRSAVSYNC コマンドで 4 つの保管ジョブしか指定されていない場合には、以下を行う必要があります。
|