BACKOUT 機能は、指定された 2 つのチェックポイント間に適用されたすべての更新を取り消します。 両方のチェックポイントがシーケンシャルプロテクションログの入力データセットに存在する必要があります。
BACKOUT 機能では、シーケンシャル入力に使用するテープドライブで逆順読み込みがサポートされていることを前提としています。
注意:
中断した BACKOUT 実行は、最初から再実行しなければなりません。
BACKOUT 処理の開始点として、プロテクションログのログ番号(PLOGNUM)またはセッション番号(FROMPLOG)のどちらを指定することもできます。 セッション番号を指定する場合は、TOPLOG パラメータを使用すると、処理するセッションの範囲も指定できます。
デフォルトでは、ADARES は ADARUN DBID パラメータで指定されたデータベースを処理します。 別のデータベースに対する BACKOUT 処理が必要な場合は、PLOGDBID パラメータを使用してデータベースを指定してください。
デフォルトでは、BACKOUT 処理は入力データセットの最後に到達するまで継続します。 TOCP パラメータを使用することによって、BACKOUT 処理の範囲を制限できます。
デフォルトでは、指定した入力データセットのすべてのファイルが BACKOUT 処理の対象になります。 特定のファイルを処理の対象に指定することができます。
BACKOUT 処理終了時、データベース全体に BACKOUT が指定されると、ADARES は、すべての不完全な論理トランザクションを自動的にバックアウトし、入力データセットが終了するまで継続します。 このことは、次に該当する場合にも発生します。
FILE パラメータおよび CONTINUE パラメータの 2 つが指定された場合
TOCP パラメータが指定されなかった場合
NOAUTOBACKOUT パラメータを指定してこの処理を無効にすることができます。
このドキュメントでは、次のトピックについて説明します。
PLOGNUM は、BACKOUT 処理の入力として使用するシーケンシャルプロテクションログのログ番号を指定します。 ログ番号は、データベースステータスレポートから得ることができます。
FROMPLOG は、BACKOUT 処理を開始するセッション番号を指定します。 ADARES はシーケンシャル PLOG 入力(DD/SIIN)ファイル内で正しい開始セッションを検索します。 開始点をさらに明確に定義したい場合には、FROMCP および FROMBLK パラメータを指定します。
CONTINUE は、BACKOUT 機能による排他使用のためにデータベース全体をロックします。
CONTINUE は、不完全なトランザクションによってファイルの内容が変更されていた場合、それらをファイルバックアウトの際に自動バックアウトします。 CONTINUE を指定すれば、FILE パラメータによって指定されたデータセットの不完全トランザクションによるすべての変更がバックアウトされます。
ファイルリスト中にカップリングファイルまたは拡張ファイルのコンポーネントファイルが存在する場合、通常ではデフォルトチェックとして行われるカップルファイルのペアチェックおよび拡張ファイルの全コンポーネントファイルのチェックは発生しません。したがって、IGNORECOUPLE または IGNOREEXP を指定してチェックを中止する必要はありません。
EXCLUDE は、BACKOUT 処理から除外するファイル(バックアウトされないファイル)をリストします。 これらのファイルに関するプロテクションレコードはすべて無視されます。
このパラメータは省略可能です。指定しなかった場合、ファイルは一切除外されません。 ファイル番号は 1 度だけリスト可能です。
FILE パラメータが指定されている場合、EXCLUDE パラメータに指定されたすべてのファイルが FILE パラメータにも指定されている必要があります。
EXCLUDE パラメータは、BACKOUT 実行時にトランザクションロジックが使用されるかどうかには関係ありません。
EXCLUDE パラメータは、Adabas Recovery Aid(ADARAI)によって構築されたリカバリジョブで使用するためのパラメータです。
除外されたファイルは ADAREP レポートの拡張 CPLIST にリストされます。
BACKOUT 処理ですべてのファイルを対象とする場合は、このパラメータを指定しないでください。
指定したファイルが Adabas 拡張ファイルのコンポーネントファイルである場合は、その拡張ファイルの他のすべてのコンポーネントファイルも指定する必要があります。 指定したファイルが他のファイルとカップリングされている場合は、そのファイルも指定しなければなりません。
FROMBLK は、FROMCP チェックポイントエントリが含まれるブロック番号を指定します。 このブロック番号は、データベースステータスレポートから取得でき、PLOGNUM または FROMPLOG のいずれかを参照します。 FROMBLK は、FROMCP が指定された場合にのみ指定できます。
FROMCP は、バックアウト処理の開始対象チェックポイントを指定します。 チェックポイント ID(名前)は、データベースステータスレポートから取得でき、PLOGNUM または FROMPLOG のいずれかを参照します。
バックアウト処理をログの最後から開始する場合、このパラメータを省略しなければなりません。
IGNORECOUPLE(または CONTINUE)を指定すると、FILE リストの中で、カップルファイルのペアがすべて揃っているかどうかのチェックが BACKOUT 機能で行われなくなります。 CONTINUE パラメータおよび IGNORECOUPLE パラメータの双方が指定されず、またその FILE リスト内でカップルファイルの一方が指定されていない場合、ADARES はエラーメッセージを発行して終了します。
FILE リストに Adabas 拡張コンポーネントファイルが含まれている場合、ADARES BACKOUT では、通常、リストのコンポーネントファイルに関連するすべての追加コンポーネントファイルもリストに存在していることをチェックします。存在していない場合、ADARES は BACKOUT 処理を終了してエラーメッセージを発行します。 IGNOREEXP(または CONTINUE)を指定すると、関連するコンポーネントファイルに対するチェックが行われなくなります。
MTR が YES の場合はマルチスレッド再生成機能をアクティブにし、NO の場合は使用不可にします。
マルチスレッド再生成機能がアクティブであるときは、性能を向上するために、PLOG 情報を含む複数のバッファが同時に Adabas ニュークリアスに送られます。 マルチスレッド再生成機能が使用されないときは、一度に Adabas に送られるバッファは 1 つだけです。
ニュークリアス ADARUN パラメータ MODE=SINGLE が指定されると、MTR は自動的に NO に設定されます。 Adabas がシングルユーザーモードで実行しているときはマルチスレッドは使用できません。
FILE パラメータを指定しないか、あるいは CONTINUE パラメータ付きで指定すると、MTR のデフォルト値は YES になります。 この場合、マルチスレッド再生成はデータベース全体を排他制御し、通常は有効になります。
上記以外のデフォルト値は NO です。 CONTINUE なしで FILE が指定されたときなど、マルチスレッド再生成が一部のファイルだけを排他制御する場合は、異なるファイルにアクセスする通常のアプリケーションを同時に実行できますが、運用中のアプリケーションの性能に悪い影響を与える可能性があります。
1 つの Adabas セッション中にマルチプロテクションログが作成されており、連続していくつかの BACKOUT 機能を実行しなければならない場合、自動バックアウト処理は最後の入力ログに対してのみ実行すべきです。 したがって、最後の入力ログを使用する BACKOUT 実行を除くすべての BACKOUT 実行に対して NOAUTOBACKOUT バラメータを指定しなければなりません。
注意:
NOAUTOBACKOUT パラメータはシングルユーザーモードでは指定できません。
機能の実行中にエラーになると、ユーティリティは、エラーメッセージを出力してユーザーアベンド 34(ダンプあり)またはユーザーアベンド 35(ダンプなし)で終了します。
NOUSERABEND を指定すると、ユーティリティは、エラーメッセージを出力してもアベンドしません。 代りに、メッセージ "utility TERMINATED DUE TO ERROR CONDITION"(エラーのためユーティリティを終了します)を表示してコンディションコード 20 で終了します。
MTR=YES のとき、Adabas ニュークリアスに送られる同時コール数を制限するために NPCALLS パラメータを指定できます。
NPCALLS のデフォルト値は、FILE パラメータが指定されていないか、あるいは COUTINUE 付きで指定されている場合は、ニュークリアス ADARUN パラメータ NT に 1 を加えた値か NC のどちらか小さい方になります。
FILE パラメータが CONTINUE なしで指定されている場合は、デフォルト値はニュークリアス ADARUN パラメータ NT に 1 を加えた値か、NC を 2 で割った値のどちらか小さい方になります。
NPCALLS は、主として、デフォルト値で許可される同時コール数を減らすために使います。 同時コール数が少ないと、ADARES がニュークリアスにかける負荷も少なくなります。 このことは、BACKOUT FILE と同時に実行されるアプリケーションプログラムが利用できるリソースを増やす場合は、特に役立ちます。
PARALLELREAD パラメータを使用すると、データベース全体およびファイル指向の両方の機能で、ADARES BACKOUT で処理されているファイルに同時読み取り専用アクセスができるようになります。
ファイル指向機能では、PARALLELREAD を指定することにより、ADARES はレコードバッファに "EXU=file-list" を含む OPEN コールを発行します。 これは、ADARES がアクティブな間、他のユーザーのためにファイルへの読み取り専用アクセスを可能にします。
FILE が指定されていないとき、または CONTINUE が指定されているときは、PARALLELREAD パラメータはデータベース全体でのセッションバックアウトに有効です。 このパラメータによって、データベースセッションがバックアウトされているときでも読み取り専用ユーザーがデータベースにアクセスできるようになります。
更新コマンドは拒否されます。
バックアウトが行われているデータベースセッションで更新されたレコードを、同時アクセスしているユーザーが読み取った場合は、アプリケーションの観点から論理的に間違ったレコードイメージ、または矛盾を示すレスポンスコード(113 など)が表示されることがあります。
注意:
PARALLELREAD での ADARES
オペレーション中に、アソシエータとデータストレージが位置的に異なると、ニュークリアスレスポンスが 113 または 199
になる可能性があります。
ADARUN ステートメントの DBID パラメータで指定されたデータベース以外のデータベースからのプロテクションログを使用してバックアウト処理を行う場合、PLOGDBID は、代替プロテクションログのデータベース ID を指定します。 デフォルトでは、ADARUN 指定のデータベースのデータベース ID です。
TEST パラメータは、処理を実際には行わずに構文のみをテストします。 指定したパラメータの構文だけがテストされ、値や変数の正当性はテストされません。
TOBLK は、TOCP チェックポイントエントリをもつブロック番号を指定します。 このブロック番号は、データベースステータスレポートから取得でき、PLOGNUM または FROMPLOG のいずれか、または TOPLOG(指定されている場合)を参照します。 TOBLK は、TOCP が指定された場合のみ指定できます。
TOCP は、バックアウト処理を終了させるチェックポイントを指定します。 ログの先頭までバックアウト処理を続ける場合には、TOCP を指定しないでください。 チェックポイント ID(名前)は、データベースステータスレポートから取得でき、TOPLOG(指定されている場合)あるいは PLOGNUM または FROMPLOG のいずれかを参照します。
TOPLOG は、指定された ADARES 機能によって処理される最終セッションを指定します。 FROMPLOG/TOPLOG で定義された対象範囲外のセッション番号を持つ PLOG 入力(DD/SIIN)ファイル上のセッションが ADARES で見つかった場合、このセッションは ADARES 処理から除外されます。 TOPLOG は、FROMPLOG が同時に指定されている場合にのみ指定できます。 また TOPLOG が指定されない場合には、FROMPLOG セッションがデフォルトとなります。 終了点をさらに明確に定義するには、TOCP パラメータおよび TOBLK パラメータを指定します。
ADARES BACKOUT PLOGNUM=3
全ファイルをバックアウト処理の対象とします。 プロテクションログ番号は 3 です。 バックアウト処理はログの末尾から開始し、ログの先頭で終了します。 バックアウト処理の終了時には、不完全なトランザクションの自動バックアウト(ただし方向は順方向)が実行されます。
ADARES BACKOUT FILE=4,7,PLOGNUM=11,FROMCP=CH18,FROMBLK=1864, ADARES TOCP=CH01,TOBLK=1
バックアウトはファイル 4 と 7 に限定されます。 チェックポイント CH01 と CH18 の間にファイル 4 と 7 に適用されたすべての更新が取り消されます。 CH01 はデータプロテクションログ 11 のブロック 1 にあります。 CH18 はデータプロテクションログ 11 のブロック 1864 にあります。 不完全なトランザクションの自動バックアウトは実行されません。