START requests

Recovery of EXEC CICS START requests during transaction backout depends on some of the options specified on the request.

The options that affect recoverability are:
PROTECT
This option effectively causes the start request to be treated like any other recoverable resource, and the request is committed only when the task issuing the START takes a syncpoint. It ensures that the new task cannot be attached for execution until the START request is committed.
FROM, QUEUE, RTERMID, RTRANSID
These options pass data to the started task using temporary storage.

When designing your applications, consider the recoverability of data that is being passed to a started transaction. A description of the recovery of START requests during transaction backout for different combinations of these options follows :

START with no data (no PROTECT)
Transaction backout does not affect the START request. The new task will start at its specified time (and could already be executing when the task issuing the START command is backed out). Abending the task that issued the START does not abend the started task.
START with no data (PROTECT)
Transaction backout of the task issuing the START command causes the START request also to be backed out (canceled). If the abended transaction is restarted, it can safely reissue the START command without risk of duplication.
START with recoverable data (no PROTECT)
Transaction backout of the task issuing the START also backs out the data intended for the started task, but does not back out the START request itself. Thus the new task will start at its specified time, but the data will not be available to the started task, to which CICS® will return a NOTFND condition in response to the RETRIEVE command.
START with recoverable data (PROTECT)
Transaction backout of the task issuing the START command causes the START request and the associated data to be backed out. If the abended transaction is restarted, it can safely reissue the START command without risk of duplication.
START with nonrecoverable data (no PROTECT)
Transaction backout of the task issuing the START does not back out either the START request or the data intended for the (canceled) started task. Thus the new task will start at its specified time, and the data will be available, regardless of the abend of the issuing task.
START with nonrecoverable data (PROTECT)
Transaction backout of the task issuing the START command causes the START request to be canceled, but not the associated data, which remains stranded in temporary storage.
START CHANNEL
A channel is not available on restart, so tasks that are associated with channels (that is, they issue a START CHANNEL command) are viewed as nonrecoverable and are not restarted.
Note: Recovery of temporary storage (whether or not PROTECT is specified) does not cause the new task to start immediately. It may qualify for restart like any other task, if RESTART(YES) is specified on the transaction resource definition. On emergency restart, a started task is restarted only if it was started with data written to a recoverable temporary storage queue.