On Thu, Jun 02, 2005 at 07:46:07AM -0400, Peter Relson ([EMAIL PROTECTED]) wrote: [...] > Adding to existing data sets > resulting in new extents is what causes problems. That is > why IBM recommends that you allocate your LNKLST PDSs so that > they cannot have secondary extents.
Agreed. So, how do you do this? Specify a secondary allocation of 0? What about the following (incorrect but extremely common) JCL? // EXEC whateverCL //SYSLMOD DD DISP=SHR,DSN=some.linklist.dataset That seemingly-reasonable JCL will allow secondary extents to be allocated. Why? Because all of the IBM-supplied whateverCL procs have //SYSLMOD DD UNIT=something,DISP=(MOD,PASS),SPACE=(t,(p,s)) . Since, as touched on in another thread, the //SYSLMOD override doesn't nullify keywords in the proc which weren't on the override, the secondary quantity "s" is applied on a one-time basis and a secondary extent can be taken. The "fix" for this is to specify // EXEC whateverCL //SYSLMOD DD DISP=SHR,DSN=some.linklist.dataset,SPACE= Now, how many people do that? Even ignoring the linklist issue, this design problem wreaks all kinds of havoc. If the in-proc DD contains RLSE (because after all it was set up for a temporary dataset), then you end up with a bunch of tiny extents. And if the allocation type specifications are different, you can get track-allocated secondary extents in datasets which were allocated CYL or ROUND. I won't even mention what happens to libraries with blocksizes less than the maximum when the SYSLMOD in the proc contains a BLKSIZE= value larger than the dataset's original blocksize. (I don't know about now, but in the past, compressing such a dataset with IEBCOPY would destroy it because IEBCOPY would move members until it encountered a block larger than the blocksize, then it would bail without updating the directory for the already-moved members.) Personally, I think the quick fix for this would be to risk breaking poorly written JCL by completely removing SYSLMOD from all whateverCL procs. This is why I have used only my own custom-written whateverCL procs for the last 30 years. My personal rule of thumb: vendor supplied JCL is *always* wrong. /Leonard ---------------------------------------------------------------------- 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