IBM Support

PH12671: FASTPATH DEVELOPMENT

A fix is available

Subscribe

You can track all active APARs for this component.

 

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
    

Publications Referenced
GC27679400GC27679600GC27678900SC27677900SC27677800

Fix information

  • Fixed component name

    IMS V15

  • Fixed component ID

    5635A0600

Applicable component levels

  • R500 PSY UI78774

       UP22/01/01 P F112

  • R501 PSY UI78775

       UP22/01/01 P F112

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