On Sat, 26 May 2007 15:09:36 EDT, IBM Mainframe Discussion List wrote:
>
>>Good idea.  I'll ask my admins to add to my (and other users') TSO  logon 
>>PROCs DD statements for data set names that we're likely to  allocate 
>>dymamically in our TSO sessions.
>
>So far, I thought this thread was all about jobs with multiple steps.   Are
>TSO logon PROCs on your system likely to have multiple steps?
>
I was trying to point out by example, not that multi-step TSO procs
need be supported (apparently that's prohibited anyway), but that
often the coder of a DYNALLOC call doesn't know a priori what DSNAME
will be allocated.  In fact, if as you suggested earlier:

    Maybe users should read the documentation (if it mentions this  exposure),
    realize that there is an exposure (this may be asking a lot),  and add a DD
    statement to the step that does the dynamic allocation so the  Initiator 
will not
    be fooled (if they know how that step works).

all DSNAMES dynamically allocated should also appear in DD statements in JCL,
there would be little use for DYNALLOC.  Programmers might as well use the
JCL allocation instead.

I understand the hazard that a "dusty deck" containing:

    //STEP1   EXEC ...
    //SYSUT2   DD  DISP=(NEW,CATLG),...
        ...
    //STEP2   EXEC
    //SYSUT1   DD  DISP=SHR,DSN=*.SYSUT2

would, if the downgrade ENQ facility were provided, find the system behavior
changed in that some other job might modify the data set between the steps
(but only if that other job updated with DISP=SHR, not very good practice).
Perhaps "downgradable" should be an option on the DD statement:

    //SYSUT2   DD  DISP=((NEW,DOWNGRADABLE),CATLG),...

... or on the JOBPARM.

I understand that long ago the progenitor of z/OS maintained the ENQ
until the last step of the job; doing the DEQ after the last step
using the DSNAME in a DD statement was an innovation, undoubtedly in
response to customer requirements.  Didn't this likewise introduce
an exposure for jobs that allocated a DSNAME in JCL only in an earlier
step and DYNALLOCed it in a later step? Or was the change to early
DEQ introduced before the advent of dynamic allocation?

-- gil

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to