MainframeKit

S878

Not enough virtual storageSYSTEM ABEND

A GETMAIN or STORAGE request failed because there was not enough virtual storage in the area requested, usually the job's private region.

MOST LIKELY

REGION on the JOB or EXEC statement is too small.

FIRST CHECK

Read IEA705I and the reason code in the job log.

TRY IT ▸

MainframeKit assistant

What it means

Abend 878 means a storage request could not be satisfied. The system issues message IEA705I and ends the task. The reason code shows which area ran short or what was wrong with the request.

For batch jobs the usual cause is that the private area (the region) is full: the program needs more than REGION allows, or it keeps getting storage without freeing it. The same request can fail with 80A instead, depending on how it was made.

Typical causes

  • REGION on the JOB or EXEC statement is too small.
  • A program loop that obtains storage again and again without freeing it.
  • Very large input processed in memory at once.
  • A site limit on region size, set by the IEFUSI installation exit, lower than the job asks for.
  • A bad length or address passed on the storage request.

How to fix it

  1. Read IEA705I and the reason code in the job log.
  2. Increase REGION if the program really needs more storage.
  3. If the abend comes back with a bigger region, look for a storage leak.
  4. Ask the system programmer whether a site limit caps the region size.
  5. Get a dump to see who owns the storage if the cause is not obvious.

Example

Illustrative only; names and values are invented.

IEF450I PAYJOB01 STEP030 - ABEND=S878 U0000 REASON=nnnnnnnn