I tried to rename a VSAM file using the IDCAMS ALTER command but to my surprise when I renamed the CLUSTER file, it vanished (I did change the HLQ of the dataset, I think it has to do something with this). I then tried to rename the DATA and INDEX part as well, but they too are now uncataloged.
I can see the DATA and INDEX part, when I put in the volser but when I try to do a DEFINE RECATALOG for the VSAM file, I get the following message:-
DC3009I ** VSAM CATALOG RETURN CODE IS 50 - REASON CODE IS
DC3003I FUNCTION TERMINATED. CONDITION CODE IS
I have read through the forum and tried some hit and trials but nothing seem to have hit the nail in the head.
So I was just wondering if the VSAM file is recoverable or not?
You can only change the HLQ if the new HLQ is cataloged in the same USERCAT as the original HLQ. If the new HLQ cataloged in a different USERCAT you will exprience the phenomenum you are now seeing.
Basically you cannot rename a VSAM dataset and change the HLQ unless both HLQ's are in the same USERCAT.
If you have renamed the Cluster and components and they have disappeared that is probably because the high level qualifier of the new name has an alias pointing to a different usercatalog. If you did a LISTCAT of your dataset specifying the CATALOG parameter with the name of the usercatalog the original Cluster name was in you would see the cluster there with the new name.
What you need to do is REPRO MERGECAT the entry for the new cluster name from the catalog it is in now to the catalog where the new hlq alias points to and it will magically reappear when you do a 3.4.
Alternatively, you can rename the Cluster and components back to the original names (you'll have to specify the CATALOG parameter point to the original catalog) in which case they'll also reappear on a 3.4 Once you have them back you can then use something like DFDSS (pgm=ADRDSSU) to DUMP the file and then do a RESTORE with RENAMEU to the new name which will properly catalog it into the new catalog for you.
PS: You need to understand what happens when you search for or create a dataset. The system will first look in the Mastercatalog to see if there is a Usercatalog ALIAS that matches the dataset name (this is usually the HLQ but can be up to the 3-4LQ). If there is an ALIAS, it will RELATE to a particular Usercatalog, and the system will then go to that Usercatalog to find or create the catalog entry for the dataset, which will tell the system what volume(s) it is on.