FDDRL aborts the program if, for example, input/output errors are discovered while reading important metadata (labels), or in the case of program errors. How FDDRL behaves when a program is aborted depends on the type of processing:
Processing without FDDRL subtasks (
PROCESS-JOBS=*BY-MAINTASKparameter)
Abnormal termination (/CANCEL-PROGRAM, /CANCEL-JOB) of an FDDRL job occurs immediately, irrespective of other FDDRL jobs.Processing with FDDRL subtasks (
PROCESS-JOBS=*BY-SUBTASKS(...)parameter)If an FDDRL subtask is aborted with the command
/CANCEL-JOB, termination occurs immediately. Neither the FDDRL main task nor all other FDDRL jobs are affected.If the FDDRL subtask which monitors an online save is aborted with the
/CANCEL-JOBcommand, the write lock for the home pubset is canceled. However, the save jobs continue to run. The save itself is flagged as inconsistent and cannot be used for any restore operation.If an FDDRL program in the main task is aborted, for example with the command
/CANCEL-PROGRAM, the abortion is postponed until all currently active FDDRL subtasks have terminated. Inactive FDDRL subtasks, however, are no longer activated.If the FDDRL main task is aborted with
/CANCEL-JOB, it first aborts all currently active FDDRL subtasks and then terminates itself. In the case of an online save the FDDRL main task also releases the write lock for the home pubset.