z/OS DFSMShsm Implementation and Customization Guide


Add to my manuals
444 Pages

advertisement

z/OS DFSMShsm Implementation and Customization Guide | Manualzz

Chapter 15. DFSMShsm libraries and procedures

The following information discusses DFSMShsm procedure library (PROCLIB) members, parameter library (PARMLIB) members, and procedures (PROCs).

When the DFSMShsm product is installed on your system, SMP processing loads parts of the DFSMShsm product into MVS system libraries during APPLY processing. SMP loads no DFSMShsm parts into the SYS1.PROCLIB and

SYS1.PARMLIB. Creating additional parts for SYS1.PROCLIB and SYS1.PARMLIB

(or an alternate parameter library) is the responsibility of the MVS system programmer. In fact, SYS1.PROCLIB and SYS1.PARMLIB are system libraries that are intentionally provided for the use of the MVS system programmer.

As an aid to creating the additional parts in SYS1.PROCLIB and in a parameter library, the DFSMShsm product comes with a starter set. The starter set helps installers of DFSMShsm to build SYS1.PROCLIB members and SYS1.PARMLIB

members that define a unique DFSMShsm operating environment for your site.

DFSMShsm libraries

This section discusses procedure library (PROCLIB) members and parameter library (PARMLIB) members. To run DFSMShsm, you need a startup procedure in

SYS1.PROCLIB and you need a sequence of commands in a parameter library.

Procedure libraries (PROCLIB)

Procedure libraries (PROCLIBs) are data sets that contain JCL procedures and JCL job steps. The procedures include a startup procedure for starting DFSMShsm, a startup procedure for the ABARS secondary address space, and utility jobs for formatting and printing the DFSMShsm logs.

SYS1.PROCLIB is a system library in which the procedures that are included with the DFSMShsm product are placed when you run the starter job. You can create an alternate PROCLIB data set for the startup procedures, the HSMEDIT procedure, and the HSMLOG procedure.

Parameter libraries (PARMLIB)

Parameter libraries (PARMLIBs) are partitioned data sets in which reside a list of commands and directives that MVS reads to determine an operating environment for a program.

If you run the STARTER job provided with the product, the PARMLIB member

ARCCMD00 is placed in the SYS1.PARMLIB data set. You can create alternate

PARMLIB data sets for ARCCMDxx members. There is no requirement to use

SYS1.PARMLIB.

When you start DFSMShsm, the PARMLIB pointed to by the HSMPARM DD statement (if there is one) obtains the member ARCCMD00 or an alternate member indicated by the CMD keyword and (if desired) the member ARCSTR00 or an alternate member indicated by the STR keyword. If no HSMPARM DD statement exists, MVS uses concatenated PARMLIB support to obtain members ARCCMDxx and ARCSTRxx.

© Copyright IBM Corp. 1984, 2017

303

Note:

If you are using a concatenated parameter library, do not use an HSMPARM

DD statement in your startup JCL because it overrides the concatenated PARMLIB support function.

For general information regarding the concatenated PARMLIB support function, refer to the z/OS MVS Initialization and Tuning Reference.

Creating alternate DFSMShsm parameter library members

You can create alternate PARMLIB members for different DFSMShsm operating environments.

Note:

If you are using concatenated PARMLIB support, refer to the z/OS MVS

System Commands for information about creating alternate parameter library data sets.

If you use an alternate member, you must: v Call the alternate member name ARCCMDxx, where xx is the two characters

(numbers or letters) identifying the alternate member name or the alternate startup member ARCSTRyy where yy is the two characters (numbers or letters) identifying the alternate member name.

Additionally, you must communicate the name of the new PARMLIB member to the MVS operating system. You can either: v Change the DFSMShsm startup procedure to correspond to the two characters xx identifying the alternate member name.

or v Use CMD=xx or STR=yy on the MVS START command for DFSMShsm. Either keyword used this way must be specified on the PROC statement in the

DFSMShsm startup procedure.

For example, in Figure 84, the alternate PARMLIB member is named ARCCMD01,

so CMD=01 is specified in the startup procedure.

//DFHSM PROC CMD=01,EMERG=NO,LOGSW=YES,STARTUP=NO,

// UID=HSM,SIZE=6144K,DDD=50,HOST=1Y

Figure 84. Example DFSMShsm Startup Procedure. This JCL directs DFSMShsm to start with the command in

PARMLIB member ARCCMD01.

For an example of the entire DFSMShsm startup procedure, see topic “Starter set example” on page 109.

Commands for PARMLIB member ARCCMDxx

Table 49 on page 305 shows:

v The DFSMShsm commands you can specify in the DFSMShsm PARMLIB v The purpose of the commands v What information you must re-specify for each startup v What information you do not have to re-specify for each startup.

304

z/OS DFSMShsm Implementation and Customization Guide

Table 49. Commands You Can Specify in the DFSMShsm PARMLIB Member ARCCMDxx

DFSMShsm

Command

ADDVOL

AUTH

DEFINE

HOLD

Purpose

Adds a volume to DFSMShsm control or defines a space management attribute for a specific volume.

Identifies the user who can issue

DFSMShsm-authorized commands.

Note:

This command is only used in a non-FACILITY class environment.

Defines the control structures within DFSMShsm control.

v v

Information You Must

Specify Each Startup

For primary or migration level 1 volumes: v Each volume v Each type of unit

Each type of volume

None

Recall pools v Aggregate recovery pools

Information You Do Not Specify Each

Startup

v Migration level 2 volumes v Backup volumes v Primary volume attributes of a volume you added during an earlier startup v Space management technique of a volume you added during an earlier startup

userid

DATABASEAUTHORITY(CONTROL) for the user who can affect the authority of other DFSMShsm users v Level 2 structure v Backup cycle v Automatic primary space management cycle v Automatic secondary space management cycle v

Dump cycle v Dump classes

None

ONLYIF

PATCH

RELEASE

SETMIG

SETSYS

TRAP

Prevents processing of all or part of DFSMShsm functions.

Allows conditional execution of the single command, or group of commands contained within a

BEGIN ... END block, immediately following the

ONLYIF command.

Changes contents of storage in the address space.

Releases all or part of the

DFSMShsm process that is previously being held using the

HOLD command.

Changes the space management status of data sets, groups of data sets, or all primary volumes.

Establishes or changes parameters under which

DFSMShsm operates.

Specifies when DFSMShsm should produce a snap dump or an abnormal end dump when a specified error occurs.

All parameters

All parameters

All parameters

All parameters

Migration controls for level qualifiers

All parameters

All parameters

None

None

None

Migration controls for data sets or primary volumes

None

None

Chapter 15. DFSMShsm libraries and procedures

305

Command sequence for PARMLIB member ARCCMDxx

In the DFSMShsm environment, certain commands must follow a particular sequence to ensure that the command does not malfunction or fail. The following table lists these combinations:

ISSUE THIS COMMAND

SETSYS JES2 or JES3

ADDVOL

DEFINE BACKUP(...

DEFINE DUMPCLASS

SETSYS MAXRECALLTASKS(tasks)

SETSYS SMALLDATASETPACKING

SETSYS SYSOUT

SETSYS USERUNITTABLE

SETSYS USERDATASETSERIALIZATION

BEFORE THIS COMMAND

Not Applicable

DEFINE POOL

SETSYS NOBACKUP

ADDVOL with either the AUTODUMP or the DUMPCLASS parameters

SETSYS TAPEMAXRECALLTASKS(tasks)

ADDVOL with SDSP

SETSYS ACTLOGTYPE

ADDVOL

DEFINE ARPOOL

DEFINE DUMPCLASS with unit

SETSYS ARECOVERUNITNAME

SETSYS BACKUP(TAPE)

SETSYS CDSVERSIONBACKUP

SETSYS MIGUNITNAME

SETSYS RECYCLEOUTPUT

SETSYS SPILL

SETSYS TAPEMIGRATION

SETSYS UNITNAME

SETSYS TAPEUTILIZATION for any esoteric

SETSYS DAYS

Note:

1.

If you use the ONLYIF HSMHOST(hostid) command with both the DEFINE

BACKUP and SETSYS NOBACKUP commands, and assign the commands to different hosts, there is no need for a specific command sequence.

2.

SETSYS UNITNAME(unitname) should be specified before SETSYS

CDSVERSIONBACKUP if you are not specifying a unit name as part of the

BACKUPDEVICECATEGORY subparameter. If you do not specify SETSYS

CDSVERSIONBACKUP BACKUPDEVICECATEGORY UNITNAME(unitname), and have not previously specified SETSYS UNITNAME(unitname), the default unit is 3590-1.

3.

In an HSMplex environment, you should not use the SETSYS

EXTENDEDTTOC(Y) command to enable extended TTOCs on any host in the

HSMplex until the shared OCDS has been redefined with a record size of 6144 bytes.

Sample libraries (SAMPLIB)

SYS1.SAMPLIB is a system library in which system modification program/extended (SMP/E) logic places the MVS jobs that create rudimentary procedures. If you run the DFSMShsm STARTER job, the DFSMShsm startup

306

z/OS DFSMShsm Implementation and Customization Guide

procedure is automatically placed in SYS1.PROCLIB and the command sequence

(ARCCMD00) is placed in SYS1.PARMLIB. HSMSTPDS places other procedures in a partitioned data set named HSM.SAMPLE.CNTL. You must move the other procedures you want (for example, HSMEDIT and HSMLOG) from

HSM.SAMPLE.CNTL to SYS1.PROCLIB.

DFSMShsm procedures

The DFSMShsm procedures and jobs that are provided in SAMPLIB members include: v A DFSMShsm startup procedure v An ABARS secondary address space startup procedure v An installation verification procedure (IVP) v A functional verification procedure (FVP) v An HSMLOG procedure to format and print the DFSMShsm log v An HSMEDIT procedure to print the DFSMShsm edit log

If you are using the starter set, only the HSMLOG procedure and the HSMEDIT procedure must be manually placed in SYS1.PROCLIB. If you are not using the starter set, add the following four procedures to the PROCLIB data set:

1.

DFSMShsm startup procedure. This is invoked with an operator START command.

2.

ABARS startup procedure. This procedure starts the ABARS secondary address space.

3.

HSMLOG procedure. This procedure formats and prints the DFSMShsm log after a log swap has occurred.

4.

HSMEDIT procedure. This procedure prints the edit log.

For more information about the DFSMShsm startup procedure for a multiple

DFSMShsm-host environment, see “Defining all DFSMShsm hosts in a multiple-host environment” on page 255.

For more information about the startup procedure keywords, see “Startup procedure keywords” on page 308.

DFSMShsm startup procedure

The DFSMShsm startup procedure, shown in Figure 85 on page 313 and shown in

the starter set in topic “Starter set example” on page 109 provides the MVS system

with DFSMShsm environmental information through the startup procedure keywords and the HSMPARM DD statements, if there are any. You specify these keywords and DD statements to define your processing environment.

Note:

1.

If you need to use more startup procedure keywords than can be accommodated by the 100-character PARM limit as detailed in z/OS MVS JCL

Reference under the EXEC parameter, use the STR=xx keyword within the

PARM keywords to create a PARMLIB member ARCSTRxx to contain the remaining startup parameters.

2.

The starter set does not include the RESTART keyword.

When DFSMShsm is started, the MVS operating system reads the DFSMShsm startup procedure and receives information about the DFSMShsm environment.

Chapter 15. DFSMShsm libraries and procedures

307

Startup procedure keywords

The following is a listing and description of the DFSMShsm startup procedure keywords:

CMD (default = 00):

Specifies the PARMLIB member that DFSMShsm should start with. The CMD=00 keyword refers to the ARCCMD00 member of a PARMLIB

and is discussed in “Parameter libraries (PARMLIB)” on page 303. Throughout the

DFSMShsm library the term ARCCMDxx is used to discuss the PARMLIB member.

You can create more than one ARCCMDxx member and designate a different number for each PARMLIB member you create by substituting a number for xx

(the last two characters of the ARCCMDxx member).

EMERG (default = NO):

Specifies whether DFSMShsm starts processing immediately. The EMERG=NO keyword allows DFSMShsm to begin functioning as soon as it is started. The EMERG=YES keyword allows DFSMShsm to start, but does not allow DFSMShsm to perform any functions until a SETSYS

NOEMERGENCY command is issued.

LOGSW (default = NO):

Specifies whether to swap the DFSMShsm log data sets automatically at startup. Because the problem determination aid (PDA) logs are automatically swapped at startup, you should specify LOGSW=YES to synchronize the DFSMShsm logs with the PDA logs. If you specify LOGSW=YES, you must also change your JCL disposition (DISP) to DISP=OLD for the LOGX and LOGY data sets.

For a discussion of the DFSMShsm log data sets, see “DFSMShsm log data set” on page 45.

STARTUP (default = NO):

Specifies whether DFSMShsm displays startup messages at the operator console.

UID (default = HSM):

Specifies the DFSMShsm authorized-user identification

(UID) in 1 to 7 characters. You must use this UID as the first qualifier of the data set name of the SDSP data sets. In the DFSMShsm starter set sample jobs (see

Chapter 6, “DFSMShsm starter set,” on page 101), the UID is the prefix name for

the migrated and backed up data sets. The UID is also the first qualifier of the

DFSMShsm log in the DFSMShsm started procedure in topic “Starter set example” on page 109. For the starter set, HSM is the UID.

Note:

Changing the UID parameter after your environment has been set up requires coordination, because DFSMShsm expects the UID to be the high-level qualifier for SDSP data sets. If you change the UID, you must also change the high-level qualifier of existing SDSP data sets to match the new UID. Although the

UID also appears as the high-level qualifier of tape data sets, DFSMSrmm and most other tape management systems allow the high-level qualifier to be different.

HOSTMODE (default = MAIN):

Specifies how this instance of DFSMShsm is related to various functions of DFSMShsm.

HOSTMODE=MAIN specifies that this DFSMShsm: v Processes implicit requests, like recalls and deleting migrated data sets, from user address spaces v Processes explicit commands from TSO, like HSENDCMD and HBACKDS v Manages ABARS secondary address spaces v Allows MODIFY commands from a console

308

z/OS DFSMShsm Implementation and Customization Guide

v Can run an automatic backup, dump, and space management

Within a z/OS image, only one DFSMShsm can operate in this mode and any other DFSMShsm host in that image must have HOSTMODE=AUX.

HOSTMODE=AUX specifies that this DFSMShsm: v Allows MODIFY commands from a console v Can run automatic backup, dump, or space management

Within a z/OS image, zero or more DFSMShsm hosts can operate in this mode.

If HOSTMODE is not specified, the default is MAIN.

SIZE:

Specifies the region size in K bytes (K=1024) that DFSMShsm is running under. You should specify 0M for SIZE which directs DFSMShsm to allocate the largest possible region size. For more detailed information about DFSMShsm

storage requirements, see “DFSMShsm address spaces” on page 299.

Note:

The DFSMShsm region size requirements depend on the type and number of concurrent data movement tasks.

DDD:

Specifies the number of dynamically allocated resources that can be held in anticipation of reuse. This value is used in the DYNAMNBR parameter of the

EXEC statement. Refer to z/OS MVS JCL Reference for further explanation of the

DYNAMNBR parameter.

HOST=x:

Identifies this DFSMShsm host in an HSMplex. The HOST=x keyword specifies a unique identifier for each instance of DFSMShsm. For x, substitute the host identification as an upper-case alphabetic character from A to Z, a digit from 0 to 9, or the character @, #, or $.

Note:

1.

The earlier definition of the HOST= keyword allowed an optional second character in the value. The function of that second character is now specified by the PRIMARY= keyword. The second character, if specified, is considered only if the PRIMARY= keyword is not specified.

2.

DFSMShsm supports the use of @, #, and $ as host identifier characters that may show up in dataset names and TSO output. You are not required to use them and, (especially if you are a non-US customer) you may choose to limit yourself to characters A-Z, and 0-9, reducing the total number of host address spaces per HSMplex to 36 instead of 39.

PRIMARY (default = YES):

Specifies whether this DFSMShsm host is the primary host within its HSMplex, and thus performs the backup and dump level functions as part of automatic processing. Automatic primary space management and automatic secondary management can be performed on any DFSMShsm host.

If you do not specify the PRIMARY= keyword: v If the HOST= keyword value has a second character Y, this DFSMShsm host is the primary host v If the HOST= keyword value has a second character N, this host is not the primary host v If the HOST= keyword has no valid second character, this host is the primary host

Chapter 15. DFSMShsm libraries and procedures

309

RESTART:

Specifies that DFSMShsm should be automatically restarted for all

DFSMShsm abnormal ends. The RESTART=‘(a, b)’ keyword specifies that

DFSMShsm should be automatically restarted for all DFSMShsm abnormal ends. a specifies the name of the procedure to be started and b specifies any additional keywords or parameters to be passed to the procedure. For example, if the

DFSMShsm procedure DFHSM01 is started for all automatic restarts, and EMERG is set to YES, then the RESTART keyword would be specified as:

RESTART=‘(DFHSM01.HSM,EMERG=YES)’. Note that in this example HSM can be used by the operator as an identifier for DFHSM01.

Note:

If you are accessing your CDSs in RLS mode, use the RESTART keyword so that DFSMShsm automatically restarts after shutting down due to SMS VSAM server error.

For a detailed example of using the RESTART keyword to restart DFSMShsm after

an abnormal end, see “Using the RESTART keyword to automatically restart

DFSMShsm after an abnormal end” on page 312.

CDSQ:

Specifies that DFSMShsm serializes its control data sets with a global enqueue product (GRS for example) instead of serializing with volume reserves.

When you specify YES for this parameter, DFSMShsm serializes the use of the control data sets (between multiple z/OS images) with a global (SYSTEMS) exclusive enqueue and still allows multiple tasks within a single z/OS image to access the control data sets concurrently. All DFSMShsm hosts within an HSMplex must use the same serialization technique.

If you specify CDSQ=NO (without CDSSHR=RLS), the only allowable

HOSTMODE for any DFSMShsm host within the HSMplex is MAIN.

For more information about serializing CDSs with the CDSQ keyword, see

“Serialization of control data sets with global resource serialization” on page 262.

CDSR:

Specifies that DFSMShsm serializes its control data sets with volume reserves.

If you have installed a global resource serialization (GRS) product, you can serialize your CDSs with GRS.

When you specify YES for this parameter, DFSMShsm serializes the use of the control data sets with a shared ENQ/RESERVE.

All the hosts in an HSMplex must implement the same serialization technique.

When a serialization technique has not been specified, the default serialization technique depends on the following specified HOSTMODE: v If HOSTMODE=MAIN, DFSMShsm assumes CDSR=YES v If HOSTMODE=AUX, DFSMShsm indicates an error with message ARC0006I

For more information about serializing CDSs with the CDSR keyword, see

“Serialization of control data sets with global resource serialization” on page 262.

CDSSHR:

Specifies that the DFSMShsm being started will run in a particular multiple-image or single-image environment.

310

z/OS DFSMShsm Implementation and Customization Guide

Because this keyword is not normally specified, it has no default value. Its main uses are for testing and for merging multiple CDSs.

When you specify NO for this keyword, DFSMShsm does no multiple-host serialization; no other system should be concurrently processing this set of CDSs.

The HOSTMODE of this DFSMShsm can only be MAIN. For performance reasons, specify NO in a single image environment with no auxiliary hosts and where the index of the MCDS is on a DASD device that is configured as shared.

When you specify YES for this keyword, DFSMShsm does multiple-host serialization of the type requested by the CDSQ and CDSR keywords.

When you specify RLS for this keyword, DFSMShsm performs multiple-host serialization using record level sharing (RLS). When RLS is specified, the CDSs are accessed in RLS mode and any values specified for CDSQ and CDSR are ignored.

If you do not specify the CDSSHR keyword in the startup procedure,

DFSMShsmperforms multiple-host serialization if the index component of the

MCDS resides on a DASD volume that has been SYSGENed as SHARED or

SHAREDUP.

CELLS (default = (200,100,100,50,20)):

DFSMShsm uses the cell-pool (CPOOL) function of MVS to obtain and manage virtual storage in its address space for the dynamically obtained storage for certain high-usage modules, and for data areas

DFSMShsm frequently gets and frees. The CELLS parameter provides the cell sizes for five cell pools.

For more information about DFSMShsm storage, see “Adjusting the size of cell pools” on page 301.

PDA (default = YES):

Specifies that problem determination aid (PDA) tracing begins before the SETSYS PDA command has been processed. When you specify

YES for this parameter, the DFSMShsm problem determination aid facility begins its tracing functions at the beginning of startup processing instead of waiting for a

SETSYS PDA command or instead of waiting for DFSMShsm to complete its initialization.

For more information about the PDA trace function, see “DFSMShsm problem determination aid facility” on page 41.

RNAMEDSN (default = NO):

Specifies whether to use a new serialization method so that there is no longer interference between HSMplexes that are contained within a single GRSplex. When you specify YES for this parameter, you are invoking the new method of serialization, which uses the data set name of the

CDSs and the journal.

For more information about the GRSplex serialization function, see Chapter 13,

“DFSMShsm in a sysplex environment,” on page 283.

STR:

Specifies a PARMLIB member containing DFSMShsm startup parameters, which are logically concatenated with any remaining parameters specified on the

EXEC statement. The value for the STR keyword must be two characters, but it need not be the same as the value for the CMD keyword.

As with member ARCCMDxx, if you are not using MVS concatenated PARMLIB support, member ARCSTRxx must be in the data set specified with DD statement

Chapter 15. DFSMShsm libraries and procedures

311

HSMPARM in the startup procedure. If you are using MVS concatenated PARMLIB support, members ARCCMDxx and ARCSTRxx need not be in the same PARMLIB data set.

No other keywords need be specified with PARM= on the EXEC statement, but note that no substitution of symbolic parameters occurs in member ARCSTRxx.

Thus parameters specified on the START command are limited to symbolic parameters specified on the PROC statement.

Each record in member ARCSTRxx contains one or more startup keywords, separated by commas. There is no explicit continuation character defined.

DFSMShsm assumes that the last eight characters (73 – 80) in each record are a sequence number field, and does not scan that field. Keywords can be specified in any order. If the same keyword is specified more than once, the last instance is the one that is used.

If the first nonblank characters in a record are “/*” DFSMShsm considers the record a comment and ignores it.

If a keyword is specified both with PARM= and in the ARCSTRxx member, the specification in PARM= overrides that in the member.

If member ARCSTRxx exists, DFSMShsm reads each record and processes its parameters as if they had been specified using PARM=. Then the parameters (if any) specified with PARM= are processed.

Neither an empty member nor the absence of the STR= keyword is considered an error.

You can use the STR keyword for at least two purposes: v To allow specifying more startup parameters than can be accommodated in the

PARM= field v To split keywords between host-unique ones in the PARM= field, for example;

PARM=('CMD=&CMD', 'HOST=&HOST', 'STR=&STR')

Using the RESTART keyword to automatically restart DFSMShsm after an abnormal end:

If you are running DFSMShsm in an MVS/ESA environment, you can use the RESTART keyword in the DFSMShsm startup procedure to automatically restart DFSMShsm after an abnormal termination.

When you specify the RESTART keyword in the DFSMShsm start procedure, no operator intervention is required to automatically restart DFSMShsm. The protocol for the RESTART keyword is: RESTART=(A,B), where A is required and is the name of the DFSMShsm procedure to be started, and B is optional and specifies any additional parameters to be passed to the procedure.

Figure 85 on page 313 is an example of the DFSMShsm startup procedure. Notice

that the EMERG keyword NO allows all DFSMShsm functions and that the

RESTART keyword restarts DFSMShsm automatically. However, when DFSMShsm is restarted the status of the EMERGENCY keyword in the restarted procedure is

YES. When EMERG=YES, DFSMShsm does not allow any functions to start.

312

z/OS DFSMShsm Implementation and Customization Guide

//**********************************************************************/

//* EXAMPLE DFSMSHSM STARTUP PROCEDURE THAT SPECIFIES THE RESTART */

//* KEYWORD TO RESTART DFSMSHSM WITH A DIFFERENT STATUS FOR THE EMERG */

//* KEYWORD.

*/

//**********************************************************************/

//*

//DFSMSHSM PROC CMD=00, USE PARMLIB MEMBER ARCCMD00

//

//

//

LOGSW=YES,

STARTUP=YES,

UID=HSM,

SWITCH LOGS AT STARTUP

STARTUP INFO PRINTED AT STARTUP

DFSMSHSM-AUTHORIZED USER ID

//

//

//

//

PDA=YES,

SIZE=0M,

DDD=50,

HOST=?HOSTID,

BEGIN PDA TRACING AT STARTUP

REGION SIZE FOR DFSMSHSM

MAX DYNAMICALLY ALLOCATED DATA SETS

PROC.UNIT ID AND LEVEL FUNCTIONS

//

//

PRIMARY=?PRIMARY, LEVEL FUNCTIONS

RESTART=’(DFHSM00,EMERG=YES)’ RESTART INFORMATION

//DFSMSHSM EXEC PGM=ARCCTL,DYNAMNBR=&DDD,REGION=&SIZE,TIME=1440,

// PARM=(’LOGSW=&LOGSW’,’CMD=&CMD’,’UID=&UID’,

//

//

’HOST=&HOSTID’,’PRIMARY=&PRIMARY’,

’STARTUP=&STARTUP’,’PDA=&PDA’,’RESTART=&RESTART’)

//**********************************************************************/

//* HSMPARM DD must be deleted from the JCL or made into a */

//* a comment to use Concatenated PARMLIB support.

*/

//**********************************************************************/

//HSMPARM DD DSN=SYS1.PARMLIB,DISP=SHR

//MSYSOUT DD SYSOUT=A

//MSYSIN DD DUMMY

//SYSPRINT DD SYSOUT=A,FREE=CLOSE

//SYSUDUMP DD SYSOUT=A

//MIGCAT DD DSN=&UID...MCDS,DISP=SHR

//BAKCAT DD DSN=&UID...BCDS,DISP=SHR

//OFFCAT DD DSN=&UID...OCDS,DISP=SHR

//JOURNAL DD DSN=&UID...JRNL,DISP=SHR

//ARCLOGX DD DSN=&UID...HSMLOGX1,DISP=OLD

//ARCLOGY DD DSN=&UID...HSMLOGY1,DISP=OLD

//ARCPDOX DD DSN=&UID...HSMPDOX1,DISP=OLD

//ARCPDOY DD DSN=&UID...HSMPDOY1,DISP=OLD

//*

Figure 85. Example of Automatically Restarting DFSMShsm. The status of the keyword EMERG is changed when

DFSMShsm automatically restarts.

Figure 86 on page 314 shows an alternate way of obtaining the same results; restart

DFSMShsm using a different startup procedure with a different name.

Upon an abnormal termination of DFHSM00, DFHSM05, shown in Figure 87 on page 314, is started with an identifier of HSM. The procedure DFHSM05 does not

specify a RESTART keyword and specifies EMERG=YES. If DFSMShsm ends with an abnormal termination, DFSMShsm does not automatically restart.

Rule:

Any alternate procedures (DFHSM05, for example) must have an entry in the

RACF started-procedures table and must be associated with the DFSMShsm user

ID for RACF.

Chapter 15. DFSMShsm libraries and procedures

313

//**********************************************************************/

//* EXAMPLE DFSMSHSM STARTUP PROCEDURE THAT RESTARTS DFSMSHSM WITH A */

//* DIFFERENT STARTUP PROCEDURE (DFHSM05) AFTER AN ABEND.

*/

//**********************************************************************/

//*

//DFSMSHSM PROC CMD=00,

// LOGSW=YES,

USE PARMLIB MEMBER ARCCMD00

SWITCH LOGS AT STARTUP

//

//

//

STARTUP=YES,

UID=HSM,

PDA=YES,

STARTUP INFO PRINTED AT STARTUP

DFSMSHSM-AUTHORIZED USER ID

BEGIN PDA TRACING AT STARTUP

//

//

//

//

SIZE=0M,

DDD=50,

REGION SIZE FOR DFSMSHSM

MAX DYNAMICALLY ALLOCATED DATA SETS

HOST=?HOSTID, PROC.UNIT ID AND LEVEL FUNCTIONS

PRIMARY=?PRIMARY, LEVEL FUNCTIONS

// RESTART=’(DFHSM05,EMERG=YES)’ RESTART INFORMATION

//DFSMSHSM EXEC PGM=ARCCTL,DYNAMNBR=&DDD,REGION=&SIZE,TIME=1440,

//

//

PARM=(’LOGSW=&LOGSW’,’CMD=&CMD’,’UID=&UID’,

’HOST=&HOSTID’,’PRIMARY=&PRIMARY’,

// ’STARTUP=&STARTUP’,’PDA=&PDA’,’RESTART=&RESTART’)

//**********************************************************************/

//*

//*

HSMPARM DD must be deleted from the JCL or made into a a comment to use Concatenated PARMLIB support.

*/

*/

//**********************************************************************/

//HSMPARM DD DSN=SYS1.PARMLIB,DISP=SHR

//MSYSOUT DD SYSOUT=A

//MSYSIN DD DUMMY

//SYSPRINT DD SYSOUT=A,FREE=CLOSE

//SYSUDUMP DD SYSOUT=A

//MIGCAT DD DSN=&UID...MCDS,DISP=SHR

//BAKCAT DD DSN=&UID...BCDS,DISP=SHR

//OFFCAT DD DSN=&UID...OCDS,DISP=SHR

//JOURNAL DD DSN=&UID...JRNL,DISP=SHR

//ARCLOGX DD DSN=&UID...HSMLOGX1,DISP=OLD

//ARCLOGY DD DSN=&UID...HSMLOGY1,DISP=OLD

//ARCPDOX DD DSN=&UID...HSMPDOX1,DISP=OLD

//ARCPDOY DD DSN=&UID...HSMPDOY1,DISP=OLD

//*

Figure 86. Example of Automatically Restarting DFSMShsm with a Different Procedure. If an abnormal end occurs, the

startup procedure calls a different startup procedure (DFHSM05), shown in Figure 87.

//**********************************************************************/

//* EXAMPLE DFHSM05 STARTUP PROCEDURE THAT IS CALLED FROM THE */

//* PRECEDING STARTUP PROCEDURE FOR UNEXPECTED DFSMSHSM ABENDS.

*/

//**********************************************************************/

//*

//DFSMSHSM PROC CMD=00,

//

//

LOGSW=YES,

STARTUP=YES,

USE PARMLIB MEMBER ARCCMD00

SWITCH LOGS AT STARTUP

STARTUP INFO PRINTED AT STARTUP

//

//

//

//

//

//

//

//

//

UID=HSM,

PDA=YES,

SIZE=0M,

DDD=50,

DFSMSHSM-AUTHORIZED USER ID

BEGIN PDA TRACING AT STARTUP

REGION SIZE FOR DFSMSHSM

MAX DYNAMICALLY ALLOCATED DATA SETS

//

//

HOST=?HOSTID,

PRIMARY=?PRIMARY

PROC.UNIT ID AND LEVEL FUNCTIONS

LEVEL FUNCTIONS

//DFSMSHSM EXEC PGM=ARCCTL,DYNAMNBR=&DDD,REGION=&SIZE,TIME=1440,

// PARM=(’LOGSW=&LOGSW’,’CMD=&CMD’,’UID=&UID’,

// ’HOST=&HOSTID’,’PRIMARY=&PRIMARY’,

’STARTUP=&STARTUP’,’PDA=&PDA’

.

.

.

.

Figure 87. Example of Alternate Startup Procedure

As you can see, the RESTART keyword not only allows you to tell DFSMShsm to restart itself, but allows you to modify the manner in which DFSMShsm is

314

z/OS DFSMShsm Implementation and Customization Guide

restarted when an abnormal termination occurs. Any keyword that can be specified in the MVS start command can be specified in the RESTART keyword as part of parameter B.

Startup procedure DD statements

If you are not using concatenated PARMLIB support, this section discusses the required DD statements for the HSMPARM statement of the DFSMShsm startup procedure. The DD statement names must appear as they are shown in the

DFSMShsm starter set topic “Starter set example” on page 109. The high-level

qualifier (HLQ) for these required DD statements does not have to be UID and the control data sets are not required to share the same high-level qualifier.

Required DD Name

HSMPARM DD DSN=HLQ...PARMLIB,

DISP=SHR

MSYSOUT DD SYSOUT=A

MSYSIN DD DUMMY

SYSPRINT DD SYSOUT=A, FREE=CLOSE

SYSUDUMP DD SYSOUT=A

MIGCAT DD DSN=HLQ...MCDS, DISP=SHR

BAKCAT DD DSN=HLQ...BCDS, DISP=SHR

OFFCAT DD DSN=HLQ...OCDS, DISP=SHR

JOURNAL DD DSN=HLQ...JRNL, DISP=SHR

ARCLOGX DD DSN=HLQ...HSMLOGX1,

DISP=OLD

ARCLOGY DD DSN=HLQ...HSMLOGY1,

DISP=OLD

ARCPDOX DD DSN=HLQ...HSMPDOX,

DISP=OLD

Description

This DD statement identifies the

PARMLIB member that contains commands and directives to establish a

DFSMShsm operating environment.

The FREE=CLOSE parameter on the

DD statement should NOT be used, as

DFSMShsm will automatically deallocate the parmlib dataset.

This DD statement identifies a system data set that provides DFSMShsm with the messages issued by the terminal monitor program (TMP) and with messages issued when dynamic memory allocation takes place.

This DD statement identifies a system data set that provides DFSMShsm with a DUMMY SYSIN data set for

DFSMShsm support of TSO processing.

This DD statement identifies the output destination for SYSPRINT requests.

This DD statement identifies the

SYSOUT class for SYSUDUMPs.

This DD statement identifies the migration control data set to

DFSMShsm.

This DD statement identifies the backup control data set to DFSMShsm.

This DD statement identifies the offline control data set to DFSMShsm.

This DD statement identifies the journal data set to DFSMShsm.

This DD statement identifies the LOGX

(DFSMShsm log) data set to

DFSMShsm. If you specify

LOGSW=YES, specify DISP=OLD.

This DD statement identifies the LOGY

(DFSMShsm log) data set to

DFSMShsm. If you specify

LOGSW=YES, specify DISP=OLD.

This DD statement identifies the PDOX

(PDA trace) data set to DFSMShsm.

Chapter 15. DFSMShsm libraries and procedures

315

Required DD Name

ARCPDOY DD DSN=HLQ...HSMPDOY,

DISP=OLD

Description

This DD statement identifies the PDOY

(PDA trace) data set to DFSMShsm.

Using DD statement AMP parameters to override DFSMShsm default values:

Default values specified in the ACB are used by DFSMShsm when opening a CDS.

The default values specified in the ACB are: STRNO=40, BUFND=41, and

BUFNI=60. You can override the default values by specifying AMP parameters in a

DD statement for each CDS.

In general, you should not override the default values unless the values are increased. For example, if VSAM dynamic string addition is causing a problem in your operating environment, you can increase the number of strings (STRNO) used for concurrent access by specifying an AMP parameter in the DD statement.

For an example of using DD statement AMP parameters to override the default

values specified in the ACB, see “Example of using a DD statement to override default values stored in the ACB.”

Note:

1.

When using the AMP parameter to increase the number of strings, the value specified for STRNO should be determined by the number of concurrent requests you expect to process for a given CDS. The maximum value is 255 strings. However, the region size must be large enough to support the increased size of extended private storage used for VSAM control blocks when increasing the STRNO value.

2.

When the STRNO value is changed, the BUFND and BUFNI values might also need to be changed. The BUFND value should be 1 greater than the STRNO value and a large BUFNI value can increase performance.

You can also improve performance that is related to control data sets by having

RLS manage the control data sets. For more information, see the topics about

Processing VSAM Data Sets and Using VSAM Record-Level Sharing in z/OS

DFSMS Using Data Sets.

Example of using a DD statement to override default values stored in the ACB: The following example overrides the default values stored in the ACB by specifying

AMP parameters in the DD statement; where nnn is the desired value

//MIGCAT DD DSN=&UID..MCDS,DISP=SHR, AMP=(’STRNO=nnn’,’BUFND=nnn’,’BUFNI=nnn’)

For more information, see the topic about Optimizing VSAM Performance in z/OS

DFSMS Using Data Sets.

ABARS secondary address space startup procedure

The ABARS startup procedure, shown in Figure 88 on page 317, and in the starter

set topic “Starter set example” on page 109, provides the MVS operating system

with environmental information about the ABARS secondary address space.

When DFSMShsm is started, the MVS operating system reads the ABARS startup procedure to get information about the ABARS secondary address space.

316

z/OS DFSMShsm Implementation and Customization Guide

//**********************************************************************/

//* ABARS SECONDARY ADDRESS SPACE STARTUP PROCEDURE */

//**********************************************************************/

//*

//DFHSMABR PROC

//DFHSMABR EXEC PGM=ARCWCTL,REGION=0M

//SYSUDUMP DD SYSOUT=A

//MSYSIN DD DUMMY

//MSYSOUT DD DUMMY

//*

Figure 88. Example of an Aggregate Backup and Recovery Startup Procedure. This procedure starts the ABARS secondary address space.

DFSMShsm installation verification procedure (IVP) startup procedure

The installation verification procedure (IVP), described in Chapter 2, “Installation verification procedure,” on page 7, is a procedure that exercises and tests the

SMP/E installation of the DFSMShsm product.

DFSMShsm functional verification procedure (FVP)

The functional verification procedure (FVP), described in detail in Chapter 8,

“Functional verification procedure,” on page 153, is a procedure that can be used

to exercise and test the functions of DFSMShsm.

HSMLOG procedure

The HSMLOG procedure, shown in Figure 89, is a procedure that formats and

prints the DFSMShsm log and places selected information in the edit log.

//HSMLOG JOB JOBPARM

//*

//**********************************************************************/

//* THIS SAMPLE JOB PRINTS THE DFSMSHSM LOG.

REPLACE THE UID VARIABLE */

//* WITH THE DFSMSHSM-AUTHORIZED USER ID ( 1 TO 7 CHARACTERS).

*/

//**********************************************************************/

//*

//PRINTLOG EXEC PGM=ARCPRLOG

//ARCPRINT DD SYSOUT=*

//ARCLOG DD DSN=UID.HSMLOGY1,DISP=OLD

//ARCEDIT DD DSN=UID.EDITLOG,DISP=OLD

//*

//EMPTYLOG EXEC PGM=IEBGENER

//SYSPRINT DD SYSOUT=*

//SYSIN DD DUMMY

//SYSUT2 DD DSN=UID.HSMLOGY1,DISP=OLD

//SYSUT1 DD DUMMY,DCB=(UID.HSMLOGY1)

/*

Figure 89. Example of the HSMLOG Procedure

Note:

Do not compress the log data set that is used as input to the ARCPRLOG program. The log data set is created with RECFM=F, but is opened by ARCPRLOG for update with RECFM=U, which is not allowed for compressed data sets.

HSMEDIT procedure

The HSMEDIT procedure, shown in Figure 90 on page 318 and in the starter set in

“HSMEDIT” on page 142, is a procedure that prints the edit log.

Chapter 15. DFSMShsm libraries and procedures

317

//EDITLOG JOB JOBPARM

//*

//**********************************************************************/

//* THIS SAMPLE JOB PRINTS THE DFSMSHSM EDIT LOG.

REPLACE THE UID */

//* VARIABLE WITH THE DFSMSHSM-AUTHORIZED USER ID (1 TO 7 CHARACTERS). */

//**********************************************************************/

//*

//EDITLOG EXEC PGM=ARCPEDIT

//ARCPRINT DD SYSOUT=*

//ARCLOG DD DSN=UID.EDITLOG,DISP=SHR

/*

Figure 90. Example of the HSMEDIT Procedure

Note:

To send the output to a data set (see Figure 91), change ARCPRINT to:

//ARCPRINT DD DSN=uid.EDITOUT,DISP=(NEW,CATLG),UNIT=unitname,

//

//

VOL=SER=volser,SPACE=spaceinfo,

DCB=(RECFM=FBA,LRECL=133,BLKSIZE=26600)

Figure 91. Example of a Change to ARCPRINT

318

z/OS DFSMShsm Implementation and Customization Guide

advertisement

Was this manual useful for you? Yes No
Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Related manuals

advertisement

Table of contents