IBM Support

PK65029: DEDB PROCOPT=GO W/COMPRESSION ROUTINE CAUSED STORAGE OVERLAY WHEN COMPRESSION EXIT USED INVALID LL FOR UNCOMPRESSED DATA MOVE

Subscribe

You can track all active APARs for this component.

 

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:

    PK61101

  • 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