IBM Support

II07633: THIS APAR IS A CONTINUATION OF II07632. FOR EVERYONE USING DB2 WITH CICS VERSION 4. IT IS CONCLUDED IN II07634.

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as canceled.

Error description

  • 5740xyr00 R230 R310
    
    This APAR is a continuation of II07632 for DB2 users with CICS
    Version 4.  It concludes in II07634.
    
           If you specify TXIDSO=NO, the logic changes to:
    
           - If the plan name and authorization ID are
             the same as the last transaction that used the thread,
             and if TOKENE is set to NO, then the transaction
             reuses the thread without any signon.
           - If the plan name is the same as that of the
             transaction that last used the thread, and
             - the authid has changed, or
             - TOKENE is YES
             then the thread is reused following a signon.
           - If the plan name has changed, the thread is terminated
             and re-created.
    
           The TXIDSO option only affects pool threads and those
           RCT entry threads with multiple transaction IDs in one
           entry, e.g.  TXID=(XC05,XC07).  This is because the
           attach only checks for thread reuse within an entry.
           Note that TXIDSO has no effect on transactions that
           specify TOKENE=YES.
    
         PLANI Default Plan Name
    
           PLANI
    
           Use PLANI on TYPE=INIT to specify a default plan name for
           any non-dynamic selection entry in the resource control
           table.  Without PLANI, the plan name for any particular
           entry in the RCT is...
    
           - The value for PLAN= in the TYPE=ENTRY form of the macro
           - The value for TXID= on the TYPE=ENTRY form of the macro
             if PLAN= is not specified.
    
           With PLANI, the plan name on an entry is:
    
           - The value for PLAN= in the TYPE=ENTRY form of the macro
           - The value of PLANI= in the TYPE=INIT form of the macro
             if PLAN= is not specified.
           - The value for TXID= on the TYPE=ENTRY form of the macro
             if neither PLAN nor PLANI is specified.
    
           The PLANI option has no impact on entries using dynamic
           plan selection.
    
         PURGEC Set Protected Thread Purge Cycle
    
           PURGEC allows you to specify the length of the protected
           thread purge cycle.
    
           The attachment facility has two types of threads,
           protected and unprotected.
           - An unprotected thread is terminated immediately after
             the transaction is through with it (at syncpoint or
             EOT).
           - A protected thread will remain for a certain length of
             time after the transaction is through with it in order
             to increase the chances of thread reuse.
           The length of time that a protected thread remains is
           determined by the purge cycle.  The default purge cycle
           is 30 seconds.
    
           It takes two purge cycles to terminate a protected
           thread, so if PURGEC is not specified, a protected thread
           remains between 30 and 60 seconds after the transaction
           is through with it.
    
           The purge cycle is 5 minutes long when the attach gets
           started, and then it is fixed at PURGEC for the remainder
           of the time that the attach is up.  The new RCT parameter
           PURGEC=(minutes,seconds) specifies the normal purge cycle
           length.  For example, if you set PURGEC=(0,40), protected
           threads will be purged 40-80 seconds after their last
           activity.  The maximum specifiable length of a purge
           cycle is 59 minutes, 59 seconds.  The minimum length is
           30 seconds.
    
    
    10)  A recovery restriction has been removed when connecting
         multiple DB2s from CICS.  The scenario is:
         - CICS connects to DB2A
         - DB2A terminates abnormally, leaving an indoubt
         - CICS connects to DB2B.
         - The attachment facility tells CICS that "DB2" has no
           indoubts to process.
         - CICS doesn't distinguish between different DB2s, so it
           writes a forget record for the indoubt on DB2A.
         - When CICS later connects to DB2A, and DB2A sends the
           indoubt to CICS, CICS replies that it should not be
           indoubt.
    
         Since all DB2 systems use the task related user exit name
         of DSNCSQL, CICS sees all DB2 subsystems as the same
         resource manager.
    
         The attachment facility now adds the DB2 subsystem ID to
         CICS's recovery qualifier to distinguish one DB2 from
         another.  Now during recovery, CICS will only deal with
         the indoubts for the specified DB2, so it will remember
         indoubts across different DB2 connections.
    
    11)  INQUIRE EXITPROGRAM is a new command that CICS Version 4
         provides.  You can use it in place of the EXTRACT EXIT
         command to determine whether the attachment facility is
         enable-started, enabled, or disabled.  If the attach is
         enabled without being enable-started, you can still get an
         AEY9 abend, and the EXTRACT EXIT can command only tell you
         if the attach is enabled.
    
         This is some assembler code that demonstrates the use of
         INQUIRE EXITPROGRAM:
    
    ---------------------------------------------------------------
    STST     DS    F
    ENTNAME  DS    CL8
    EXITPROG DS    CL8
            ...
             MVC   ENTNAME,=CL8'DSNCSQL'
             MVC   EXITPROG,=CL8'DSN2EXT1'
             EXEC CICS INQUIRE EXITPROGRAM(EXITPROG)               X
                   ENTRYNAME(ENTNAME) STARTSTATUS(STST) NOHANDLE
             CLC   EIBRESP,DFHRESP(NORMAL)
             BNE   NOTREADY
             CLC   STST,DFHVALUE(STARTED)
             BNE   NOTREADY
    ****************************************************************
    
    USING THE NEW CICS-DB2 ATTACHMENT FACILITY
    
    Please read the following instructions carefully in order to
    use the attachment facility shipped with CICS Version 4.
    
     1)  The prerequisite apars that you must apply to DB2 to
         connect from CICS Version 4 are:
    
             PN52110 - CICS attachment facility preconditioning
             PN52129 - Installation preconditioning
    
         The purpose of these apars is to prevent accidental use of
         the old attachment facility with CICS Version 4, and to
         update the installation panels with the new version of
         CICS.
    
     2)  If you are installing DB2, and you are using CICS Version
         4, you no longer need to run DB2 installation job DSNTIJSU.
         DSNTIJSU's function for the old attach is to:
    
         a)  link the attachment facility programs with CICS stubs
             DFHEAI and DFHEAI0
         b)  provide attachment facility program and transaction
             definitions for the CICS System Definition file (CSD).
    
         With the new attachment facility on the CICS tape,
    
         a)  The attachment facility programs are shipped with the
             stubs already linked, and
         b)  CICS provides the attachment facility program
             definitions in a CICS-supplied group called DFHDB2.
    
         If you have already run installation job DSNTIJSU, you
         should check for downlevel attachment facility program
         definitions in your CSD.  See item 3, the next item, for
         details.
    
     3)  If you have any of the following prior definitions in your
         CICS Version 4 CSD, you must delete them.
    
           Program definitions to delete:
    
             DSNCCOM0 DSNCUEXT DSNCCOM1 DSNCCOM2 DSNCEDF1
             DSNCEDON DSNCEXT1 DSNCEXT2 DSNCMSG0 DSNCSTOP
             DSNCSTRT DSNCUEXT
    
           Transaction definitions to delete:
    
             -DSNC
             -any transaction that executes program DSNCCOM0,
               DSNCCOM1, or DSNCCOM2.
    
     4)  Your CICS initialization JCL must have your DB2 load
         library (DSN230.DSNLOAD or DSN310.SDSNLOAD) concatenated
         after CICS410.SDFHAUTH in the STEPLIB DD statement.  The
         STEPLIB statement should also contain the library that
         contains your resource control table.There isn't a need for
         DB2 product libraries in the DFHRPL DD statement.  However
         if a particular DB2 application needs to reference the
         DB2 load libraries then they should be concatenated after
         the CICS libraries.   What follows is JCL that is
         part of a sample CICS initialization job that includes
         the STEPLIB and the DFHRPL.
    
         //CICS41D JOB  CLASS=5,MSGLEVEL=(1,1),MSGCLASS=Z,TIME=1440
         //ONLINE  EXEC PGM=DFHSIP,TIME=1,REGION=7500K,DPRTY=(15,9),
         //             PARM=('SYSIN')
         //STEPLIB  DD  DSN=USER.CICS.SIT,DISP=SHR   CICS SIT TABLES
         //         DD  DSN=USER.CICS.RCTLIB,DISP=SHR        DB2 RCT
         //         DD  DSN=CICS410.SDFHAUTH,DISP=SHR
         //         DD  DSN=DSN310.SDSNLOAD,DISP=SHR
         //         DD  DSN=SYS1.V1R3M2.COB2CICS,DISP=SHR
         //         DD  DSN=SYS1.V1R3M2.COB2LIB,DISP=SHR
         //         DD  DSN=SYS2.LINKLIB,DISP=SHR
         //DFHRPL   DD  DSN=USER.CICS.TABLES,DISP=SHR    CICS TABLES
         //         DD  DSN=USER.CICS.RUNLIB,DISP=SHR    CICS APPLIC
         //         DD  DSN=CICS410.SDFHLOAD,DISP=SHR
         //         DD  DSN=SYS1.V1R3M2.COB2CICS,DISP=SHR
         //         DD  DSN=SYS1.V1R3M2.COB2LIB,DISP=SHR
         //         DD  DSN=SYS2.LINKLIB,DISP=SHR
    
     5)  You can no longer use DSNCRCTx on the DFHSIP parameter to
         specify the resource control table suffix.  The DSNCRCTx
         initialization parm has been replaced by the INITPARM=
         option.  (See item 4 under "Enhancements")
    
     6)  Almost all of the attachment facility programs have been
         renamed for the new attach from DSNCxxxx to DSN2xxxx.  If
         you have any application programs that reference attachment
         facility program names, you must change the program names.
         The name of the attachment facility "stub", DSNCLI, has not
         been changed and doesn't need to be relinked into your
         application programs.  The name of the dynamic plan exit
         program, DSNCUEXT, has also stayed the same.
    
     7)  You must delete any reference to DSNCCOM0, DSNCCOM1, or
         DSNCCOM2 in your program list tables (PLT tables).  To
         start the attach, use DSN2COM0 in your initialization PLT.
         To shut down the attach, use DSN2COM2 in your shutdown PLT.
    
         A sample initialization PLT:
    
        //PLTPI  JOB  MSGCLASS=H,CLASS=H,MSGLEVEL=(1,1),REGION=4096K
        //STEP1  EXEC DFHTAB41
        //ASSEM.SYSUT1 DD *
               PRINT ON,NOGEN
                 DFHPLT  TYPE=INITIAL,SUFFIX=41
                 DFHPLT TYPE=ENTRY,PROGRAM=DFHDELIM
                 DFHPLT TYPE=ENTRY,PROGRAM=DSN2COM0
                 DFHPLT TYPE=ENTRY,PROGRAM=SQLPGM1
                 DFHPLT TYPE=FINAL
    
    
         A sample shutdown PLT:
    
        //PLTSD  JOB  MSGCLASS=H,CLASS=H,MSGLEVEL=(1,1),REGION=4096K
        //STEP1  EXEC DFHTAB41
        //ASSEM.SYSUT1 DD *
               PRINT ON,NOGEN
                 DFHPLT  TYPE=INITIAL,SUFFIX=4D
                 DFHPLT TYPE=ENTRY,PROGRAM=DSN2COM2
                 DFHPLT TYPE=ENTRY,PROGRAM=DFHDELIM
                 DFHPLT TYPE=FINAL
                 END
    
         Shutting down the attachment facility during CICS
         initialization isn't supported.  In other words, don't put
         DSN2COM2 in your PLTPI, even if DSN2COM0 is in there first.
         DSN2COM2 is only supported in the PLTSD.
    
     8)  You must change any application programs that now link to
         DSNCCOM0, DSNCCOM1, or DSNCCOM2 to start or shut down the
         attach.  To start the attachment facility from an
         application program, link to DSN2COM0.  To shut the
         attachment facility down, link to DSN2COM2.  Starting or
         stopping the attach by EXEC CICS START TRANSID('DSNC') is
         NOT supported.
    
     9)  If you have any applications that use the CICS EXTRACT EXIT
         command to determine whether the attachment facility is
         active, you must change the command from:
    
         EXEC CICS EXTRACT EXIT PROGRAM('DSNCEXT1') ENTRY('DSNCSQL')
           to:
         EXEC CICS EXTRACT EXIT PROGRAM('DSN2EXT1') ENTRY('DSNCSQL')
    
         However, you might wish to replace the EXTRACT EXIT command
         with the INQUIRE EXITPROGRAM command.  INQUIRE EXITPROGRAM
         has an advantage over EXTRACT EXIT in that it can
         distinguish between whether an exit is ENABLED or ENABLE
         STARTED.  See the "Enhancements" section above for more
         information.
    
    10)  The CICS attach trace ID ranges have changed from 1-199 to
         256-511.  If you have explicitly coded the PLNXTR1,
         PLNXTR2, or TRACEID options in the resource control table,
         you must change these options to traceids within the new
         range.  The default traceids for the old attachment
         facility are 192, 193 and 194 (x'C0', x'C1' and x'C2').
         The corresponding default traceids for the new attachment
         facility are 448, 449 and 450 (x'1C0', x'1C1' and x'1C2').
    This information is continued in II07634.......
    

Local fix

  • Additional keywords: traceid rct dsn244 dsn243
    

Problem summary

Problem conclusion

Temporary fix

Comments

  • This is a db2 informational apar.
    

APAR Information

  • APAR number

    II07633

  • Reported component name

    PB LIB INFO ITE

  • Reported component ID

    INFOPBLIB

  • Reported release

    001

  • Status

    CLOSED CAN

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    1994-02-18

  • Closed date

    1994-06-06

  • Last modified date

    1997-03-05

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

Applicable component levels

[{"Business Unit":{"code":null,"label":null},"Product":{"code":"SG19O","label":"APARs - MVS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"001","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEPEK","label":"Db2 for z\/OS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"001","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
14 December 2020