z/OS DFSMS Implementing System-Managed Storage
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


VOL=REF Usage

z/OS DFSMS Implementing System-Managed Storage
SC23-6849-00

Without SMS, when you specify VOL=REF on the DD statement it indicates that the data set should be allocated on the same volume as the referenced data set. With SMS, specifying VOL=REF causes the storage class of the referenced data set to be assigned to the new data set. The storage group of the referenced data set is also passed to the storage group ACS routine, so you can code your ACS routine to perform one of the following three actions:
  • Assign the same storage group to the new data set (required for SMS-managed tape VOL=REFs).

    Storage group might be blank if you entered volumes into a tape library with a blank storage group name. However, you can assign storage group based on library name in this case.

  • Assign a different storage group to the new data set.
  • Fail the allocation.
The ACS routines are passed the following values in the &ALLVOL and &ANYVOL read-only variables when VOL=REF is used:
  • 'REF=SD' - The reference is to an SMS-managed DASD or VIO data set
  • 'REF=ST' - The reference is to an SMS-managed tape data set
  • 'REF=NS' - The reference is to a non-SMS-managed data set
Restrictions: Consider the following restrictions when using VOL=REF:
  • If the referenced data set is on SMS-managed tape, then the new data set must be allocated to the same storage group.
  • For SMS-managed DASD and VIO data sets, the two data sets must be assigned to compatible types of storage groups to ensure consistency for locates. For example, if the referenced data set is allocated on DASD, then allocating referencing data set on tape could result in potential locate problems.
  • For references to non-SMS-managed data sets, either allow or fail the allocation. This gives the ACS routines control over whether a new, non-SMS-managed data set can be allocated on a non-SMS-managed volume or not. SMS fails the allocation if the ACS routines attempt to make the referencing data set SMS-managed, since this could cause problems attempting to locate that data set with DISP=OLD or DISP=SHR, and lead to potential data integrity problems.

Remember these restrictions when you design your storage groups and ACS routines, and eliminate any use of VOL=REF that might violate these restrictions.

Related Reading: For examples of ACS routines used when allocating data sets using VOL=REF, see the following sections:

With the IBM® TotalStorage Enterprise Automated Tape Library (3494 or 3495), data sets do not have to be cataloged. If a data set is not cataloged, constructs (classes) assigned to it are lost. Even if the data set is cataloged, unlike the data sets on DASD, the SMS constructs assigned to the data set are not retained in the catalog. However, because it is now cataloged, a VOL=REF can be done to it by data set name.

When no storage class is available from a referenced data set, the storage class routine must assign a storage class to the referencing data set, enabling the allocation to be directed to the storage group of the referencing data set. Otherwise, the allocation fails.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014