|
The following suggestions can help you solve or avoid catalog performance
problems:
- If possible, convert from GRS ring to GRS star. The performance
of GRS star is much better than GRS ring. See z/OS MVS Planning: Global Resource Serialization.
- If you must use GRS ring check to see if the RESMIL parameter
is set too high in the GRSCNFxx parmlib member. Refer to z/OS MVS Planning: Global Resource Serialization for
details, but in general, this value should be set at 0 or OFF. Note
that this suggestion only applies to a GRS Ring configuration
- Make sure that the service class for CATALOG or GRS has not been
changed from the default of SYSTEM.
- Is the CATMAX setting too low? Issue an F CATALOG,ALLOCATED command
to see how many catalogs are open and allocated. The value for
CATMAX should be higher than the number of active catalogs.
- Is the STRNO value for the catalog too low? A low STRNO value
is indicated by queue wait times on SYSZRPLW/catname. Consult RMF™ ENQ delay reports to determine
specific catalogs that might need to have STRNO bumped. For a highly
active catalog, the default value of 2 should be increased to 5
or 7. Issue the following command to find the current STRNO value
for the catalog:
LISTCAT ENT(catname) ALL CAT(catname)
- Are VLF or ISC active? Issue F CATALOG,VLF and F
CATALOG,ISC to activate these options.
- Catalog enqueue and enqueue resource problems: The resource SYSIGGV2
MUST be converted to a SYSTEMS enqueue when using catalogs in ECS
mode. Failure to do so will result in damage to catalogs in ECS mode.
This is applicable to all levels of DFSMS that support ECS (HDZ11F0,
HDZ11G0, HDZ11H0, HDZ11J0, HDZ11K0, HDZ1180, HDZ1190, HDZ1A10).
Note
that you must treat resources SYSZVVDS and SYSVTOC the same way, either
both converted or both excluded to prevent deadlocks
- Do not place an entry for SYSIGGV1 in the SYSTEM
inclusion RNL. Every SYSIGGV1 request that needs the SYSTEMS attribute
already has it. Placing an entry for SYSIGGV1 in the SYSTEM inclusion
RNL can degrade performance.
- ISGAUDIT use: Due to the high number of enqueues and done by the
catalog address space, if ISGAUDIT is being used and the SYSZVVDS
and/or SYSIGGV2 names are not being filtered out, it is possible to
see high CPU numbers attributed to the Catalog Address Space as a
result of monitoring these. These can be removed from the monitor
list to correct this.
- Ensure there are no PER Slip Traps enabled, especially if
more than one address space is involved.
- If you are using a serialization product other than GRS, please
review GRS APARs OW56028, OA01861 and OA01695.These APARs added new
exit points in GRS for use by OEM products. Ensure that any GRS maintenance
related to these exits and any maintenance provided by OEM applications
that use these exits is installed.
- WTO Buffer Shortage: This is indicated by the presence of
system message IEA405E. When this occurs, the system issues
a GQSCAN macro, which requires the CEDQ lock - this is a normal
lock required by ENQ processing. Therefore due to the high number
of ENQs required by normal SVC26 processing, catalog processing
slows down and CPU usage appears high for the catalog address
space.
- In HDZ11G0 and higher versions of DFSMS, I/O statistics for
catalogs and the Catalog Address Space will appear differently
than earlier releases. Prior to z/OS® V1R3,
VSAM did the I/O to VSAM data sets, including catalogs. Starting
with HDZ11G0 VSAM uses Media Manager to do all I/O. Prior to HDZ11G0
VSAM specifically omits the collection of Start-I/O or block counts
when accessing a catalog. Media Manager does not differentiate
between I/O to catalog or another type of data set. You may now
see higher I/O counts for Catalog Address Space I/O requests.
The actual I/O rates have not changed, simply the reporting of
them.
- To improve IDCAMS EXPORT processing of catalogs, specify the
BUFND, BUFNI and BUFNO parameters. To specify BUFND and BUFNI
you will need to use the INFILE parameter for EXPORT. Sample JCL
is below:
//EXPRTCAT EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//INCAT DD DSN=MY.CATALOG,DISP=SHR,
// AMP=('BUFND=XXX','BUFNI=YYY')
//OUTCAT DD DSN=MY.EXPORTED.CATALOG,DISP=(NEW,CATLG),
// UNIT=SYSDA,SPACE=(CYL,(10,10)),BUFNO=ZZ
//SYSIN DD *
EXPORT MY.CATALOG -
INFILE(INCAT) -
OUTFILE(OUTCAT) -
TEMPORARY
/*
To calculate the value for BUFND, use the number of
CI's per CA for data component of the catalog. For BUFNI, compute
the number of index records by dividing the High Used RBA of the index
component by the index component CISIZE and add a value of 5 to 10
to that calculation. For BUFNO (ZZ) use a value in the range of 30
to 40.
|