On Mon, Apr 20, 2015 at 10:36 AM, Steff Gladstone <[email protected] > wrote:
> The job is performing a change management system operation (moving a new > program version to production, saving previous generations, providing for > possible fallback, etc.). The operation for various reasons must be > performed in several job steps. We want to ENQ on the name of the program > being handled to prevent other operations or changes being made to that > program in parallel. Of course the ENQ must remain in effect for the > duration of the entire operation. > > OK, with your kind indulgence, I will make a suggestion which many may consider "obscene". You can use UNIX services to fork() and run another program (exec() or execmvs() ) in a separate address space. (you could use ASCRE instead to avoid UNIX). This other program, running in the separate address space, runs totally independently of your batch job. But you can communicate with it using a number of IPC (Inter Process Communications) protocols such as UNIX message queues or FIFO pipes (personally, I'd use a UNIX message queue). The other address space would do the ENQs and DEQs on demand and they be "normal" system level enqueues. Of course, this would require a "communications protocol" where the batch job would send the request, wait for reply, then continue while the UNIX program would wait for a request, ENQ/DEQ, reply, all in a loop. Each batch job would have its own associated UNIX "daemon" (as it might be called in UNIX). In any case, the last step of the job would be a program which tells the other address space to DEQ everything and shut down. If there is any problem with this other address space and it does not terminate properly, you can simply do a normal z/OS type CANCEL command on it and "poof!" the ENQs disappear normally. I mention this because all of this can be done by a "normal" (non-APF) program. This may be a "selling point" as many, myself included, dislike using APF "frivolously". Yes, this is a bit complicated. But z/OS itself does not have a "job execution level" ENQ. -- If you sent twitter messages while exploring, are you on a textpedition? He's about as useful as a wax frying pan. 10 to the 12th power microphones = 1 Megaphone Maranatha! <>< John McKown ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
