分散トランザクション処理機能 OpenTP1 解説

[目次][用語][索引][前へ][次へ]

4.2.4 トランザクションリカバリジャーナルファイル

<この項の構成>
(1) トランザクションリカバリジャーナルファイルの目的
(2) トランザクションリカバリジャーナルファイルの障害時の回復方法

(1) トランザクションリカバリジャーナルファイルの目的

トランザクションリカバリジャーナルファイル(TRF)とは,システムジャーナルファイルとは別に,トランザクションに関する各種のジャーナル情報を,トランザクションブランチ(UAPプロセス)ごとに取得するファイルです。TRFは$DCDIR/spool/dctjlinf/ディレクトリ下に,trfXXXXXXXX(Xは任意の整数)というファイル名でUNIXファイルとして作成されます。そのため,系切り替え構成ではTRFを使用できません。

トランザクション処理では,一つの処理が長時間掛かることが原因で,トランザクションで更新した資源のジャーナル情報が,複数のシステムジャーナルファイルにわたって取得されることがあります。トランザクション処理の途中でオンラインが停止した場合,この資源を回復するためには複数のシステムジャーナルファイルを読み込む必要があります。このため,回復に時間が掛かります。

また,使用中のシステムジャーナルファイルはスワップ先にできないため,システムジャーナルファイルの容量や数によっては,トランザクション処理が終了するまでの間に,システムジャーナルファイルのスワップ先がなくなってしまうことがあります。システムジャーナルファイルのスワップ先がなくなると,OpenTP1は異常終了します。

このような事態を避けるため,長時間掛かるトランザクション処理のジャーナルを,システムジャーナルファイルとは別のファイル(TRF)に格納します。TRFを作成することで,回復時に読み込むジャーナルの量を削減できます。また,長時間のトランザクションの実行中でも,使用中のシステムジャーナルファイルをスワップ先にでき,チェックポイントダンプを有効化できます。そのため,再開始時の回復時間を短縮できます。さらに,長時間掛かるトランザクション処理のために,ジャーナル情報のオーバフローによるOpenTP1システムの異常終了を防げます。処理が長時間となるUAPでは,TRFを取得することをお勧めします。ただし,TRFを取得した場合,システムジャーナルファイルとTRFに同じジャーナルを取得するため,トランザクション性能が悪くなります。

TRFを取得するかどうかは,サービスグループごとに,ユーザサービス定義で指定します。

(2) トランザクションリカバリジャーナルファイルの障害時の回復方法

再開始処理中にTRFに障害が発生した場合には,その旨を伝えるメッセージログが出力されます。このメッセージログが出力された場合は,jnlmkrfコマンドでTRFを回復してください。TRFの回復にはアンロードジャーナルファイルを使用します。