Job DSNTIJRV
Job DSNTIJRV validates the DB2®-supplied routines by executing program DSNTRVFY. You should validate these routines after DB2 installation and after each phase of migration.
DSNTRVFY validates a single routine, multiple routines, or all DB2-supplied routines. DSNTRVFY produces a report that identifies routines that passed the validation and possible problem areas for routines that failed.
Authorizations
If the RACF® facility class is active and a profile was defined for MVSADMIN.WLM.POLICY, the user that submits this job requires READ access.
If the RACF OPERCMDS class is active and a profile was defined for MVS™.MCSOPER.*, the user ID that submits this job requires READ access. Alternatively, you can add a discrete profile for the DSNTRVFY console that is used in this job.
Format
DSNTRVFY accepts the following required parameters:
- DB2SSN(ssid)
- Identifies which DB2 subsystem to connect to for validating the DB2-supplied routines.
- ROUTINE(name)
- Identifies which DB2-supplied
routine needs to be validated. The following values are supported
for name:
- A routine name in the form of schema-name.routine-specific-name.
- The keyword DD:SYSIN to specify a list of routines. List the routines in the form of schema-name.routine-specific-name under the SYSIN DD statement with one routine per line.
- The keyword ALL to specify all DB2-supplied routines.
DSNTRVFY also accepts the following optional parameters:
- AUTHID(authorization ID)
- DSNTRVFY uses this value as the OWNER for BIND PACKAGE and BIND PLAN statements and as the CURRENT SQLID for issued SQL statements. If this value is not specified, the primary authorization ID is used for BIND PACKAGE, BIND PLAN, and issued SQL statements.
Output
DSNTRVFY allocates the following required DD statements for output:
- SYSPRINT
- Contains messages generated during verification processing. Each processed routine can generate one or more messages.
- SYSTSPRT
- DSNTRVFY writes bind output to SYSTSPRT if an error occurs during bind processing.
//DSNTJVFY EXEC PGM=DSNTRVFY,
// PARM='DB2SSN(VA1A) ROUTINE(SYSPROC.DSNUTILS)'
//DBRMLIB DD DSN=DB2A.SDSNDBRM,DISP=SHR
//SYSUT1 DD UNIT=SYSDA,SPACE=(32000,(30,30)),DCB=(RECFM=VB,LRECL=133)
//SYSTSPRT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
//DSNTJVFY EXEC PGM=DSNTRVFY,
// PARM='DB2SSN(VA1A) ROUTINE(DD:SYSIN)'
//DBRMLIB DD DSN=DB2A.SDSNDBRM,DISP=SHR
//SYSUT1 DD UNIT=SYSDA,SPACE=(32000,(30,30)),DCB=(RECFM=VB,LRECL=133)
//SYSTSPRT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
SYSPROC.DSNWZP
SYSPROC.DSNACCOR
SYSPROC.DSNUTILS
SYSPROC.DSNUTILU
//DSNTJVFY EXEC PGM=DSNTRVFY,
// PARM='DB2SSN(VA1A) ROUTINE(ALL) AUTHID(FVTGRP2)'
//DBRMLIB DD DSN=DB2A.SDSNDBRM,DISP=SHR
//SYSUT1 DD UNIT=SYSDA,SPACE=(32000,(30,30)),DCB=(RECFM=VB,LRECL=133)
//SYSTSPRT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
Processing
DSNTRVFY completes the following validation:
- Verifies that the routine is defined to the SYSIBM.SYSROUTINES catalog.
- Verifies that the collection ID defined in the SYSIBM.SYSROUTINES catalog table matches the collection ID used to bind the package.
- Verifies that the routine is currently defined with the DB2-reserved WLM application environment name DSNWLM_NOT_ENABLED, indicating that it is not enabled to run on the current DB2 subsystem. If it is, then a warning message is issued and the validation is bypassed.
- Verifies if the routine can be executed on the current DB2 catalog mode.
- Verifies the APF authorization requirements.
- Verifies if the WLM application environment is defined and available for use.
- Verifies if the NUMTCB setting is valid or within the recommended range.
- Verifies if the required DD statements for some of the routines are defined.
- Verifies if the WLM environment assigned to Java routines is enabled for Java.
- Verifies security coexistence requirements (for example, some routines should run on only their own WLM application environment).
- Verifies that the selected routine can be called successfully. Certain routines such as DSNACICS, DSNAIMS, MQSeries® functions, and most debugger routines are restricted to basic validation and are not called.
IEFC452I DB2UDSMD - JOB NOT RUN - JCL ERROR
In
most cases, this message is normal and can be disregarded. If you
use IBM®
Optim™ Development Studio,
see Debugging stored procedures on DB2 for z/OS® with Optim Development Studio, Part 2 (IBM
developerWorks) for information about DB2UDSMD.If the validation is successful, the following message is issued:
DSNT027I DSNTRVFY VALIDATION FOR schema.routine-specific-name SUCCESSFULIf the validation fails, messages are issued to explain the reasons for failure. Examine these messages and make necessary adjustments before running the validation job again.
Input
DSNTRVFY requires the following DD statements for input:
- DBRMLIB
- Identifies the library where the DBRM for the DSNTRVFY program is located. This is typically the prefix.SDSNDBRM target library.
- SYSIN
- Contains the list of DB2 routines. This is required when the validation type is for multiple routines (DD:SYSIN).
- SYSUT1
- Work data set required for bind processing.
Limitations
The following limitations apply to the DSNTRVFY program:
- The name of the routine in the form schema-name.routine-specific-name is limited to 72 characters, the maximum line length in JCL.
- Only DB2 10 DB2-supplied routines are supported for validation.
- Some routines, if enabled, receive basic validation to ensure
that they are defined correctly and assigned to a valid WLM application
environment. However, validation will not extend to calling these
routines for one or more of the following reasons:
- Optional system support such as CICS®, IMS™, or MQSeries is required.
- External setup on a remote server or workstation is required.
- A call could introduce or modify data unexpectedly in a production environment.
The DB2-supplied routines that are restricted to basic validation are:
- DB2DEBUG.CREATE_SESSION
- DB2DEBUG.DESTROY_SESSION
- DB2DEBUG.GET_REPORT
- DB2DEBUG.LIST_SESSION
- DB2DEBUG.PUT_COMMAND
- SYSFUN.SYSTS_ENCRYPT
- SYSFUN.XSLTRANSFORM
- SYSPROC.ADMIN_COMMAND_UNIX
- SYSPROC.ADMIN_JOB_CANCEL
- SYSPROC.ADMIN_JOB_FETCH
- SYSPROC.ADMIN_JOB_QUERY
- SYSPROC.ADMIN_JOB_SUBMIT
- SYSPROC.DBG_ENDSESSIONMANAGER
- SYSPROC.DBG_INITIALIZECLIENT
- SYSPROC.DBG_RECVCLIENTREPORTS
- SYSPROC.DBG_SENDCLIENTREQUESTS
- SYSPROC.DBG_SENDCLIENTCOMMANDS
- SYSPROC.DBG_TERMINATECLIENT
- SYSPROC.DSNACICS
- SYSPROC.DSNAIMS
- SYSPROC.DSNAIMS2
- SYSPROC.DSNLEUSR
- SYSPROC.SYSTS_ALTER
- SYSPROC.SYSTS_CREATE
- SYSPROC.SYSTS_DROP
- SYSPROC.SYSTS_RESTORE
- SYSPROC.SYSTS_START
- SYSPROC.SYSTS_STOP
- SYSPROC.SYSTS_TAKEOVER
- SYSPROC.SYSTS_UPDATE
- All MQSeries, web services, and SOAP functions (those with schema DB2MQ, DB2MQ1C, DB2MQ2C, or DB2XML)