A fix is available
APAR status
Closed as program error.
Error description
AbendS878 occurs with Debug Tool in CICS JVM environment due to SCB leak. Additional symptoms: ABEND878 and ESTAEX EQANCEST (PI40953 at 13.1) The current execution line does not move when stepping through a large application where the DSA chain exceeds 100 save areas. Instead, line 1 is constantly highlighted and the QUERY LOCATION command indicated the program is at line 0. (PI41131 at 12.1) AbendS0C1 from entry @@DPIFN1 when using z/OS 1.13 LE and debugging a C or C++ program. . Additional Symptoms in CICS Address Spaces . You may suffer S878, S80A or code 878/AKEX abends. An SVC dump will show an unusually high LSQA usage below the line ( subpool 255 key 0 storage.) . Using VERBX VSMDATA 'NOG SUMM' to examine the storage pattern, you may see something similar to this in the AQAT: . AQAT: Addr 00751000 Size 113000 DFE: Addr 00751000 Size 600 DFE: Addr 00752000 Size 100 DFE: Addr 00753000 Size 100 DFE: Addr 00754000 Size 100 DFE: Addr 00755000 Size 100 DFE: Addr 00756000 Size 100 DFE: Addr 00757000 Size 100 DFE: Addr 00758000 Size 100 DFE: Addr 00759000 Size 100 DFE: Addr 0075A000 Size 100 DFE: Addr 0075B000 Size 100 DFE: Addr 0075C000 Size 100 DFE: Addr 0075D000 Size 100 DFE: Addr 0075E000 Size 100 DFE: Addr 0075F000 Size 100 DFE: Addr 00760000 Size 100 DFE: Addr 00761000 Size 100 DFE: Addr 00762000 Size 100 DFE: Addr 00763000 Size 100 DFE: Addr 00764000 Size 100 DFE: Addr 00765000 Size 100 DFE: Addr 00766000 Size 100 DFE: Addr 00767000 Size 100 DFE: Addr 00768000 Size 100 DFE: Addr 00769000 Size 100 DFE: Addr 0076A000 Size 100 DFE: Addr 0076B000 Size 100 ... with many dozen more x'100' byte DFEs (free slots) . When browsing some of this storage, it looks like this: . Address Offset Hex 00752100 00752140 3176E680 10000000 049B30D0 00752110 +10 0380DB82 00752118 00000000 00000000 00752120 +20 00002C31 4821DF68 00000000 7F20A010 00752130 +30 00008FF4 00C000F6 00008FF4 000000F6 00752140 +40 00752180 3176E680 10000000 049B30D0 00752150 +50 0380DB82 00752158 00000000 00000000 00752160 +60 00002C30 4821DF68 00000000 7F20A010 00752170 +70 00008FF4 00C000F6 00008FF4 000000F6 00752180 +80 007521C0 3176E680 10000000 049B30D0 00752190 +90 0380DB82 00752198 00000000 00000000 007521A0 +A0 00000C8B 4821DF68 00000000 7F20A010 007521B0 +B0 00008FF4 00C000F6 00008FF4 000000F6 007521C0 +C0 00752200 3176E680 10000000 049B30D0 007521D0 +D0 0380DB82 007521D8 00000000 00000000 007521E0 +E0 00000C8A 4821DF68 00000000 7F20A010 007521F0 +F0 00008FF4 00C000F6 00008FF4 000000F6 00752200 +100 00752240 3176E680 10000000 049B30D0 00752210 +110 0380DB82 00752218 00000000 00000000 00752220 +120 00000C87 4821DF68 00000000 7F20A010 00752230 +130 00008FF4 00C000F6 00008FF4 000000F6 00752240 +140 00752280 3176E680 10000000 049B30D0 00752250 +150 0380DB82 00752258 00000000 00000000 00752260 +160 00000C86 4821DF68 00000000 7F20A010 00752270 +170 00008FF4 00C000F6 00008FF4 000000F6 00752280 +180 007522C0 3176E680 10000000 049B30D0 00752290 +190 0380DB82 00752298 00000000 00000000 007522A0 +1A0 00000C85 4821DF68 00000000 7F20A010 . This appears to be a chain of some kind of x'40' byte blocks. The first word points to the next block, and so on. . These are actually SCB's. Looking at some of the CICS TCBs, the TCB+x'A0' will point to a chain of SCBs for DFHKESTX. Debug Tool XEIIN and XEIOUT Global User Exits EQANCXIN and EQANCXOU are active. . Application transactions are going through JVM DTC_Clean processing which drives EXEC CICS RETURN. DT's GLUEs are setting an ESTAE. CICS is then "fooled" into adding another CICS ESTAE on the TCB. Often this is an Open TCB ( T8 for example.) . Diagnosing the issue: . To inspect this chain, get the address of the MVS TCBs for some of the T8 KTCBs in CICS. Format out this TCB using the following IPCS command: . CBF xxxxxxxx ASID(X'yyyy') STR(TCB) . replacing 'xxxxxxxx' with the address of the MVS TCB and 'yyyy' with the hex ASID for the CICS region. . In the output, a field labeled 'STAB' is the starting address for the SCBs. It will look similar to this: . STAB..... 00767A00 . See how many are in the chain by taking that address and issuing the RUNCHAIN command, as in . RUNC ADDRESS(00767A00) LINK(0:3) LENGTH(X'20') CHAIN(99999) DISP VERIFY . In the resulting output, max to the bottom and IPCS will tell you how many SCB control blocks are in the chain: . BLS18094I 35,132 blocks processed . Normally this should only be a handful. In the above case, there are over 35 thousand of them. This is why all the storage is being chewed up. .
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: Debug Tool 13.1 users who have the problems * * described in the Problem Description. * **************************************************************** * PROBLEM DESCRIPTION: AbendS878 occurs with Debug Tool in * * CICS JVM environment due to SCB leak. * * (PI40953 at 13.1) * * * * The current execution line does not * * move when stepping through a large * * application where the DSA chain * * exceeds 100 save areas. * * Instead, line 1 is constantly * * highlighted and the QUERY LOCATION * * command indicated the program is at * * line 0. * * (PI41131 at 12.1) * * * * AbendS0C1 from entry @@DPIFN1 when * * using z/OS 1.13 LE and debugging a C * * or C++ program. * **************************************************************** * RECOMMENDATION: Installations that need these * * problem fixes should install this service. * **************************************************************** Miscellaneous service.
Problem conclusion
Service available.
Temporary fix
Comments
APAR Information
APAR number
PI40953
Reported component name
DEBUG TOOL Z/OS
Reported component ID
5655Q1000
Reported release
D10
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2015-05-13
Closed date
2015-05-27
Last modified date
2019-03-12
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UI27973
Modules/Macros
EQA00ABE EQA00AIO EQA00CIC EQA00CND EQA00NMU EQA00OHH EQA0CINF EQA0SCL1 EQA0SCL2 EQA0SRP1 EQA0SRP2 EQA10PRC EQA80NMR EQA80VER EQAAFSPS EQADCCN0 EQALMA EQANCCSE EQANCDBG EQANCLDE EQANCREL EQANCXEI EQANMDBG EQARCCDA EQARCDBG EQARCEXP EQARCHEX EQARCI3E EQARCL4 EQARCOBD EQARCPDC EQARCTRC EQARCVND EQAYSMMN
Fix information
Fixed component name
DEBUG TOOL Z/OS
Fixed component ID
5655Q1000
Applicable component levels
RD10 PSY UI27973
UP15/05/29 P F505
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":"SSTQWA","label":"IBM Debug for z\/OS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"D10","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]
Document Information
Modified date:
12 March 2019