search cancel

DDL subcommand and dynamic DFHRPL

book

Article ID: 227174

calendar_today

Updated On:

Products

SYSVIEW Performance Management

Issue/Introduction

We are converting the concatenation of loadlibs in the region from being in the DFHRPL concatanation within the region JCL to dynamic DFHRPL concatenation using LIBRARY RDO type. 

We are not seeing issues in how SYSVIEW is displaying loadlibs. 

Even for the programs that are not loaded/ used, SYSVIEW usually show the loadlib name where it is present, if it is present in DFHRPL concatenation.. with LIBR its not showing the programs that are loaded but have no usage count.

Below is from BDTJ for the program ISLP99 loaded from the endevor loadlib.

SYSVIEW doesn’t show this loadlib.

 

Cause

Why convert JCL Loadlibs to RDO Libraries:

Advantages of converting JCL Loadlibs to RDO Libraries are less JCL to maintain, easily swap loadlibs during runtime, prevent JCL issues during startup if loadlib is missing, and easily move applications between regions.

Libararies can be dynamically created/removed during a running CICS region, so if a loadlib fills up, you can create a new Library def, install the new loadlib ahead of the concationation of the current library containing the loadlib, and replace the existing loadlib with a larger/smaller/different loadlib all while the region is up and running without loss to functionality.  

No more taking down 10 different regions for a loadlib filling up or running out of directory blocks. 

During startup, it will just not install the Library if the loadlib is missing.  CICS will issue an error, skip the library install, and keep moving to startup, thus allowing the system to fully initialize without having a JCL error that something is missing.

Since it is an RDO def, it can easily be managed and moved between various regions as needed, or included in CICS Bundles (not used now, but IBM has been pushing bundles for several years now).

 

Environment

Release : 16.0

Component : SYSVIEW

Resolution

SYSVIEW supports CICS dynamic libraries. 
 
After a program is loaded the Library and DatasetName from where it was loaded will show on CPROGRAM. 
If you want to see where a program will be loaded from, such as first use or after doing a NEWCOPY, the easiest way is to issue 'CLIBS;WHERE progname'. 
CLIBS shows all possible loadlibs, STEPLIB, DFHRPL, and any dynamic libraries.
 
Summary:
When a program gets loaded the appropriate Library (DD) should show on CPROGRAM, and DDL should work fine.
If NEWCOPY is issued then Library field will go blank and won't be populated again until the program actually gets loaded into memory again by CICS, at which point DDL should work.

Additional Information

DDL is a line command on the CPROGRAM display. 
The DDL line command issues the command:
 
DDLIST ddname;WHERE progname
 
where ddname is the value in the Library field on CPROGRAM, and progname is the value in the Program field on CPROGRAM. 
If the Library field is blank then it defaults to specifying a value of 'DFHRPL'.
 
On CPROGRAM the Library field (and DatasetName out to the right) only get populated (by CICS) when a program gets loaded. 
GCCNCIM was not loaded, but DDL worked because it happens to default to using DFHRPL. 
If ISLP99 was loaded prior to the NEWCOPY, the NEWCOPY would have discarded what had been showing in the Library field and DDLIST was then issued for DFHRPL.