Altogether, to me this all seems a tremendous overkill for a problem that occurs a few time per year somewhere in the world. How many system programmers does it take to switch a lightbulb? How many to check a steplib concatenation on 047 abends?
Take your libraries and check them against D PROG,APF and you know what you're looking for. And those for whom this too complicated: don't touch a z/OS system until you have covered the dummies course. Kees. -----Original Message----- From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf Of Peter Relson Sent: 22 November, 2016 14:07 To: [email protected] Subject: Re: Which STEPLIB concatenation is not authorized? <snip> IMHO, we need an enhancement to CSVQUERY/CSVINFO (as appropriate) to return the fully-qualified data set name and volume and/or HFS path from which a module was actually fetched. (If it came from VLF, that information would need to be preserved at the time the module is cached so it can be provided to CSV.) </snip> I don't see this ever happening. The system does not keep that information. The extra cycles to determine that information cannot be justified at this time. The system also does not keep information about whether the fetch was satisfied from LPA, LNKLST, joblib, steplib, some tasklib or some user-specified DCB. By the way, CSV never actually knows the full file system path name. It knows only when USS provides it (which is not necessarily the full name). CSVQUERY and CSVINFO *do* provide the file system path name to the invoker. <snip> >However, it's not trivial to determine from where you were loaded. It >could be STEPLIB/JOBLIB, it could be LPA, it could be LNKLST. It shouldn't be that hard if you know the member name. Create a DCB for STEPLIB and open it. If that works, do a BLDL on the member name and if that works, you've found the module. If the BLDL fails, it's not in STEPLIB and JOBLIB isn't used. If the open fails, try the same with JOBLIB. </snip> It's not "hard" but it's not trivial either. If you're running under the job, there's no reason to create a DCB for STEPLIB and open it, as the DCB already exists and is open. You could just do a BLDL yourself using the DCB pointed to by TCBJLB. Ignoring the user-specified DCB case, the system search is, approximately: Do for every task from this task repeating using TCBOTC up through the jobstep program task look for the member in the TCBJLB task if there is one End Do Look for the member in LPA Look for the member in LNKLST What the system has, and could return (indeed does provide to the CSVFETCH exit as of z/OS 2.2) is the UCB address and CCHH of the data set. I don't claim to know exactly how, but you can get from that to the data set name. An enhancement could be made to CSVQUERY/CSVINFO to provide that data. Peter Relson z/OS Core Technology Design ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN ******************************************************** For information, services and offers, please visit our web site: http://www.klm.com. This e-mail and any attachment may contain confidential and privileged material intended for the addressee only. If you are not the addressee, you are notified that no part of the e-mail or any attachment may be disclosed, copied or distributed, and that any other action related to this e-mail or attachment is strictly prohibited, and may be unlawful. If you have received this e-mail by error, please notify the sender immediately by return e-mail, and delete this message. Koninklijke Luchtvaart Maatschappij NV (KLM), its subsidiaries and/or its employees shall not be liable for the incorrect or incomplete transmission of this e-mail or any attachments, nor responsible for any delay in receipt. Koninklijke Luchtvaart Maatschappij N.V. (also known as KLM Royal Dutch Airlines) is registered in Amstelveen, The Netherlands, with registered number 33014286 ******************************************************** ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
