IBM Support

PH17531: ABO OPTIMIZED MODULE ABENDS WITH 0CA DECIMAL OVERFLOW EXCEPTION WHEN USING LE TRAP(OFF) OPTION IN A MIXED LANGUAGE APPLICATION.

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • ABO optimized module abends with 0CA Decimal Overflow Exception
    when using LE TRAP(OFF) option in a mixed language application.
    

Local fix

  • change the TRAP option to TRAP(ON,SPIE)
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users of IBM Automatic Binary Optimizer      *
    *                 (ABO) for z/OS, v1.3 specifying ARCH=12 and  *
    *                 the LE TRAP(OFF) runtime option in a mixed   *
    *                 language application (e.g. COBOL and C or    *
    *                 when using XML features in COBOL)            *
    ****************************************************************
    * PROBLEM DESCRIPTION: COBOL programs, irrespective of ABO, on *
    *                      z/OS rely on Language Environment (LE)  *
    *                      to suppress any 0CA Decimal Overflow    *
    *                      Exceptions that may occur when running  *
    *                      as part of a mixed language             *
    *                      application or when making use of XML   *
    *                      features.                               *
    *                                                              *
    *                      ABO generates different hardware        *
    *                      instructions than those present in the  *
    *                      original module so decimal overflow     *
    *                      exceptions may occur in situations      *
    *                      that did not happen when running the    *
    *                      original module.                        *
    *                                                              *
    *                      This is because the various z hardware  *
    *                      instructions have different defined     *
    *                      behavior when decimal overflow happens  *
    *                      (i.e. some will cause 0CA exceptions    *
    *                      and others will not).                   *
    *                                                              *
    *                      However, with the usual and IBM         *
    *                      recommended TRAP(ON,SPIE) LE runtime    *
    *                      option setting there is no difference   *
    *                      in behavior due these different         *
    *                      instruction choices as LE will always   *
    *                      suppress any of these decimal overflow  *
    *                      exceptions, should they occur.          *
    *                                                              *
    *                      But, when specifying TRAP(OFF) in a     *
    *                      mixed language application it is        *
    *                      possible that abends to 0CA Decimal     *
    *                      Overflow Exception can happen as        *
    *                      TRAP(OFF) prevents LE from suppressing  *
    *                      these, or any, exceptions.              *
    *                                                              *
    *                      These abends are most likely to happen  *
    *                      with the ARCH=12 ABO option was used.   *
    *                                                              *
    *                      Note that the exceptions will only      *
    *                      happen in the first place if the        *
    *                      modules in the run unit contain         *
    *                      languages other than the COBOL or if    *
    *                      certain COBOL features such as XML are  *
    *                      used.                                   *
    *                                                              *
    *                      So running with TRAP(OFF) in a pure     *
    *                      COBOL application (without XML          *
    *                      features) will not cause any 0CA        *
    *                      abends with or without ABO optimized    *
    *                      modules present.                        *
    ****************************************************************
    * RECOMMENDATION: Apply provided service and also consider     *
    *                 changing the LE runtime option from          *
    *                 TRAP(OFF) to TRAP(ON,SPIE)                   *
    ****************************************************************
    ABO was modified to generate different instructions that will
    not trigger decimal overflow exceptions so abends will no
    longer happen in the reported cases when specifying TRAP(OFF).
    

Problem conclusion

  • ABO optimized modules are now much less likely to trigger
    decimal overflow exceptions so 0CA abends will no longer happen
    in the reported cases when specifying TRAP(OFF).
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH17531

  • Reported component name

    AUTO BINARY OPT

  • Reported component ID

    5697AB100

  • Reported release

    130

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2019-09-30

  • Closed date

    2019-10-02

  • Last modified date

    2019-11-01

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

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

    UI65636 UI65637

Modules/Macros

  • BOZBXITA BOZEXE1  BOZJIVP  BOZMSGE  BOZMSGK  BOZMSGT  BOZOBJ1
    BOZOPT   BOZRIDT  BOZSRC1
    

Fix information

  • Fixed component name

    AUTO BINARY OPT

  • Fixed component ID

    5697AB100

Applicable component levels

  • R130 PSY UI65636

       UP19/10/04 P F910

  • R13J PSY UI65637

       UP19/10/04 P F910

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":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SSERQD","label":"IBM Automatic Binary Optimizer for z\/OS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"130","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"130","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
01 November 2019