When Allocate attempts to select a volume from a Storage Group, if a volume
cannot be selected because of the size of the extent, the value of ASR variable
&FAILIFNOVOLSEL [alias &FINVS] is vital to prevent an abend.
The values specified with ASR variable &FINVS determines whether:
- Y - Allocate fails the allocation immediately with: 'S99ERRCD = 04C8'.
Message VAM0039 is issued describing the reason a volume was not selected.
For non-Disk allocations, 'Y' is a good setting because it insures that the
allocation will go only to the desired Storage Group, or it is failed.
- N (default) - Allocate does not immediately fail the allocation, but rather
lets MVS DADSM retry the allocation using the original allocation attributes.
For non-Disk allocations, 'N' could allow the allocation to go to undesired
volumes or Storage Groups.
For Disk Restore or DMSAR allocations, &FINVS = 'N' is preferred because
the failure code 'S99ERRCD = 970C' will cause Disk to retry the allocation while
dynamically adjusting the allocation amount via Disk Sysparm PRIALLOC:
- N (default) - Consolidate space of all extents for allocation.
- 3 - Dynamically used if N fails, to consolidate the amount of the first 3 extents.
- Y - Dynamically used if 3 fails, to use the original allocation amounts.
PRIALLOCN is the suggested value to specify (or let default).
NOTE: Disk PTF RO79961 is needed to fix a problem with PRIALLOC3
Here is the Allocate ASR logic that can be added in the ALLOC and DEFINE environments:
IF &PGM NE ADSMI* THEN SET &FINVS = 'Y'
This statement will insure that:
- &FINVS = 'Y' will be set for non-Disk allocations.
- &FINVS = 'N' (default) will be used for Disk allocations.
The "Reduce to Fit" ASR variables can be specified in ALLOC, DEFINE, EXTEND and EOV
environments to reduce large allocation amounts to help prevent SNA (Space Not Available) failures:
SET &RB = 10 [Allocation Reduced by this increment amount]
SET &MP = 50 [Allocation reduced only to this Minimum Percent of the original]
For very important information about the use of the DIF-RTF Variables,
please see Knowledge Document: Use two simple DIF-RTF variables to prevent B37-04 space abends.