Executing batch backout when the RCDSs are unavailable

In most scenarios, the RCDSs that were allocated to the CICS® VR server address space when the batch job that made the updates you want to back out was originally run are allocated to the CICS® VR batch backout job on the DWWCONx DD statements. However, you might encounter a situation where the RCDSs are no longer available.

For example, the RCDSs might have been physically corrupted. You can still perform batch backout processing when the RCDSs are not available if you know the name of the undo log stream that was allocated to CICS® VR when the batch job that made the updates you want to back out was originally run.
Note:
The RCDSs contain information that is used by CICS® VR batch backout to perform various error checking and improve performance. Therefore, executing CICS® VR batch backout without the RCDSs allocated causes increased processing time and less error checking.
To run CICS® VR batch backout when the RCDSs are unavailable, complete the following additional tasks:
  • Remove the DWWCONx DD statements from the batch backout JCL.
  • Add the RCDS(NO) keyword to the BATCHBACK command.

    RCDS(NO) indicates that the RCDSs are unavailable to CICS® VR during this batch backout run.

  • Add the MVSLOG(undo log stream) command to the batch backout job.

    undo log stream is the name of the undo log stream that was defined to CICS® VR when the batch job that made the updates you want to back out was originally run.

The following commands show an example of executing CICS® VR batch backout when the RCDSs are unavailable. The commands remove all updates that were made by the last step run in job TESTJOB, if it encountered an abend. CICS® VR batch backout processing reads the before-image log records from the DWW.UNDOLOG log stream.
Figure 1. Example of running CICS® VR batch backout when the RCDSs are unavailable
//BTCHBACK JOB ACCOUNTING INFORMATION,REGION=4M                              
//BA       EXEC PGM=DWWBACK                                        
//STEPLIB  DD DSN=DWW.SDWWLOAD,DISP=SHR                               
// DD DSN=DWW.SDWWLENU,DISP=SHR
//DWWLOAD DD DISP=SHR,DSN=DWW.SDWWLOAD
//        DD DISP=SHR,DSN=DWW.SDWWLENU
//        DD DISP=SHR,DSN=exits load library name                       
//DWWMSG   DD SYSOUT=*                                                       
//DWWPRINT DD SYSOUT=*                                                       
//DWWIN    DD *                                                              
   BATCHBACK JOB(TESTJOB) FAILED RCDS(NO)
   MVSLOG(DWW.UNDOLOG)
/*                                                                           
//