通常シャットダウン処理
通常のシャットダウンは、 CEMT PERFORM SHUTDOWN コマンドを発行するか、またはアプリケーションプログラムが EXEC CICS PERFORM SHUTDOWN コマンドを発行することで開始されます。 それは3つの静止段階を経て行われる。 シャットダウン時に何らかの種類の切り替えられた作業単位がある場合 CICS®はメッセージ DFHRM0203 を発行します。 正常に完了した通常シャットダウン時には CICSはすべてのジャーナル・バッファをフラッシュし、すべてのジャーナル・レコードが対応する z/OS® ロガー・ログ・ストリームに書き込まれることを保証します。
最初の静止ステージ
シャットダウンの最初の静止段階では、すべての端末がアクティブであり、すべての CICS 機能が利用可能であり、多数のアクティビティが同時に実行されます。
- CICSは、 SDTRAN システム初期化パラメータまたはシャットダウンコマンドで指定されたシャットダウンアシストトランザクションを起動します。
すべてのユーザー・タスク、JVM サーバー、および Node.js アプリケーションを最初の静止ステージの間に終了する必要があるため、シャットダウンは長期実行タスク (会話型トランザクションなど) によって許容できないほど遅延する可能性があります。 シャットダウン補助トランザクションの目的は、できるだけ多くのタスクが効率よくコミットまたはバックアウトできるようにする一方で、確実に、シャットダウンが妥当な時間内に完了することです。
CICSは、シャットダウンアシストトランザクションの名前を次のように取得します- SDTRAN ( tranid ) が PERFORM SHUTDOWN コマンドで指定されているか、またはシステム初期化パラメータとして指定されている場合、 CICSはその tranid を呼び出します。
- NOSDTRAN が PERFORM SHUTDOWN コマンドで指定された場合、またはシステム初期化パラメータとして指定された場合 CICS はシャットダウントランザクションを開始しません。 シャットダウン補助トランザクションがないと、既に実行されているすべてのタスクは完了が許可されます。
- SDTRAN (または NOSDTRAN )オプションが省略されている場合、 PERFORM SHUTDOWNコマンドが実行され、システム初期化パラメータから省略されると、 CICSはデフォルトのシャットダウン支援トランザクション CESD を呼び出し、 CICS 提供のプログラム DFHCESD を実行します。
PERFORM SHUT コマンドで指定された SDTRANオプションは、システム初期化パラメータとして指定された SDTRANオプションをすべて上書きします。
- CICS 提供のトランザクション CESD によって開始された DFHCESD プログラムは、PURGE を経て KILL にエスカレートされます。 これにより、長時間実行中のタスク、JVMサーバー、 Node.jsがシャットダウンされます (「シャットダウンアシストトランザクション」 を参照)。
- 自動的に開始されるタスクは、それが 2 番目の静止ステージより前に開始される場合は、実行されます。
タスクの実行が開始される前に、 Db2®、 IBM® MQ、TCPIP などの外部リソース マネージャーがシャットダウンされると、タスクは AEY9 異常終了で失敗します。 AEY9 でのエンデューサーを回避するには AEY9 のアドバイスに従ってください。
- シャットダウン・プログラム・リスト・テーブル (PLT) の最初の部分にリストされているプログラムは、順次に実行されます。 (シャットダウン PLT の接尾語またはフルネームは、 PLTSD システム初期化パラメータで指定されていますが、CEMT または EXEC CICS PERFORM SHUTDOWN コマンドの PLT または PLTNAME オプションで上書きできます。)
- 端末入力の結果として開始される新規タスクは、そのトランザクション・コードが現在のトランザクション・リスト・テーブル (XLT) にリストされているか、トランザクション・リソース定義で SHUTDOWN(ENABLED) として定義されている場合にのみ、開始を許可されます。 トランザクションの XLT リストは、端末によって開始できるタスクを制限し、システムが制御された方法でシャットダウンされることを許可しています。 現在のXLTは、 XLT=xx システム初期化パラメータで指定されたものです。これは、CEMTの XLTオプションまたは EXEC
CICS PERFORM SHUTDOWN コマンドで上書きできます。
ただし、いくつかの CICS 提供トランザクションは、そのコードが XLT にリストされているかどうかにかかわらず、開始が許可されます。 これらのトランザクションは、CEMT、CESF、CLR1、CLR2、CLQ2、CLS1、CLS2、CSAC、CSTE、および CSNE です。
- 最後に、この段階の終了時とシャットダウン第2段階の前に CICS z/OS Communications Server とデバイスをすべてバインド解除します。
シャットダウン PLT の最初の部分にリストされている最後のプログラムが実行され、すべてのユーザー・タスクが完了して、すべての JVM サーバーおよび Node.js アプリケーションがシャットダウンされたときに、最初の静止ステージが完了します。 CICS 提供のシャットダウン・トランザクション CESD が使用される場合、このステージは、すべてのユーザー・タスクが完了するのを無期限に待つことはしません。
2 番目の静止ステージ
- 端末はアクティブではありません。
- 新しいタスクは開始が許可されません。
- シャットダウン PLT (ある場合) の 2 番目の部分にリストされているプログラムは順次に実行されます。 これらのプログラムは端末とコミュニケートすることも、新しいタスクの開始を引き起こす要求を行うこともできません。
2 番目の静止ステージは、PLT にリストされていたプログラムの最後のものが実行を完了すると終了します。
3 番目の静止ステージ
- CICSは、 CICSで定義されているすべてのファイルを閉じます。 しかし CICSはファイルをUNENABLEDとしてカタログ化しないため、 CICS後に最初の参照によって暗黙的に開くことができます。
BWO サポートに適格なファイルは、ICF カタログ・セット内に BWO がサポートされないことを示すための BWO 属性を持っています。 これにより、後続のバッチ・ウィンドウで BWO バックアップが取られるのを防ぎます。
- すべての区画外 TD キューがクローズされます。
- CICSは統計情報をシステム管理機能(SMF)データセットに書き込みます。
- CICSは、グローバル・カタログ内のドメイン・ステート・レコードの再起動タイプ・インジケータ
をウォームスタート可能
に設定します。 次に CICSを初期化する際にSTART=AUTOを指定すると、 CICS はこのインジケータのステータスを使用して、実行する起動の種類を決定します。 シャットダウンと再起動によるリカバリを参照してください。 - CICSは、ウォームキーポイントレコードを以下に書き込みます
- 端末制御およびプロファイルの場合は、グローバル・カタログ
- その他のすべてのリソースCICS。
「温かいキーポイント 」を参照。
- CICSは完了したすべての作業単位を削除し(ログテール削除)、シャントされた作業単位とウォームキーポイントのみを残します。注: アクティビティ・キーポイント指定なし AKPFREQ=0 は、 CICS が実行中のログ・テール削除のみを抑制し、シャットダウン時には抑制しません。 システム ログの z/OS 定義で RETPD=dddd を指定しない限り、 CICSはシャットダウン時に常にログのクリーンアップを実行します。 詳細は 「アクティビティのキーポイント」 をご覧ください。
- CICS の実行が停止します。
シャットダウン時の中断された作業単位
シャットダウン時に何らかの種類の作業がシャントされている場合 CICSはメッセージ DFHRM0203 を発行します。 このメッセージは、通常シャットダウン時に CICSログに記録された、保留中、バックアウト失敗、コミット失敗の単位作業の数を示します。 これは、そのような UOW が少なくとも 1 つある場合にのみ出されます。 迂回された作業単位がない場合、 CICSはメッセージ DFHRM0204 を発行します。
DFHRM0203 は、記録すべき重要なメッセージであり、次に CICSを再起動する際に注意すべきです。 例えば、未完了の作業が残っていることを示す DFHRM0203 を受信した場合、 CICSの冷間または初期スタートを実行すべきではありません。 START=AUTO を使用して常に CICSを再起動することをお勧めします。特にメッセージ DFHRM0203 の後に再起動しないと、リカバリ・データが失われます。
前回のシャットダウン時に CICSメッセージ DFHRM0203を発行した場合のコールド スタートの詳細については、「コールド スタート」を参照してください。