ABENDUxxxx procedure

Use this procedure when an IMS user abnormal termination occurs. For user abends, you must gather more information before calling IBM® Software Support.

A message usually precedes a user abend. First, find the message and then the abend code in IMS Version 15.2 Messages and Codes, Volume 1: DFS Messages or IMS Version 15.2 Messages and Codes, Volume 2: Non-DFS Messages. Then, if you need further diagnostic information (such as return codes) that you can use to build the search argument, or information about why the abend was issued, refer to the IMS Version 15.2 Messages and Codes, Volume 3: IMS Abend Codes.

If you cannot solve the problem by using the information in the IMS Version 15.2 Messages and Codes, Volume 3: IMS Abend Codes, develop a search argument.

ABENDUxxxx keywords

Replace the xxxx part of the ABENDUxxxx keyword with the user abend code from either the termination message or the abend dump. User abends are always represented in decimal.

Keyword: module name

You can determine the name of the module that received the abend in either of the following ways:

  • Check both the dump title and message DFS629I, which might contain the name of the module that ended abnormally.
  • Use the PSW address at the time of abend. You can find this address in the IMS-formatted section of the dump under the diagnostic area or in the z/OS®-formatted section. From the PSW address, scan backward through the eye catchers until you find a module identifier.

Use the module name in the search argument for standard user abends only. For pseudoabends, do not include the module name as part of the argument. IMS Version 15.2 Messages and Codes, Volume 3: IMS Abend Codes indicates whether the abend is a pseudoabend or a standard abend.

Abend-specific keywords

By examining the information in IMS Version 15.2 Messages and Codes, Volume 3: IMS Abend Codes, you might gather additional keywords that can be pertinent to the problem, such as:

  • User call function
  • Internal call function
  • Database organization
  • Messages

    Replace the xxxxxxx part of keyword MSGxxxxxxx with the actual message identifier (for example, the keyword for message DFS053I is MSGDFS053I).

  • Return codes

    Replace the xx part of keyword RCxx with the associated hexadecimal return code (for example, the keyword for return code C is RC0C).

  • Function codes

    Replace the xxxx part of keyword FCxxxx with the associated hexadecimal function code (for example, the keyword for function code 13 is FC0013).

Search argument example

If, for example, ABENDU3046 occurred in IMS module DFSPCC20 with message DFS3624I indicating function code 291 and return code 4, the search argument to use is:
5655J3800 ABENDU3046
For a structured database search, use this search argument:
PIDS/5655J3800 AB/U3046

With this search argument, you might receive numerous hits, which would most likely include the APAR describing your problem. You can add keywords from the section Type-of-failure keyword to narrow the field of hits received. It is a good idea to use the OR operator on these additional keywords at first. Module name DFSPCC20 is not included as part of the search argument because ABENDU3046 is a pseudoabend.

The additional keywords for the above scenario are:
MSGDFS3624I | RC04 | FC0291
For a structured database search, use this search argument:
MS/DFS3624I PRCS/00000004 OPCS/0291

Additional documentation

IBM Software Support might ask you to obtain certain information to determine and resolve the problem. At times you might need to create the problem again in order to gather this documentation.

For database problems, ensure that you have access to the following documentation before calling IBM Software Support:

  • A dump of the problem
  • DBDGENs
  • PSBGENs
  • A copy of the databases involved in the error
  • Logs and archive tapes that might have activity against the databases
  • Output from both the DL/I and LOCK traces
  • When tracing to the log, a printout of the traces
  • A current CDS list or a current SMP/E target zone
  • A current assembly listing of DFSADSCT from IMS.ADFSSMPL (control block DSECTs)

Problems can be resolved more quickly if the documentation listed above is available.

IRLM procedure

Use this procedure when the IRLM terminates abnormally.

  1. Locate the PSW and register contents at entry to the abend either from the software LOGREC entry or from the RTM2WA summary in the formatted section of the SDUMP.
    1. If the PSW is not within an IRLM module (prefixed with DXR), determine the system component in which the abend occurred and use the diagnostic procedure for that component to resolve the problem.
    2. If the RTM2WA summary entry shows that the IRLM was terminated by an abend completion code of U2017, U2018, U2019, U2020, U2022, U2023, U2024, U2025, U2027, U2031 (X'7E1', X'7E2', X'7E3', X'7E4', X'7E6', X'7E7', X'7E8', X'7E9', X'7EB', or X'7EF'), the IRLM task was terminated because of an error either in a subtask or in an SRB related to the IRLM. To diagnose the problem, use the software LOGREC entry or the RTM2WA summary entry for the original error in the subtask or related SRB.
  2. Register 12 normally contains the base register contents for the module that was in control at the time of the error.
  3. Register 9 normally contains the address of the RLMCB if the error occurred during IRLM processing.
  4. Using the module name, find the function keyword and locate the function and subfunction keywords.

Examples

An example of a search argument for an IRLM problem is:

569516401 ABEND0C4 DXRRL200

For a structured database search, an example is:

PIDS/569516401 AB/S00C4 RIDS/DXRRL200