Mark, I have the same cloning process as you logically. I know exactly the problem you face. Your rfe makes sense.
I get around it by cloning at the volume level, but there is always the outlier that needs to be cloned by itself, or the once in awhile fix that needs to be made. When I run into that I either rename then delete the enqueued dataset via ispf, and then reload, or if the dataset is actually in use validly, I use idcams to delete all members, compress, then reload via iebcopy. There is a restore with tol(enqf) I believe too. Dave Jousma Vice President | Director, Technology Engineering Fifth Third Bank | 1830 East Paris Ave, SE | MD RSCB2H | Grand Rapids, MI 49546 616.653.8429 ________________________________ From: IBM Mainframe Discussion List <[email protected]> on behalf of Mark Zelden <[email protected]> Sent: Friday, October 13, 2023 10:55:30 PM To: [email protected] <[email protected]> Subject: Re: DFDSS RFE - Please read / vote On Fri, 13 Oct 2023 15: 31: 42 -0500, Mark Zelden <mark@ MZELDEN. COM> wrote: I've had some offline responses also. Including the suggestion to use TOLERATE(ENQFAILURE) which only applies to the input dataset. Let me explain again and show On Fri, 13 Oct 2023 15:31:42 -0500, Mark Zelden <[email protected]> wrote: I've had some offline responses also. Including the suggestion to use TOLERATE(ENQFAILURE) which only applies to the input dataset. Let me explain again and show all the DFDSS control cards. I have an "program products" sysres that is an extension of IBM OS sysres. There is a maintenance version of that sysres, just like you have a maintenance IBM sysres that you apply SMP/E maintenance to. The PP sysres gets cloned along with the IBM sysres via full volume disk to disk copies. That is not a problem. That program products sysres (really 2 3390-27 volumes) has perhaps 40 IBM / ISV products. All the datasets are indirectly catalogued via &SYSRn. Program product SMP/E target libs are copied (and renamed during the copy) to the PP maintenance sysres at various time. When maintenance for any give product is applied (or an upgrade) and is ready to roll out the sysprog copies the SMP/E targets to this maintenance sysres. So think of it as a volume were changes are staged for production. Then after cloning, the changes are rolled out as a package, be it with IBM OS maintenance, one product, several products, or any combination like that. This is done via rolling IPLs in a sysplex environment so as not to cause any application outages (usually half the LPARs one month, the other half the next month). Almost every product's main loadlib is in the LNKLST - at least anything that has associated production JCL, TSO CLISTs / EXECs, ISPxLIBs etc. If something is only used by an STC, it may not be in the LNKLST. This is to shield anyone from having to make JCL changes etc. (pretty standard stuff, right?). So many of these datasets being "staged" prior to cloning are ENQed. If the input library in the copy is larger than the one on the maintenance sysres volume, that is when DFDSS fails. If it doesn't have to scratch / reallocate the dataset that already exists to make it larger to accommodate the input data set size, it works fine. Here is a sample of the copy process with DFDSS, only there would be many more libraries copied / renamed than just a single one for almost all products. (another shortcoming of DFDSS compared to FDRCOPY where only the HLQ can be renamed and FDRCOPY can rename the hlq plus add / remove nodes for multiple datasets - dozens if I needed, in a single control statement, but I digress...) //SYSIN DD * COPY DS( - INCLUDE( - smphlq.product.V6R3.LINKLIB - ) - ) - RENAMEU( - (smphlq.product.V6R3.LINKLIB - prodhlq.product.LINKLIB) - ) - SHARE TOL(ENQF) PROCESS(SYS1) - BYPASSACS(**) - NULLSTORCLAS - LIDY(inpvol) - OUTDYNAM(outvol,SYSALLDA) - REPLACEUNCONDITIONAL - WAIT(2,2) ALLDATA(*) ALLEXCP /* If prodhlq.product.LINKLIB is ENQed (in this case you can presume it is due to being in the LNKLST on the driving system), you get this error: ADR497E (001)-CATLG(07), A CATALOG ERROR OCCURRED WHILE DELETING UNCATALOGED DATA SET prodhlq.product.LINKLIB. RETURN CODE IS 102, REASON CODE IS FP-007 ERROR OCCURRED WHILE DELETING UNCATALOGED DATA SET ** VOTE here by clicking the vote icon at the top left! https://urldefense.com/v3/__https://ibm-z-hardware-and-operating-systems.ideas.ibm.com/ideas/ZOS-I-3862__;!!MwwqYLOC6b6whF7V!l88xZXKbWy57EEOicntO2a0U2-ASRLcj7Ya5t5ggE89_A6unfsAePPoZPdaeGWNpUinbleEiMkvaePQ$ Regards, Mark >Sorry for top posting... > >Let's address your comments one keyword at a time: > >DELETE - deletes the source (input) dataset. Ouch! Lets not delete my SMP/E >target libs during copy to my sysres set please! > >PURGE - overlays an output dataset that has an expiration date not yet >reached. Not applicable. > >UNCOND - no such parm or abbreviation. I assume you mean >replaceunconditional, and that is already being done and doesn't matter. > >The deficiency is DADSM. This is how DFSMSdss is handling this scenaro (it >attempts to scratch the DSN to reallocate a bigger dsn on copy if required). >DADSM can't scratch the DSN because the DSN is ENQ'd. > >ADR497E (001)-CATLG(07), A CATALOG ERROR OCCURRED WHILE DELETING UNCATALOGED >DATA SET SYNCSORT.SYNCLINK. RETURN CODE IS 102, REASON >CODE IS FP-007 > >You also will see: > >"ERROR OCCURRED WHILE DELETING UNCATALOGED DATA SET" > >Ironic since the CATALOG keyword is not used while copying over the indirectly >catalogged dataset on the maintenance sysres set. > >Not sure what FDRCOPY does under the covers... no access right now try try and >determine that. Perhaps it renames it first and deletes it with DADSM. But >I know one does not need access to STGADMIN.DPDSRN.dsn_to_rename in order for >it to work with FDRCOPY. > >Regards, > >Mark >-- >Mark Zelden - Zelden Consulting Services - z/OS, OS/390 and MVS >ITIL v3 Foundation Certified >mailto:[email protected] >Mark's MVS Utilities: >https://urldefense.com/v3/__http://www.mzelden.com/mvsutil.html__;!!MwwqYLOC6b6whF7V!l88xZXKbWy57EEOicntO2a0U2-ASRLcj7Ya5t5ggE89_A6unfsAePPoZPdaeGWNpUinbleEimdxNo-Q$ >Systems Programming expert at >https://urldefense.com/v3/__http://search390.techtarget.com/ateExperts/__;!!MwwqYLOC6b6whF7V!l88xZXKbWy57EEOicntO2a0U2-ASRLcj7Ya5t5ggE89_A6unfsAePPoZPdaeGWNpUinbleEitzXkfTU$ > > > >On Thu, 12 Oct 2023 22:44:29 +0000, willie bunter <[email protected]> >wrote: > >> I thought the UNCOND DELETE PURGE parms could be used along with the COPY >> command >> >> On Wednesday, October 11, 2023 at 05:00:17 p.m. EDT, Mark Zelden >> <[email protected]> wrote: >> >> Hi all, >> >>Please read / vote for this RFE. >> >> >>"Provide abilty for DSS to be able to scratch and reallocate an in use data >>set name that is not the actual dataset in use during a logical copy >>operation" >> >>https://urldefense.com/v3/__https://ideas.ibm.com/ideas/ZOS-I-3862__;!!MwwqYLOC6b6whF7V!l88xZXKbWy57EEOicntO2a0U2-ASRLcj7Ya5t5ggE89_A6unfsAePPoZPdaeGWNpUinbleEi9c8QY9s$ >> >>I think you vote here: >>https://urldefense.com/v3/__https://ibm-z-hardware-and-operating-systems.ideas.ibm.com/ideas/ZOS-I-3862__;!!MwwqYLOC6b6whF7V!l88xZXKbWy57EEOicntO2a0U2-ASRLcj7Ya5t5ggE89_A6unfsAePPoZPdaeGWNpUinbleEiMkvaePQ$ >> >>I was honestly shocked this is not supported in DFDSS. I've been using FDR >>for over 30 years for this. >> >>I don't know if you can see the entire text, so I will copy it below to >>explain the issue, but in summary: >> >>If you are copying a dataset to a maintenance sysres (target sysres that will >>be cloned) and that DSN >>is ENQd, the copy will work - unless the dataset needs to be scratched / >>reallocated because the >>input dataset is larger than the output one that already exists. I've been >>supporting clients for >>30 years that keep ISV (and IBM non-OS) products as an extension of the >>sysres and recently >>ran into this at a client that dumped FDR since they had DFDSS and ran into >>this problem. >> >>If you know a way around the issue - shoot! IBM says it is not supported. >>You can delete the >>not in use dataset after rename (if allowed) but that is error prone since >>you have to point to >>the maintenance volume and I don't want JR. people doing this. One other >>work around is >>after the logical copy fails, you can run it again as physical since the >>dataset is enlarged >>on the first try, but just fails in scratch. BTW, "CATALOG" is never used in >>this copy since >>the datasets are indirectly catalogged. >> >>Now for the RFE main part of the RFE text: >> >>----------------------------------------------------------------------------------- >> >>Putting maintenance onto a "target" / maintenance sysres volume or set has >>been an MVS concept and cloning an IPLable sysres set (or swapping IPL sets) >>"forever" . Many shops also put other IBM products or ISV products on a >>secondary / tertiary sysres and indirectly catalog them so they are on the >>sysres set. This is the only way to support rolling IPLs in a sysplex so >>there are not application outages (another MVS concept). Since those >>secondary / tertiary volumes are a combination of products, adding new >>datasets is done via logical copy of a product's target libraries to the >>target / maintenance sysres and those datasets are indirectly catalogged >>using a system symbol like &SYSR2, &SYSR3, etc. The copy to the "target" >>system (maintenance sysres) works fine even if the same named dataset is in >>use on the live sysres set (be it in the LNKLST, TSO PROC, STC STEPLIB etc.). >> EXCEPT... when the dataset needs to be enlarged as part of the copy process. >> In that case you get message ADR497E RC 102 Reason code FP-007 and "ERROR >>OCCURRED WHILE DELETING UNCATALOGED DATA SET" and the copy for that dataset >>fails. However, the dataset to be "overlaid" (if you will), is not the >>dataset in use so DFDSS should have the ability to enlarge it and do the >>copy. The only solution is to use the DFSMS special SAF authority to rename >>a dataset in use (STGADMIN.DPDSRN.dsn_to_rename) to rename the "target" >>dataset on the maintenance volume, then delete it, then rerun the copy job. >>This could be very error prone if someone doesn't put in the correct volser >>on ISPF and they could rename the "real" in use dataset or perhaps one on a >>different sysres set. >> >>----------------------------------------------------------------------------------- >> >>Please vote this one up! >> >>Best Regards, >> >>Mark >>-- >>Mark Zelden - Zelden Consulting Services - z/OS, OS/390 and MVS >>ITIL v3 Foundation Certified >>mailto:[email protected] >>Mark's MVS Utilities: >>https://urldefense.com/v3/__http://www.mzelden.com/mvsutil.html__;!!MwwqYLOC6b6whF7V!l88xZXKbWy57EEOicntO2a0U2-ASRLcj7Ya5t5ggE89_A6unfsAePPoZPdaeGWNpUinbleEimdxNo-Q$ >> >>---------------------------------------------------------------------- >>For IBM-MAIN subscribe / signoff / archive access instructions, >>send email to [email protected] with the message: INFO IBM-MAIN >> >> >>---------------------------------------------------------------------- >>For IBM-MAIN subscribe / signoff / archive access instructions, >>send email to [email protected] with the message: INFO IBM-MAIN > >---------------------------------------------------------------------- >For IBM-MAIN subscribe / signoff / archive access instructions, >send email to [email protected] with the message: INFO IBM-MAIN ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN This e-mail transmission contains information that is confidential and may be privileged. It is intended only for the addressee(s) named above. If you receive this e-mail in error, please do not read, copy or disseminate it in any manner. If you are not the intended recipient, any disclosure, copying, distribution or use of the contents of this information is prohibited. Please reply to the message immediately by informing the sender that the message was misdirected. After replying, please erase it from your computer system. Your assistance in correcting this error is appreciated. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
