メインフレームではファイル サイズの制約が容量割り当て単位 (ブロック、トラック、およびシリンダー) によって決まるのに対し、この JES システムでは、ファイルを割り当てる際に SPACE パラメーターを使用しません。代わりにネイティブのファイル入出力メソッドを使用しますが、これは動作が異なります。そのため、ジョブで「容量不足」というエラーが発生することがあります。これはメインフレームの D37、E37、B37 などのシステム異常終了とは異なります。
「容量不足」エラーは、ディスク上の容量が不足しているために、データをファイルに書き込めない場合に発生します。このエラーが発生した場合、ファイルから欠落しているデータを特定できないため、ファイルは破損した状態になります。この状況で作業を継続するには、オペレーターによる介入が必要です。
これらのエラーが発生した場合、動作中のシステムに重大な影響が生じる可能性があります。1 つのエラーが多数のエラーにつながることが多く、バッチ ジョブの実行で使用するファイルだけでなく、システムが使用するファイルにもエラーが生じることがあるためです。たとえば、システムがエラーを報告しようとすると、ログ ファイルへの書き込みが行われますが、その動作によって同じエラーが発生します。システム全体が急速に維持できなくなり、動作を継続できなくなります。
この JES システムは、ジョブの終了コードで「容量不足」エラーを監視します。このエラーが発生した場合、ファイルのロックが解放され、ステップ終了処理を実行できるようになります。この処理では、ファイルの性質に応じて、ファイルが削除される場合があります。その後、コンソールにエラー メッセージが出力され、オペレーターによる介入を待機します。オペレーターが応答すると、SEP はそのジョブの完了とともに終了し、新しい SEP が開始します。
この処理が適用されるのは MVS ファイル、つまり JCL の DD 文、または SVC99 によって定義されたファイルのみです。ジョブの処理を中断してユーザーの入力を待機するのは、最終ジョブ条件コードが RTS エラー 9/007 の場合のみです。このメッセージのテキストは、ジョブ ログに「COND CODE RTS0007」と表示されます。それ以外の条件コードでジョブが終了する場合、このエラーを処理するための追加ステップがジョブに含まれているか、ユーザー出口がエラーを処理して、最終条件コードを設定したものと見なされます。詳細については、「JCL ユーザー出口の使用」を参照してください。
以下にサンプル メッセージを示します。これらは ES コンソールにも表示されます。