About this task

Such queuing can be done on a transient data queue associated with a terminal. A special transaction, triggered when the terminal is available, can then format and present the data.

For recovery and restart purposes:

vThe transient data queue should be specified as logically recoverable.

vIf the transaction that presents the data fails, dynamic transaction backout will be called.

If the terminal at which the transaction runs is a printer, however, dynamic transaction backout (and a restart of the transaction by whatever means) may cause a partial duplication of output—a situation that might require special user procedures. The best solution is to ensure that each unit of work corresponds to a printer page or form.

Managing transaction and system failures

To help you manage transaction failures and uncontrolled shutdowns of the system, a number of facilities are available to help you.

About this task

These facilities ensure that:

1.Files and databases remain in a coordinated and consistent state

2.Diagnostic and warning information is produced if a program fails

3.Communication between transactions is not affected by the failure

The actions taken by CICS are described under Chapter 8, “Unit of work recovery and abend processing,” on page 73 and “Processing operating system abends and program checks” on page 94.

Transaction failures

When a transaction fails, you can invoke CICS facilities during and after the abend process.

These facilities include:

vCICS condition handling

vHANDLE ABEND commands, and user exit code

vThe SYNCPOINT ROLLBACK command

vDynamic transaction backout (DTB)

vTransaction restart after DTB

vThe program error program (DFHPEP)

You can use these facilities individually or together. During the internal design phase, specify which facilities to use and determine what additional (application or systems) programming might be involved.

The RESP option on a command returns a condition ID that can be tested. Alternatively, a HANDLE CONDITION command is used in the local context of a transaction program to name a label where control is passed if certain conditions occur.

Chapter 13. Programming for recovery 149

Page 161
Image 161
IBM SC34-7012-01 manual Managing transaction and system failures, Transaction failures