APAR status
Closed as program error.
Error description
Customer application was reading through DEDB area using PROCOPT=GO. Area was being REORG'd online at the time. The pointer chain being followed was broken and IMS ended up referencing data in a buffer that was not a segment. However, by bad luck the data at the segment code position match the expected segment code so a U1026 was not issued at this point. The DB had compression exit defined for the segment. The exit was called. It so happened that the LL field was very, very, large and the bit representing compression in the flag byte following the key field was not set, so this appeared to be uncompressed data. The exit the customer was using, based on DFSCMPX0 sample source, in this case does not check the data LL vs DBD max LL+10 and did an MVCL with the bad length. This overlayed the segment work area pointed to by EPSTSEG2 and was large enough to overlay an EMHB in the EMHB pool. The BMP later abended U1026 SC57 when the residual data in the twin forward pointer was used as an RBA and passed to DBFMBED0 to retrieve the next segment. The overlay caused an abendS0C4 in EMHB pool storage compression shortly thereafter due to invalid data in block header ( chain field ). DBFCMP10 could check that the LL of a compressed segment is no larger than DBD max plus 10, which is the largest a compressed segment can be. The sample DFSCMPX0 compression exit could also check this.
Local fix
Modify compression exit to verify LL of uncompressed segments before moving data to destination field.
Problem summary
**************************************************************** * USERS AFFECTED: IMSFP V8 with compression exit defined. * **************************************************************** * PROBLEM DESCRIPTION: Abends0C4 occurred as a result of an * * overlay of the segment workarea * * pointed to by EPSTSEG2. * **************************************************************** * RECOMMENDATION: INSTALL CORRECTIVE SERVICE FOR APAR/PTF * **************************************************************** Customer application was reading through DEDB area using PROCOPT=GO. Area was being REORG'd online at the time. The pointer chain being followed was broken and IMS ended up referencing data in a buffer that was not a segment. However, the data at the segment code position matched the expected segment code so a U1026 was not issued at this point. The DB had compression exit defined for the segment. The exit was called and the LL field was very large. The exit the customer was using, in this case did not check the data LL vs DBD MAX LL and did an MVCL with the bad length. This overlayed the segment work area pointed to by EPSTSEG2 and was large enough to overlay an EMHB in the EMHB pool. The BMP later abended U1026 SC57 when the residual data in the twin forward pointer was used as an RBA and passed it to DBFMBED0 to retrieve the next segment. The overlay caused an abendS0C4 in EMHB pool storage compression shortly thereafter due to invalid data in block header ( chain field ). DBFCMP10 should check that the LL of a compressed segment is no larger than DBD max.
Problem conclusion
AIDS: RIDS/FP RIDS/DEDB FP DEDB GEN: *** END IMS KEYWORDS *** ********** DBFCMP10 * ********** DBFCMP10 has been updated in CASE 3 which calls EXPAND exit for DBFMCSS9 or DBFMGNR0 to validate the segment LL in the buffer is not greater than maximum segment length in the work area before we call the exit to expand the segment.
Temporary fix
********* * HIPER * *********
Comments
APAR Information
APAR number
PK65029
Reported component name
IMS V8
Reported component ID
5655C5600
Reported release
801
Status
CLOSED PER
PE
NoPE
HIPER
YesHIPER
Special Attention
NoSpecatt
Submitted date
2008-04-24
Closed date
2008-05-07
Last modified date
2008-10-23
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UK36261
Modules/Macros
DBFCMP10
Fix information
Fixed component name
IMS V8
Fixed component ID
5655C5600
Applicable component levels
R801 PSY UK36261
UP08/05/09 P F805
[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSCVRBJ","label":"System Services"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"801","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
23 October 2008