DDPROT/DSNPROT interactions

You can protect a data set from deletion by setting the DDPROT and DSNPROT options for the RCLOPTS statement in the controller. You must however consider the following interactions these have with the EQQUXCAT and EQQUXGDG exits:
  • EQQUXCAT (deletion prevention exit) and EQQUXGDG (simulation prevention exit) become active as soon as they are available to the EQQCLEAN program in the library. On the contrary, DDPROT and DSNPROT become active only after a Controller Restart or an appropriate MODIFY command are issued. For this reason, it may happen that for some jobs the EQQCLEAN exits apply a logic based on DDPROT/DSNPROT naming that differs from the normal logic of RCLOPTS.
  • The prevention logic of RCLOPTS DDPROT/DSNPROT is applied at the controller level, so that by the time the EQQCLEAN exits are to be executed, the controller has already eliminated the protected data set from the action list. At this point, if the EQQCLEAN exits are called, EQQUXCAT can only protect from deletion other data sets, but cannot modify the already protected ones.