Initializing a session
During session initiation, error recovery procedure (ERP) processing can cause an application program task to be indefinitely suspended. This happens when an RPL exit routine is not coded and either SIMLOGON OPTCD=ASY or OPNDST OPTCD=(ACQUIRE,ASY) is followed by a CHECK macroinstruction for the associated RPL. Neither the SIMLOGON nor the OPNDST operation completes until ERP processing is finished. The CHECK macroinstruction causes the task that issued CHECK to be suspended for as long as it takes to complete the ERP processing.
To avoid suspension, use SIMLOGON OPTCD=ASY, and code an RPL exit routine to handle its completion. Then use OPNDST OPTCD=ACCEPT after the LOGON exit routine has been scheduled.