SETOAM statements for object tape storage

A CBROAMxx PARMLIB member contains SETOAM statements. The CBROAMxx member is processed during OAM address space initialization to establish the tape-related values for the object tape storage. Creating or updating the CBROAMxx PARMLIB member with SETOAM statements is required to use object tapes within your environment. If the SETOAM statement does not assign TAPEUNITNAME values to the Object Backup storage groups, the backup copies of the objects are stored on optical media. If no SETOAM statements exist in the CBROAMxx member of PARMLIB, the objects are stored on optical media by default.

Because an installation might want to tailor its object tape storage for different initializations of OAM, multiple CBROAMxx members might be created. In addition, multiple SETOAM statements might be supplied in one CBROAMxx PARMLIB member.

Use the SETOAM statement to determine whether backup objects are stored on tape volumes when they are written to an Object Backup storage group. The CBROAMxx PARMLIB member might contain one or more SETOAM statements. If the same parameter is specified multiple times on the same SETOAM statement, the last occurrence of the parameter is accepted. If the same parameter is specified multiple times on different SETOAM statements, the last occurrence on the last statement is accepted. If any syntactical errors are encountered in processing the statements in the CBROAMxx member of PARMLIB, OAM issues a message, and the OAM address space fails to initialize.

Related reading: See Using the UPDATE command to set SETOAM, SETOSMC, and SETOPT values for information on changing the SETOAM values dynamically, or on defining the values when the CBROAMxx PARMLIB member is not used at initialization.

Figure 1 is an example of a CBROAMxx PARMLIB member that can be used as a sample for your installation. See the syntax diagrams that follow Figure 1 for graphical depictions of the SETOAM statement. The descriptions of the keywords are found in the discussion of the SETOAM statement on SETOAM keyword definitions for global level.
Figure 1. CBROAMxx PARMLIB member sample using SETOAM
 SETOAM DATACLASS(INMTL)
       L2DATACLASS(VTSDC)
       DSNWITHSGNAME
       DEMOUNTWAITTIME(120)
       MAXTAPERETRIEVETASKS(2)
       MAXTAPESTORETASKS(2)
       MAXRECYCLETASKS(4)
       MOUNTWAITTIME(5)
       TAPECAPACITY(CST18 55555)
       TAPECAPACITY(CST36 88888)
       TAPECAPACITY(ECCST 99999999)
       TAPECAPACITY(ESOTERIC1 7654321)
       TAPECAPACITY(ESOTERIC2 77766655)
       TAPECAPACITY(ESOTERICn 2147483646) 
       TAPEEXPIRATION(2035/165)
       TAPEFULLTHRESHOLD(4096)
       TAPEDISPATCHERDELAY(30)
       TAPERECYCLEMODE(GROUP)
       OAMSCRATCHSYNCH(ENABLED)
       ALLOCRETRYMINUTES(3) 
       TAPESDB(LARGE)
       STORAGEGROUP(GROUP00
         DATACLASS(TAPEGRP)
         DEMOUNTWAITTIME(120)
         SGMAXTAPERETRIEVETASKS(2)
         SGMAXTAPESTORETASKS(1)
         TAPECOMPACTION
         TAPEDRIVESTARTUP(9999)
         TAPEEXPIRATION(2055/003)
         TAPEFULLTHRESHOLD(2048)
         TAPEPERCENTFULL(76)
         L2TAPEUNITNAME(3590-1)
         L2DATACLASS(ATL1)
         SGMAXRECYCLETASKS(1)
         TAPEUNITNAME(3490))

The syntax diagrams below show the syntax for the SETOAM statement. The first diagram shows the syntax for OAM global level parameters. The second diagram shows the subparameters for the STORAGEGROUP keyword parameter.

Read syntax diagramSkip visual syntax diagram
SETOAM statement syntax: OAM global level parameters

>>-SETOAM--+----------------------------+----------------------->
           '-ALLOCRETRYMINUTES(minutes)-'   

>--+---------------------------+-------------------------------->
   '-DATACLASS(SMS data class)-'   

>--+--------------------------+--+---------------+-------------->
   '-DEMOUNTWAITTIME(seconds)-'  '-DSNWITHSGNAME-'   

>--+-------------------+--+---------------------+--------------->
   '-L2DATACLASS(name)-'  '-MAXRECYCLETASKS(nn)-'   

>--+-----------------------------+------------------------------>
   '-MAXTAPERETRIEVETASKS(tasks)-'   

>--+--------------------------+--+------------------------+----->
   '-MAXTAPESTORETASKS(tasks)-'  '-MOUNTWAITTIME(minutes)-'   

>--+-----------------------+--+-------------------+------------->
   '-OAMSCRATCHSYNCH(mode)-'  '-PERCENTVALID(nnn)-'   

>--+----------------------------------------------------+------->
   '-STORAGEGROUP(name-| STORAGEGROUP subparameters |-)-'   

>--+----------------------------------+------------------------->
   '-TAPECAPACITY(unitname kilobytes)-'   

>--+------------------------------+----------------------------->
   '-TAPEDISPATCHERDELAY(seconds)-'   

>--+--------------------------+--------------------------------->
   '-TAPEEXPIRATION(YYYY/DDD)-'   

>--+------------------------------+----------------------------->
   '-TAPEFULLTHRESHOLD(kilobytes)-'   

>--+----------------------------------+------------------------->
   '-TAPERECYCLEMODE(expiration_mode)-'   

>--+----------------------+------------------------------------><
   |          .-SMALL-.   |   
   '-TAPESDB(-+-LARGE-+-)-'   

STORAGEGROUP subparameters

|--L2TAPEUNITNAME(unitname)--TAPEUNITNAME(unitname)------------->

>--+---------------------------+-------------------------------->
   '-DATACLASS(SMS data class)-'   

>--+--------------------------+--+-------------------+---------->
   '-DEMOUNTWAITTIME(seconds)-'  '-L2DATACLASS(name)-'   

>--+-----------------------------+------------------------------>
   '-MAXTAPERETRIEVETASKS(tasks)-'   

>--+--------------------------+--+-----------------------+------>
   '-MAXTAPESTORETASKS(tasks)-'  '-SGMAXRECYCLETASKS(nn)-'   

>--+-------------------------------+---------------------------->
   '-SGMAXTAPERETRIEVETASKS(tasks)-'   

>--+----------------------------+--+------------------+--------->
   '-SGMAXTAPESTORETASKS(tasks)-'  +-TAPECOMPACTION---+   
                                   '-NOTAPECOMPACTION-'   

>--+------------------------------------------+----------------->
   '-TAPEDRIVESTARTUP(threshold in megabytes)-'   

>--+--------------------------+--------------------------------->
   '-TAPEEXPIRATION(YYYY/DDD)-'   

>--+------------------------------+----------------------------->
   '-TAPEFULLTHRESHOLD(kilobytes)-'   

>--+--------------------------+---------------------------------|
   '-TAPEPERCENTFULL(percent)-'