No recovery, Forward recovery – IBM SC34-7012-01 User Manual

Page 145

Advertising
background image

Making intrapartition TD physically recoverable can be useful in the case of some
CICS queues. For example, after a CICS failure, you might choose to restart CICS
as quickly as possible, and then look for the cause of the failure. By specifying
queues such as CSMT as intrapartition and physically recoverable, the messages
produced just before the failure can be recovered and are therefore available to
help you diagnose the problem.

No recovery

Recovery is not performed if you specify NO on the recovery attribute of an
intrapartition transient data definition.

Forward recovery

CICS does not provide forward recovery support for transient data.

If you want forward recovery of intrapartition transient data, provide application
programs to record the changes made to the contents of your intrapartition
transient data queues while CICS is running. Changes are recorded in a user
journal. The information journaled must include:

v

Each WRITEQ, including the data that is written

v

Each READQ

v

Each DELETEQ of a queue

v

For logically recoverable queues, each backout, syncpoint, or syncpoint rollback

You must provide the application program to rebuild the data by reading the
journaled information and applying that information to the transient data queue.
Your application program could run in the program list table (PLT) phase or after
emergency restart. Until the data set is fully recovered, do not write to the queue,
because that would probably result in wrongly-ordered data, and a read might not
provide valid data (or any data at all). For these reasons, running the recovery
program in the PLT phase is probably preferable to running it after the restart.

If you do not have such a recovery strategy and you perform a cold start with a
corrupted intrapartition data set, you will lose the contents of the intrapartition
data set. You also lose the contents of the intrapartition data set if you specify
TDINTRA=EMPTY as a system initialization parameter.

Physically recoverable TD queue (before failure)

Item 1

Item 2

Item 3

Item 4

CICS abends, causing
UOW to fail in-flight

Next READ

Next WRITE

pointer

pointer

State of physically recoverable TD queue (after emergency restart)

Item 1

Item 2

Item 3

Item 4

CICS abends, causing
UOW to fail in-flight

Next READ

Next WRITE

pointer

pointer

Figure 12. Illustration of recovery of a physically recoverable TD queue

Chapter 12. Defining recoverability for CICS-managed resources

133

Advertising