A fix is available
APAR status
Closed as new function.
Error description
Fast Path development
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: * * IMS V15 DEDB users * **************************************************************** * PROBLEM DESCRIPTION: * * Maximum number of AREA is increased to 9999. * **************************************************************** * RECOMMENDATION: * * INSTALL CORRECTIVE SERVICE FOR APAR/PTF * ****************************************************************
Problem conclusion
This APAR enables maximum 9999 AREAs under a DEDB. < DBDGEN > DBDGEN supports up to 9999 AREA definitions in one DEDB. Current limit is 2048 AREAs. < Change to ACBDIR and DDIR > MBRSIZ and MBRBFR of ACBDIR, DDIRSIZ and DDIRBFR of DDIR are half word fields. With current DDIRSHFT of 6 bits, DDIRSIZ can represent up to X'3FFFC0' as DMB and DMCB size.. With 9999 AREA support, this size is too small. This APAR introduced 8 bits shift value as DDIRSHF8, and DDIRGT2K and MBRGT2K flags. MBRGT2K flag is set if the DMCB size exceed X'3FFFC0'. DDIRGT2K is copy of MBRGT2K. If MBRGT2K or DDIRGT2K flag is on, shift value of DDIRSHF8 is used to calculate DMCB buffer size. With DDIRSHF8, DDIRSIZ can represent up to X'FFFF00' bytes. < Migration and compatibility > DMCBRELN has IMS release number. For migration compatibility support, DMCBRELN of DEDBGT2K is set to lower value as X'02' - DMCBRGT2K. Other DMCB without DEDBGT2K, X'15' is set as DMCBR15_1. If IMS without PH12671 is started and found DMCB with GT2K, message DFS2779I will be issued and DEDB(DMCB) will be made not accessible. < DEDBGT2K=Y specification in FASTPATH section of DFSDFxxx > DEDB with more than 2048 AREAs are usable only when DEDBGT2K=Y. ESCDFLG1 has ESCDF12K flag (X'20'). Open will fail with DFS3702I RSN46 if DEDB has more than 2048 AREAs but DEDBGT2K=N. Type4080 log has CHKRGT2K flag in CHKRSTF. DEDBGT2K=N to Y can be changed at restart. DEDBGT2K=Y to N can be changed at only cold start. At Warm and /ERE, DEDBGT2K option from Type4080 log become effective regardless of DEDBGT2K specification in DFSDFxxx. < Activation Control > DEDBGT2K is function level=2. QUERY IMSFUNC NAME(DEDBGT2K) UPDATE IMSFUNC NAME(DEDBGT2K) SET(ENABLED(Y|N)) Type2220 Log :IMS Function Level DFS4879I THE IMS FUNCTION DEDBGT2K IS ENABLED DFS4880I THE IMS FUNCTION DEDBGT2K IS DISABLED ============================ Modified MACROs and Modules ==================================== DBFESCD Added new bit ESCDF12K DBFDMCB Added new bit DMCBRGT2K Added constant DMCBR15_1 DFSDDIR Added constant DDIRADD8 DDIRSHF8 DFSFNCE Added new bit FNCE_DEDBGT2K Added new function name FNCE_DEDBGT2KC Added new constant FNCE_DEDBGT2KL, FNCE_CURRFUNCLEVEL DFSL6701 Added new bit CTS6 DFSL2231 Added new bits L2231_DEDBGT2KY, L2231_DEDBGT2KN DFSCHKPT Added new bit CHKRGT2K AREA Modified maximum number of AREA into 9999 DBFMRSN Added new constant ABU1043_RSN02 ACBDIR Added new bit MRMBGT2K (BLDLGT2K, PSTDGT2K) DFSCMDRR Added new condition code ICC_AROPGT2K. DFSDPDM0 Added code to get larger DDIR size when DEDB has more than 2048 AREAs. DFSBIND0 Added code to get larger DDIR size when DEDB has more than 2048 AREAs. Added code to release larger DDIR size when DEDB has more than 2048 AREAs. DFS3REAC Added code to decide larger size of ddir to read when BLDLGT2K bit is ON DFSUAMB0 Added code to GETMAIN larger DDIR when DEDB has more than 2048 AREAs. Added code to GETMAIN larger DMCB to read DMCB of staging ACBLIB. Added code to FREEMAIN larger DMCB when DEDB has more than 2048 AREAs. DFSUAMB1 Added code to GETMAIN larger DDIR when DEDB has more than 2048 AREAs. Added code to GETMAIN larger DMCB to read DMCB of staging ACBLIB. Added code to FREEMAIN larger DMCB when DEDB has more than 2048 AREAs. DFSOLC70 Added code to GETMAIN larger DMCB storage when MBRGT2K bit is ON. When EOD is found when IMPORT DMCB of smaller number of AREA, ignore RC=4 from EOD exit. DFS5OP00 Added code to prepare larger storage to read DMCB when MBRGT2K is ON. DBFMLOP1 Recompile DBFMLOP0 Added code to make open error and issue DFS3702I RSN=46 message when DEDBGT2K=N and DEDB has more than 2048 AREAs. DBFLHSH0 Added code to get 2nd byte of DMACARID to create correct resource hash value for CI lock request. DBFOLC02 Added code to adjust DMCB size to release when DEDB has more than 2048 AREAs. DBFMOLS0 Added code to adjust size of reference list when DEDB has more than 2048 AREAs to read DMCB. Added code to adjust size of ddir when DEDB has more than 2048 AREAs to read DMCB. DFSXRBB0 Added code to adjust DMCB size to read when DEDB has more than 2048 AREAs to read DMCB. DFSIU210 Added code to perform activation control by UPD IMSFUNC command. DFSDBS00 Added code to log X'22' log to support more than 2048 AREAs which is called by DFSRDB20 DFSIQ210 Added code to show status of activation control by QRY IMSFUNC command. DFSRMDD0 Added code to DDIR manager to support DEDB with more than 2048 AREAs. DFS3XDBD Modified maximum AREA number to 9999 in xml DBD schema DBF3BLB0 Added code to set X'02' in DMCBRELN (DMCB Release number) when DMCBANR is greater than 2048 DFSRDB30 Added code to turn on DDIRGT2K when BLDLGT2K bit is ON Added code to set larger DDIR size when DDIRGT2K DFSRMDM0 Added code to turn off DDIRGT2K when DBD is not resident DBFINI24 Adjust DDIR size * 256 when DDIRGT2K is ON DFSUDMP0 When MBRGT2K is ON, read DDIR size * 256 for image copy DBFINI21 Recompile DFSUDMT1 When MBRGT2K is ON, read DDIR size * 256 for image copy2 DFSFNCT0 Added DEDBGT2K to Func Level 2 Enhanced func table entries desc DBFINI29 Recompile DFSDBLD0 Pass DDIR size * 256 to DFSDPDM0 when DDIRGT2K is ON. DBFMER00 Set caller ID and control block type for 6706 log. DFSDDL60 Defined max tablespace number 9999 for DDL. DBFINTE0 Add ddirsize * 256 to DMCB size when ddirgt2k is ON. DFSMDA00 Add ddir size * 256 to DMCB when ddirgt2K is ON. DFSUMGT0 Defined DFS7418E message DFSDBLM0 Add ddir size * 256 to DMCB when ddirgt2K is ON. DBFOLC01 GETMAIN DMCB buffer of DDIR size * 256 when DDIRGT2K is ON. DFS3DU10 Set ddir size * 256 when mbrgt2k is ON for catalog directory member size. DBFFATC1 Set default VSO THLD values, turn on old fp buffer manager bit when FASTPATH section is not in DFSDFxxx member Define DEDBGT2K keyword for FASTPATH section Turn ON ESCDF2K bit when DEDBGT2K=Y Added ECHO message DFS1919I message to show DEDBGT2K=Y | N DFSUMSG0 Define DFS7418E message DBFUDLB0 Added code to set X'02' in DMCBRELN (DMCB Release number) when DMCBANR is greater than 2048. DBFCPY00 Add ddir size * 256 to DMCB when ddirgt2K is ON. DBFMOPE0 Defined DFS3702I RSN=46 message DFSCPDM0 Added DDIRFLGE for OLC commit DBFUMAN0 Set trap when DMCBANR (number of AREA) is larger than 9999 DFSDBLR0 Add ddir size * 256 to DMCB when ddirgt2K is ON. DFS3ACBG Align DDIR size on half word boundary when PSTDGT2K is ON. DBFUMIN0 Added DFS2516I message. Added SYNAD, EOD exits. DFSOCMT0 Adjusted storage size of DDIR for FREESTOR when DDIRGT2K is ON. DFS3ACBM Added check DDIRGT2K and DMCBANR to determine DMB size. Adjusted DMCB size to be DCB block size * integer to GETMAIN to read DMCB on staging ACBLIB to avoid SYNAD. DFSMOLS0 Adjust size of reference list, work area when DEDB has more than 2048 AREAs. When SYNAD was called and DDIRGT2K is OFF, check MWALP64B and re-read DMCB by using larger DMCB buffer. DBFUMRT0 Add MRMB size of 9999 AREAs to userkey sdbt, dmcb, fieldt, cmpc copies. DBFCDPI0 Modified location of storage of ACB, DMCB entry to LOC(31,64) Modified option of GETMAIN from R to RC. Set actual length of storage which GETMAIN could get in DMCB length field for FREEMAIN. DFSOSY10 Set GMRVSN DBFCHKP0 When ESCDF12K is ON, turn on CHKRGT2K for 4080 log DBFNRST0 Added code to issue DFS4979I message when CHKRGT2K is ON but ESCDF12K is OFF. DFSFDR10 Added code to check LOG22_IMSFUNC to see wheather IMSFUNC was updated. If not, skip this X'22' log. DFSRLP00 Added code to check X'22' is IMSFUNC update. If it is YES, restart process this X'22' log. DFSCCTX0 Added completion code 22D. DFSRFN20 Added DFS4879I THE IMS FUNCTION funcname_16char IS ENABLED DFS4881I THE IMS FUNCTION funcname_16char IS DISABLED DFS3LU00 Added code to check MBRGT2K bit to set member length of DMCB to write ACBLIB Added fix for unqualified POS call and DDLT. Attached sample output of DDLT. DBFMPOS0, DBFMPOS1 For unqualified POS, set 4 byte LL for DEDB with GT2K AREAs For less or equal 2048 AREAs, keeps on setting 2 byte LL DDLT fix DBFIRC10 Fixed to use 4 byte LL to get key 7 output into key 8 IOAREA of ASMTDLI DFSDDLS3 Use IOLL4 to setting start address of data area when GT2K option is specified. Added overflow check of IOAREA size of DATA statement of DFSDDLT0. DFSDDLS9 Set IOLL4 to SEGLEN when GT2K=Y to handle large output of POS CALL. PARMDDL3 Changed MAXIOLL from 100000 to 239980 Defined IOLL4 for GT2K output Defined internal option GT2K, NOGT2K DFSDDLSA Changed DEFMAX from 100000 to 239980 DFSEIPB0 Added status code FX as valid status code
Temporary fix
Comments
APAR Information
APAR number
PH12671
Reported component name
IMS V15
Reported component ID
5635A0600
Reported release
500
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2019-05-29
Closed date
2021-12-30
Last modified date
2022-01-04
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UI78774 UI78775
Modules/Macros
DFSDPDM0 DFSBIND0 DFS3REAC DFSUAMB0 DFSUAMB1 DFSOLC70 DBFMRSN AREA DFS5OP00 DBFMLOP1 DBFMLOP0 DBFLHSH0 DBFOLC02 DBFMOLS0 DFSXRBB0 DFSIU210 DFSDBS00 DFSIQ210 DFSRMDD0 DFS3XDBD DBF3BLB0 DFSRDB30 DFSRMDM0 ACBDIR DBFINI24 DFSUDMP0 DBFINI21 DFSUDMT1 DFSFNCT0 DBFINI29 DFSDBLD0 DBFMER00 DFSDDL60 DBFINTE0 DBFESCD DFSMDA00 DFSUMGT0 DFSDBLM0 DBFOLC01 DFS3DU10 DBFFATC1 DFSUMSG0 DBFUDLB0 DBFCPY00 DBFMOPE0 DFSCPDM0 DBFDMCB DBFUMAN0 DFSL6701 DFSDDIR DFSFNCE DFSDBLR0 DFS3ACBG DBFUMIN0 DFSOCMT0 DFS3ACBM DFSMOLS0 DBFUMRT0 DBFCDPI0 DFSOSY10 DFSCHKPT DBFCHKP0 DBFNRST0 DFSRFN10 DFSCMDRR DFSL2231 DFSFDR10 DFSRLP00 DFSCCTX0 DFSRFN20 DFS3LU00 DBFMPOS0 DBFMPOS1 DFSDDLS9 DFSDDLSA DFSDDLS3 DBFIRC10 DFSEIPB0 DBFEDA30
| GC27679400 | GC27679600 | GC27678900 | SC27677900 | SC27677800 |
Fix information
Fixed component name
IMS V15
Fixed component ID
5635A0600
Applicable component levels
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.
[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSEPH2","label":"IMS"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"15","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]
Document Information
Modified date:
22 December 2023