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