A fix is available
APAR status
Closed as program error.
Error description
You are running a threadsafe program and have CONCURRENCY=REQUIRED specified. You are running on an OPEN TCB, your program does a LINK PROG to a non-threadsafe program and CICS switches to the QR TCB to run. . Once the non-threadsafe program is done CICS returns back to the OPEN TCB. In doing so you find CICS actually does three TCB CHANGE_MODE's to get back to the OPEN TCB. Instead of just doing one CHANGE_MODE from the QR TCB to the OPEN TCB. . So an extra CHANGE_MODE to get back to the OPEN TCB occurs in order to do a DISSOCIATE_THREAD again and then back to the QR and then finally to the OPEN TCB. Additional Symptom(s) Search Keyword(s): KIXREVDAM
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: All CICS users. * **************************************************************** * PROBLEM DESCRIPTION: An additional TCB change mode takes * * place when linking to a * * concurrency(required) program. * **************************************************************** * RECOMMENDATION: * **************************************************************** CICS TS 5.1 has improved the performance of CICS Java applications using JDBC/SQLJ by allowing DB2 access from the T8 TCB rather than forcing a switch to an L8 TCB as in previous releases. The previous mechanism was required since DB2 is called under the L8 TCB at end of task syncpoint, when the T8 TCB has gone away, and so needed the L8 to be the CICS TCB associated with the DB2 thread. With the new mechanism, the T8 TCB can call DB2 and be associated with the thread; however, the CICS RMI has a switch_application_environment mechanism that allows DB2 to dissociate the TCB from the DB2 thread during certain operations, such as a subsequent EXEC CICS LINK command. Further calls to DB2 (for API or syncpoints) can reassociate the thread with the TCB in use at the time. The TRUE interest profile bit UEFMSWAE is used to indicate that a task has an interest in switch application environments - DFHD2EX1 sets it on when a call to DB2 is made. However, the bit is not turned off when a dissociate call to DB2 occurs. This means that subsequent switch_application_ environment calls will invoke the CICS RMI and call DFHD2EX1 and DFHD2D2, before the CICS DB2 attach logic determines that no dissociation is required. Since the TRUE is OPENAPI, it requires a switch to the L8 TCB in order to determine this. In the customer's case, a concurrency(required) program called DB2 (associating its open TCB with the DB2 thread). It then linked to a concurrency(quasirent) program, which drives the switch_application_environment logic and called DB2 to dissociate the thread from the TCB. When the new program issued its own link to a concurrency(required) program, CICS switched from QR to L8 in order to call the CICS DB2 TRUE, only to find no dissociatation was required. CICS returned to QR, before switching back to the L8 to drive the concurrency(required) program. This was an unnecessary TCB switch since the DB2 thread was already dissociated at this point in time. KEYWORDS: CHANGE_MODE DFHDSAT DFHDSATM DFHAPEXM apex_switch_application_environment
Problem conclusion
DFHD2EX1 has been changed to switch UEFMSWAE off when a dissociate call to DB2 has taken place.
Temporary fix
FIX AVAILABLE BY PTF ONLY
Comments
×**** PE15/12/23 FIX IN ERROR. SEE APAR PI54515 FOR DESCRIPTION
APAR Information
APAR number
PI36541
Reported component name
CICS TS Z/OS V5
Reported component ID
5655Y0400
Reported release
800
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2015-03-06
Closed date
2015-04-20
Last modified date
2016-02-09
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UI26932 UI26933
Modules/Macros
DFHD2EX1
Fix information
Fixed component name
CICS TS Z/OS V5
Fixed component ID
5655Y0400
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":"SSGMGV","label":"CICS Transaction Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"5.1","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]
Document Information
Modified date:
22 July 2020