A fix is available
APAR status
-
Closed as new function.
Error description
-
This APAR provides the following new functions to the HD Pointer Checker (HDPC) component. 1. Secondary index HASH checking HDPC HASH check function is enhanced to support secondary index HASH checking. 2. IXKEYCHK support for HASH checking IXKEYCHK=YES can be specified when HASH=YES is specified, in which case HASH checking of the index key will be performed.
Local fix
Problem summary
-
**************************************************************** * USERS AFFECTED: IBM IMS High Performance Pointer Checker for * * z/OS Version 2 Release 2 (FMID=HPC2220) * * users. * **************************************************************** * PROBLEM DESCRIPTION: This APAR provides the following new * * functions for the HD Pointer Checker * * (HDPC) component. * **************************************************************** * RECOMMENDATION: Apply the maintenance for this APAR. * **************************************************************** This APAR provides the following new functions for the HD Pointer Checker (HDPC) component. 1. Secondary index HASH check function for the FABPMAIN program The secondary index HASH check is performed by the FABPMAIN program when HASH=YES or HASH=FORCE is specified by the PROC statement and a secondary index database is specified by the DATABASE statement in the PROCCTL data set. The following checks are done in the secondary index HASH check function. - The check for the number of index pointer segments, and the number of index source segments - The check for the total of direct index pointers, and the total of RBA of the index target segments +--!!!! Restriction !!!!-------------------------------------+ | Secondary index HASH check is not done when one of the | | following conditions are met. | | - A secondary index maintenance exit routine is defined in | | a DBD, but the routine is not in the IMS2 DD data set or | | in the STEPLIB, LOADLIB, or the LINKLIST library. | | - A secondary index maintenance exit routine is defined in | | a DBD, but SPIXCHK=NO is specified in the PROCCTL data | | set. | | - The source segment is compressed and the pointer segment | | is suppressed, but the segment/edit compression routine | | is not in the IMS2 DD data set or in the STEPLIB, | | LOADLIB, or the LINKLIST library. | | - A pointer segment is suppressed, and some of the source | | segments are split to prefix and data portions and some | | are physically deleted. | | | | On the conditions below, the direct index pointer values | | are not checked, but the number of pointer segments are | | checked. | | - Secondary index has a symbolic index pointer. | | - The source segment is dependent of the target segment, | | but the source segment is not a physical child of the | | target segment. | | - The source segment is a physical child of the target | | segment, but the source segment does not have a physical | | parent pointer. | | - A pointer segment is suppressed, and some of the source | | segments are split to prefix and data portions. | +------------------------------------------------------------+ 2. Index key HASH check support The index key HASH check is done when the HASH check is selected, and IXKEYCHK=YES is specified in the PROCCTL data set of the FABPMAIN program or in the ICEIN data set of HPIC or IPR. The following check is done in the index key HASH check. - The check for total of the keys of the index pointer segments, and the total of the keys of index source segments. Index key HASH check is supported in the following HDPC environment. - FABPMAIN program - Single-step HPIC HASH check - HASH check under IPR Index key HASH check supports the following indexes. - Secondary index - HIDAM primary index - PHIDAM primary index (Only in FABPMAIN program) +--!!!! Restriction !!!!-------------------------------------+ | Index key HASH check is not done when one of the following | | conditions are met. | | - An index database is a PSINDEX | | - A secondary index database is not checked by the | | standard HASH check because of the restrictions of the | | HD Pointer Checker. | | - A /CK field is specified by the SUBSEQ= operand of the | | XDFLD statement. | | - Some of the source segments are split to prefix and data | | portions and some are physically deleted. | +------------------------------------------------------------+
Problem conclusion
Temporary fix
Comments
-
Documentation Changes: Note: The section numbers are those of the BookManager (BKMGR) book. The documentation is modified as follows: ============================================================== IMS High Performance Pointer Checker for z/OS, V2R2, User's Guide (SC18997400) ============================================================== >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 2.0 HD Pointer Checker >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------------------------------------- 2.1 Overview of HD Pointer Checker 2.1.4 Restrictions and considerations -------------------------------------------------------------- The following descriptions are deleted: Restrictions and considerations for the HASH check function: : << Delete >> The secondary index database cannot be analyzed by the HASH Check function. Restrictions and considerations for analyzing secondary index databases: << Delete >> The secondary index database cannot be analyzed by the HASH Check function. -------------------------------------------------------------- 2.2 Operating instructions for the HD Pointer Checker processor 2.2.1 Job control language 2.2.1.1 FABPMAIN JCL 2.2.1.1.2 DD statements -------------------------------------------------------------- Table 3 is modified as flows: DD NAME: MARGI2nn(MERGIN2) | Description: Used if IXKEYCHK=YES and HASH=NO. DD NAME: SORTE2nn(SORTEX2) | Description: Used if IXKEYCHK=YES and HASH=NO. DD NAME: IXKEY | Description: Used if IXKEYCHK=YES and HASH=NO. Table 4 is modified as flows: DD NAME: MARGI2nn(MERGIN2) | Description: Required if IXKEYCHK=YES and HASH=NO. | (See note below) DD NAME: SORTE2nn(SORTEX2) | Description: Required if IXKEYCHK=YES and HASH=NO. | (See note below) Table 5 is modified as flows: DD NAME: MARGI2nn(MERGIN2) | Description: Required if IXKEYCHK=YES and HASH=NO are used | for the preceding scan jobs. DD NAME: SORTE2nn(SORTEX2) | Description: Required if IXKEYCHK=YES and HASH=NO are used | for the preceding scan jobs. DD NAME: IXKEY | Description: Used if IXKEYCHK=YES and HASH=NO are used for | the preceding scan jobs. The following descriptions are modified: MEGI2nn DD This is an optional work data set that is generated by the scan process of the index target segment in HDAM, HIDAM, PHDAM, or PHIDAM when PROC TYPE=ALL or TYPE=SCAN is specified | with IXKEYCHK=YES and HASH=NO. It becomes an input for the CHECK process. SORTE2nn DD This is an optional work data set that is generated by the scan process of the index source segment in HISAM, HDAM, HIDAM, PHDAM, PHIDAM, and the index database when PROC | TYPE=ALL or TYPE=SCAN is specified with IXKEYCHK=YES and | HASH=NO. It becomes an input for the CHECK process. IXKEY DD This is a work data set used in the CHECK process when PROC | TYPE=ALL or TYPE=SCAN is specified with IXKEYCHK=YES and | HASH=NO. -------------------------------------------------------------- 2.2 Operating instructions for the HD Pointer Checker processor 2.2.2 Input 2.2.2.1 FABPMAIN JCL 2.2.2.1.4 PROC statement -------------------------------------------------------------- The following descriptions are modified: HASH= Specifies whether you want to check the pointers by use of the HASH Check function. This option can be specified when TYPE=ALL or SCAN is specified. When HASH=YES or FORCE is | specified, INCORE=YES and EPSCHK=YES are ignored and set to NO. IXKEYCHK= : | This option can be specified when TYPE=ALL or SCAN is | specified. Abbreviation KEYCHK and IKEYCHK can be used for IXKEYCHK. -------------------------------------------------------------- 2.2 Operating instructions for the HD Pointer Checker processor 2.2.2 Input 2.2.2.1 FABPMAIN PROCCTL data set 2.2.2.1.10 Summary of index database checking -------------------------------------------------------------- Table 9 is modified as flows: PROCCTL PROC HASH=YES & 1-2(Index key check): | YES (PROC IXKEYCHK=YES) (*10) ICEIN HDPC=Y & 1-2(Index key check): | YES (GLOBAL IXKEYCHK=YES) (*10) Table 10 is modified as flows: PROCCTL PROC HASH=YES & 2-1(Basic function): | YES (DATABASE statement of the index database) (*1) (*5) (*6) PROCCTL PROC HASH=YES & 2-2(Index key check): | YES (PROC IXKEYCHK=YES) (*7) (*10) ICEIN HDPC=Y & 2-2(Index key check): | YES (GLOBAL IXKEYCHK=YES) (*10) Table 11 is modified as flows: PROCCTL PROC HASH=YES | DATABASE DATASET=REAL & 3-2(Index key check): | YES (PROC IXKEYCHK=YES) (*10) The following description is added to the bottom of this section: | *10 | If the following index is used, HASH check of index key is | not done. | - A secondary index that cannot be checked due to | restriction. | - A /CK field is specified on the SUBSEQ= operand of the | XDFLD statement. | - Some of the source segments are split to prefix and data | portions and physically deleted. -------------------------------------------------------------- 2.2 Operating instructions for the HD Pointer Checker processor 2.2.3 Output -------------------------------------------------------------- Table 16 is modified as flows: Report name: Evaluation of Index pointers and Keys PROCCTL statement and parameter for printing report: | PROC IXKEYCHK=YES and HASH=NO -------------------------------------------------------------- 2.2 Operating instructions for the HD Pointer Checker processor 2.2.3 Output 2.2.3.5 EVALUPRT data set 2.2.3.5.7 Evaluation of Index Pointer and Keys report -------------------------------------------------------------- The following description is modified: This report (see Figure 55) contains the errors for index pointers and keys detected through the Index Key Check | process. It is produced when IXKEYCHK=YES and HASH=NO are specified in the PROC statement, and all index databases to be checked are specified in the DATABASE statements. -------------------------------------------------------------- 2.11 Estimating runtime resources 2.11.1 Estimating the word data set size for HD Pointer Checker 2.11.1.3 Estimating the sizes of additional data sets 2.11.1.3.2 Estimating the sizes of the work data sets for IXKEYCHK=YES (MERGI2nn,SORTE2nn,and IXKEY) -------------------------------------------------------------- The following description is modified: This section tells how to estimate the sizes of the data sets | that are needed when you specify PROC IXKEYCHK=YES and | HASH=NO. >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> APPENDIX1 Appendixes >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -------------------------------------------------------------- APPENDIX1.1 Appendix A. Message and codes APPENDIX1.1.1 HD Pointer Checker APPENDIX1.1.1.3 Messages -------------------------------------------------------------- Following messages are added: | FABP1955E INDEX KEY OF INDEX SOURCE SEGMENTS | (DB: dbname SEGMENT: segment) AND INDEX POINTER SEGMENTS IS | NOT THE SAME | FABP1955E INDEX KEY OF ROOT SEGMENTS | (DB: dbname SEGMENT: segment) AND INDEX POINTER SEGMENTS IS | NOT THE SAME | | Explanation: The database is damaged. The HASH total of index | keys in source segments or ROOT segments does not equal to | the HASH total of the index keys in the index pointer | segments. | System Action: Processing continues. | Programmer Response: Correct the database, and rerun the HD | Pointer Checker job. | Problem Determination: None | FABP4027W INDEX DB: dbdname CANNOT BE CHCKED WITH | IXKEYCHK=YES | | Explanation: Index key in index database cannot be checked | for one of the following reasons: | - Some of the source segments are split to prefix and data | portions and some are physically deleted. | - The source segment is compressed, but the segment/edit | compression routine is not in the IMS2 DD data set or in | the STEPLIB, LOADLIB, or the LINKLIST library. | System Action: Processing continues. | Programmer Response: If you do not need to check the index | key, this message can be ignored. | Determination: None
APAR Information
-
APAR number
PK57593
-
Reported component name
IMS POINTER CHE
-
Reported component ID
5655E0900
-
Reported release
220
-
Status
CLOSED UR1
-
PE
NoPE
-
HIPER
NoHIPER
-
Special Attention
NoSpecatt / Xsystem
-
Submitted date
2007-12-04
-
Closed date
2007-12-17
-
Last modified date
2008-01-03
-
APAR is sysrouted FROM one or more of the following:
-
APAR is sysrouted TO one or more of the following:
UK32387
Modules/Macros
-
FABPADBS FABPANAL FABPAPRS FABPAWDS FABPESTM FABPGVT FABPGVT0 FABPHEVL FABPHEXM FABPHEXS FABPHINI FABPHPUT FABPHRCK FABPHSDA FABPHSHI FABPHSIX FABPIST FABPLINK FABPMSGT FABPPSDA FABPPSIX FABPPTRT FABPSCMP FABPSDA0 FABPSIX0 FABPSTAP FABPSTS FABPSUMM FABPUDBR FABPUHTC FABPURTO FABUITCT HPC2220J
| SC18997400 |
Fix information
-
Fixed component name
IMS POINTER CHE
-
Fixed component ID
5655E0900
Applicable component levels
-
R220 PSY UK32387
UP07/12/20 P F712
Fix is available
-
Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.
[{"Line of Business":{"code":null,"label":null},"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSCX89G","label":"IMS HP Pointer Checker"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"2.2.0"}]
Document Information
Modified date:
03 April 2021