ページの先頭行へ戻る
Interstage Job Workload Server V9.2.0 バッチ開発ガイド

2.4.1 ファイルの排他機能

ジョブ単位にファイルの排他を獲得します。また、ジョブステップ終了時またはジョブ終了時に、ジョブが使用したファイルの排他を解除します。これにより、アプリケーションや運用で排他機構を用意する必要がなくなり、同じファイルを更新するジョブが同時に動作することで発生するファイルの破壊を防止します。


2.4.1.1 ファイルの排他の種類

ファイルを更新するジョブを実行する場合は、そのジョブが終了するまで、ほかのジョブがファイルを参照、および更新できないようにする必要があります。また、複数のジョブがファイルの参照だけする場合には、同時に参照できるようにする必要があります。ファイルの排他機能は、目的に応じてファイルの排他の種類を選択できます。

排他の種類

ファイルの排他の種類は、以下のとおりです。

ファイルの排他の種類は、バッチジョブ定義で設定します。
設定方法は、“2.2.2.4 資源定義”を参照してください。


後続ジョブの動作

先行ジョブで使用されているファイルに対して、後続ジョブの動作を以下から選択します。


ジョブの排他獲得状況と排他待ち状況は、btfwexcinfoコマンドで確認できます。btfwexcinfoコマンドについては、“Interstage Job Workload Server リファレンス”を参照してください。

待ち指定、およびエラー指定を指定したときのジョブの動作を以下に示します。


待ち指定の場合の後続ジョブの動作

待ち指定の場合の後続ジョブの動作は以下のとおりです。

ジョブの指定と動作

後続ジョブ

排他モード

共用モード

先行ジョブ

排他モード

後続ジョブが排他待ち

後続ジョブが排他待ち

共用モード

後続ジョブが排他待ち

共用で使用

先行ジョブが共用モードでファイルを排他している場合

先行ジョブが排他モードでファイルを排他している場合


エラー指定の場合の後続ジョブの動作

エラー指定の場合の後続ジョブの動作は、以下のとおりです。

ジョブの指定と動作

後続ジョブ

排他モード

共用モード

先行ジョブ

排他モード

後続ジョブがエラー

後続ジョブがエラー

共用モード

後続ジョブがエラー

共用で使用

先行ジョブが共用モードでファイルを排他している場合

先行ジョブが排他モードでファイルを排他している場合


2.4.1.2 ファイルの排他の有効範囲

ファイル管理機能は、バッチジョブ定義にもとづいてファイルの排他を保持し続けます。
排他の獲得契機と解除契機は、以下のとおりです。

上記のように、ジョブで使用するすべてのファイルの排他をジョブ開始時にあらかじめ獲得することで、ジョブ実行中のデッドロックの発生を防止します。
ジョブ開始時に獲得する排他の有効範囲を以下に示します。