IBM Support

PH57859: ACCESSING VSAM FILES WITH PRIME KEY OF REFERENCE MAY RESULT IN 0C4 ABEND

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Accessing VSAM files with prime key of reference may result in
    0C4 abend
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users of Enterprise COBOL 5 and later        *
    *                 releases running programs that alter VSAM    *
    *                 files via both the primary and alternate     *
    *                 index file names when both files are open.   *
    ****************************************************************
    * PROBLEM DESCRIPTION: Unexpected 0C4 abend in module IGZEVIO  *
    *                      may occur during VSAM file I/O          *
    *                      operation processing and the process    *
    *                      stops.                                  *
    *                                                              *
    *                      The 0C4 may occur after trying to read  *
    *                      from the file via alternate index       *
    *                      right after a delete was done on        *
    *                      the same file via the primary key       *
    *                                                              *
    *                      For example,                            *
    *                                                              *
    *                      There are 2 VSAM files:                 *
    *                      VSAM.PRIMEKEY --> Prime key access      *
    *                      VSAM.ALTINDEX                           *
    *                      --> Alternate index file created        *
    *                           from VSAM.PRIMEKEY but             *
    *                           accessed with a prime key          *
    *                           defined with RECORD KEY clause.    *
    *                                                              *
    *                      Then the following sequence of actions  *
    *                      happen:                                 *
    *                                                              *
    *                      1. Obtain a record REC1 from            *
    *                      VSAM.PRIMEKEY                           *
    *                      2. Delete REC1 from VSAM.PRIMEKEY       *
    *                      3. Move REC1 to VSAM.ALTINDEX           *
    *                      4. Read REC1 from VSAM.ALTINDEX         *
    *                         using prime key                      *
    *                      5. After several reads of               *
    *                      VSAM.ALTINDEX,                          *
    *                         an 0C4 abend in IGZEVIO may occur.   *
    ****************************************************************
    * RECOMMENDATION: Install the provided PTF.                    *
    ****************************************************************
    The logic for VSAM file I/O operation processing in
    the COBOL Runtime contained incorrect logic that went into
    alternate key processing under certain condition when the
    alternate index VSAM file was being accessed using a prime key
    and reading of records that do not exist occur.
    
    COB0501T/K COB0502T/K COB0601T/K COB0602T/K COB0603T/K
    COB0604T/K
    

Problem conclusion

  • The COBOL runtime logic has been corrected to use the
    prime key processing logic when a VSAM file is accessed using a
    prime key regardless of whether it's an alternate index or
    non-alternate index file.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH57859

  • Reported component name

    LE ENT COBOL LI

  • Reported component ID

    568819812

  • Reported release

    7E0

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2023-10-27

  • Closed date

    2024-02-12

  • Last modified date

    2024-03-03

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

    UI95644 UI95645 UI95646

Modules/Macros

  • IGZCEV4  IGZCJNI2 IGZLLIBV IGZXAPI  IGZXCA31 IGZXCDA  IGZXD24
    IGZXDIVZ IGZXDMR  IGZXJNI2 IGZXLPIO IGZXLPKA IGZXLPKB IGZXLPKC
    IGZXLPKD IGZXLPKE IGZXLPKF IGZXLPKG IGZXPK2
    

Fix information

  • Fixed component name

    LE ENT COBOL LI

  • Fixed component ID

    568819812

Applicable component levels

  • R7C0 PSY UI95644

       UP24/02/24 P F402

  • R7D0 PSY UI95645

       UP24/02/24 P F402

  • R7E0 PSY UI95646

       UP24/02/24 P F402

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":"BU048","label":"IBM Software"},"Product":{"code":"SS6SG3","label":"Enterprise COBOL for z\/OS"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7E0","Line of Business":{"code":"LOB70","label":"Z TPS"}}]

Document Information

Modified date:
04 April 2024