How BRMS Handles Control Group Saves When There is an Error During the Backup Activity

It had been noted that some failures during a control group cause the control to end abnormally, whilst other errors allow the control group to continue, albeit with errors.              
                                                         
In general a BRMS Control Group save will continue onto the next item in the sequence, if the failure occurs on a non-save item such as a *EXIT entry. When BRMS encounters an error with a *EXIT, a BRM4116 is issued at the end of the control group.     
                                                          
If, however a BRMS Control Group hits an error on a save item (including but not limited to a library item, ( *SAVSYS, *ALLUSR..) then if an error occurs, the control group MAY fail and no further processing is performed.  The 'may' is qualified below.
                                                            
Whether the save fails or continues depends on :                

  •  Does BRMS know what it has, or has not, saved as a result of this error?                                        

If the error is a media or device error , the error is not recoverable and BRMS cannot be sure what has been saved. Therefore there is doubt about the BRMS save history and what is actually on tape, thus the control group will end at this point with a BRM1820. Subsystems will be started if required.                                         
                                                            
If the error encountered is a softer error, such as an object  is locked and BRMS cannot save this item, because BRMS is able to record what has not been saved successfully - the save will continue although BRM10A1, BRM15A1,  BRM4116 or BRM16A1 may be issued.                                                         
                                                         
The strategic direction for the code is to save more and more of any given control group, even if there are errors such as objects locks, media errors etc.  As a result BRMS will attempt to start on a new volume if the previous volume has encountered an error, for the next processing sequence, depending on the type or error.  
                                                        
For example, if BRMS encounters a 'recoverable' error during a *ALLUSR, and there is a *ALLDLO and *LINK next in the control group, BRMS may attempt to load a new volume and save these remaining items.                                       
                                                      
Looking at the BRMS history (WRKMEDIBRM), the libraries saved before this media error will show up as *FILE entries. This will be an indication that the save of these libraries was complete but the history information was not yet updated.   If a library is not listed at all, it was not  saved.  Sometimes it may be advantageous to monitor for these errors. One solution, is to call the control group from within a CL routine and then MONSG for this error(s).  This CL Program will have all the commands in it and then you have the ability to monitor for messages/failures. We do NOT recommend running save commands in a control group *EXIT but you can run a control group within a CL Program.           
                                                        
          NOTE:  If an IPL is specified to run via the Control Group attributes and one of the above errors occur during the processing of the sequences, BRMS will not IPL the system.

Copyright © Fortra, LLC and its group of companies. All trademarks and registered trademarks are the property of their respective owners.