z/OS Language Environment Customization
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


ABTERMENC

z/OS Language Environment Customization
SA38-0685-00

Derivation: ABnormal TERMination of the ENClave

ABTERMENC sets the enclave termination behavior for an enclave ending with an unhandled condition of severity 2 or greater. TRAP(ON) must be in effect for ABTERMENC to have an effect.

Non-CICS default
ABTERMENC=((ABEND),OVR)
CICS® default
ABTERMENC=((ABEND),OVR)
Read syntax diagramSkip visual syntax diagram
Syntax

                       .-ABEND---.        .-OVR----.      
>>-ABTERMENC--=--(--(--+-RETCODE-+--)--,--+-NONOVR-+--)--------><

ABEND
Specifies that Language Environment issues an abend to end the enclave regardless of the setting of the CEEAUE_ABND flag by the assembler user exit. However, the setting of the CEEAUE_ABND flag affects the abend processing, as follows:
When CEEAUE_ABND is set to OFF, the following occurs:
  • Abend code: Language Environment sets an abend code value that depends on the type of unhandled condition.
  • Reason code: Language Environment sets a reason code value that depends on the type of unhandled condition.
  • Abend dump attribute: Language Environment does not request a system dump.
  • Abend task/step attribute (on z/OS): An abend is issued to terminate the task.
When CEEAUE_ABND is set to ON, Language Environment uses values set by the assembler user exit to determine abend processing:
  • Abend code: Value of the CEEAUE_RETC parameter of the assembler user exit.
  • Reason code: Value of the CEEAUE_RSNC parameter of the assembler user exit.
  • Abend dump attribute: Language Environment requests a system dump only if the assembler user exit sets CEEAUE_DUMP to ON. The system abend dump goes to the system abend ddname with the file name you define in your JCL. The file name is the name defined in the DD card.
  • Abend task/step attribute (on z/OS): If the assembler user exit sets CEEAUE_STEPS to ON, Language Environment issues an abend to terminate the step. Otherwise, Language Environment issues an abend to terminate the task.
RETCODE
Specifies that the enclave terminates with a nonzero return code.
However, the assembler user exit can modify this behavior as follows:
  • If the assembler user exit does not set the CEEAUE_ABND flag to ON during enclave termination, Language Environment returns to its caller with a return code and a reason code.
  • If the assembler user exit sets the CEEAUE_ABND flag to ON during enclave termination, Language Environment issues an abend to terminate the enclave. Language Environment sets the abend and reason code for the abend to equal the values of assembler user exit parameters, as follows:
    • Abend code: Value of the CEEAUE_RETC parameter of the assembler user exit. If the assembler user exit does not modify the CEEAUE_RETC value, Language Environment sets an abend code that maps to the severity of the condition and to the user return code.
    • Reason code: Value of the CEEAUE_RSNC parameter of the assembler user exit.
OVR
Specifies that the option can be overridden.
NONOVR
Specifies that the option cannot be overridden.

z/OS® UNIX considerations

In a multithreaded application with ABEND set for ABTERMENC only the main(IPT) thread will be ABENDed and the application terminated, regardless of which thread experienced the unhandled condition. All other threads (the NON-IPT threads) will be terminated normally, including the offending thread, if it is a NON-IPT thread.

Usage notes

When running with IMS™, the ABTERMENC(ABEND) setting ensures that IMS transactions are rolled back if errors occur in an application that is written in another Language Environment-enabled language; an abend causes IMS to roll back any database updates.

When running a batch job, the ABTERMENC(ABEND) setting ensures that a job step will abend if errors occur in an application that is written in another language.

For more information

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014