Troubleshooting data for Language Environment (LE) 40xx abend problems

CICS® MustGather for Language Environment® (LE) 40xx abend problems

When Language Environment (LE) detects an unrecoverable error in an LE-enabled application, LE terminates a transaction with an EXEC CICS ABEND and an abend code numbered from 4000 to 4095. LE abends might occur when CICS is under stress (SOS) as described in 4xxx LE/370 abend codes. For more details about LE abend codes, see Language Environment abend codes in z/OS Language Environment Runtime Messages.

Gather the following diagnostic information before contacting the CICS support team to troubleshoot your LE 40xx abend problems.

If multiple abends occur within the same time frame (seconds), the first abend is often the cause of subsequent abends. Therefore, ensure that you send the diagnostic information for the initial abend to IBM® Support, unless the information is not available or you are otherwise requested.

Required data:
  1. The CICS message log that contains the messages leading up to the abend and the abend message. Message CEE1000S contains the abend code and the reason code that is associated with the abend. LE writes message CEE1000S to the system console. You can also find the message in CEEMSG. For more information, see z/OS Language Environment Runtime Messages.
  2. The MVS™ system dump that is taken at the point of failure. Create a transaction dump for all LE 40xx abends, except abend 4038. The transaction dump often does not contain enough information to diagnose the problem. Therefore, if the problem is re-creatable, request a system dump by entering the following command:
    CEMT SET TRD(40xx) SYS MAX(1) ADD

    where xx is the transaction abend code. Ensure that MAX is 1 greater than CUR to capture a dump. Check this by entering CEMT INQ TRD(40xx).

    A CICS system dump of an abend 4038 is not helpful because it is taken at the time of the last termination, not at the point of detection. If you receive an abend 4038, specify the following LE options:
    TERMTHDACT(UADUMP) ABTERMENC(ABEND) TRAP(ON)

    This produces a CICS transaction dump for an abend 4039.

    If you do not get a dump when the abend occurs, see Step 3 under the MVS system dump section Using dumps for CICS problem determination on z/OS® and Language Environment abend and condition handling for more instructions.

    To format the system dump in IPCS, you can use one of the following IPCS commands:
    • The LE verb exit LEDATA. Enter the following command:
      VERBX LEDATA ASID(00nn) CAA(xxxxxxxx) DSA(xxxxxxxx) ALL

      The output from LEDATA basically contains the same data as an LE dump in CEEMSG. For more information about the command, see Formatting and analyzing system dumps in z/OS Language Environment Debugging Guide.

    • The IPCS verb exit DFHPDxxx. Enter the following IPCS command:
      VERBX DFHPDxxx 'APS=<taskid=nnnnn>'

      where nnnnn is the task number of the abending task.

      This command instructs CICS routines to call the LE verb exit and generates the same output as the verb exit LEDATA. But it eliminates the need to determine the DSA address (register 13) and the CAA address (register 12). It also formats the LE Traceback, CAA, PCB, MEML, RCB, EDB, runtime options, heap control blocks, stack storage control blocks (User and Lib), DSA, and Condition Management control blocks.

  3. The CICS internal trace that is included in the MVS system dump when tracing is active. Ensure that the internal trace table size is big enough to contain sufficient data for diagnosis; for example, you can use a table size of 20480K. If your LE TERMTHDACT parameter is set to QUIET or MSG, a smaller CICS trace (4096K) is sufficient. When possible, turn on level 1 tracing for all CICS components and level 1-2 for the CICS application (AP) domain. By turning on level 2 tracing for the AP domain, you enable LE feature trace (FT). For more information about the TERMTHDACT parameter, see TERMTHDACT in z/OS Language Environment Customization and Generating a Language Environment dump with TERMTHDACT in z/OS Language Environment Debugging Guide.

    For more information, see Using trace for CICS problem determination on z/OS.

Optional data:
  1. LE traceback if requested by IBM Support. For more information, see Using trace for CICS problem determination on z/OS.
  2. If you need a larger trace, consider using the CICS auxiliary trace or the GTF Trace with the MVS system dump. Ensure that you turn on the levels of tracing as documented in the CICS internal trace section in Using trace for CICS problem determination on z/OS.