羲堁极郤

ctrl + shift + ? for shortcuts
© 2025 Groups.io

Reorganizing a user catalog in MVS.


 

Hi Folks.

I've a UserCatalog (UCUSRDT0) on a volume (USRDT0) for my user/users (ALEX) in a Tk5 install ...so far, so good, until the catalog needed a reorg due to CI splits.

I've been reading some online stuff, but, as I expected, it turned out to be much modern and not aplicable to MVS (LOCK, UNLOCK, EXAMINE, DIAGNOSE...).
At this point, I backed up at hercules/emulator level, practice a little with shadow files, and just started my journey by, first, simply try to backup my catalog using EXPORT and REPRO... which I miserably failed to achieve :-(

- Regarding EXPORT, following step (ran as HERC01 user):

//EXPRTTMP EXEC PGM=IDCAMS,REGION=4096K
//SYSPRINT DD SYSOUT=*
//EXPDD? ? DD DSN=CATBACK.ALEX.UCUSRDT0,
//? ? ? ? ?UNIT=3390,VOL=SER=TSO001,
//? ? ? ? ?DISP=(NEW,CATLG,DELETE),
//? ? ? ? ?SPACE=(CYL,(5,1),RLSE),
//? ? ? ? ?DCB=(RECFM=FB,LRECL=80,BLKSIZE=3120)
//SYSIN? ? DD *
? EXPORT UCUSRDT0 -
? ? OUTFILE(EXPDD) TEMPORARY
/*

Fails 0012 with error:?IDC3592I THE ENTRY NAME IS NOT CLUSTER OR ALTERNATE INDEX
But I guess it is... well, it is my user catalog. it is a VSAM cluster! What could be wrong?

- Regarding REPRO, the step I made (ran as HERC01):

//REPROTMP EXEC PGM=IDCAMS,REGION=4096K
//SYSPRINT DD SYSOUT=*
//OUTDD? ? DD DSN=CATDUMP.ALEX.UCUSRDT0,
//? ? ? ? ?UNIT=3390,VOL=SER=TSO001,
//? ? ? ? ?DISP=(NEW,CATLG,DELETE),
//? ? ? ? ?SPACE=(CYL,(5,1),RLSE),
//? ? ? ? ?DCB=(RECFM=FB,LRECL=80,BLKSIZE=3120)
//SYSIN? ? DD *
? REPRO INFILE(UCUSRDT0) -
? ? OUTFILE(OUTDD)
/*

Exits 0012 with following errors
IDC3300I ERROR OPENING UCUSRDT0
IDC3304I ** JCL STATEMENT MISSING
Considering that both UCUSRDT0 axists, and the target dataset ends up created and found in DSLIST, I don't understand what's happening here.

I know this are very, very noob questions... but I need some breaktrough to start even to start.

Thank you very much in advance.
Cheers.


 

羲堁极郤

Alejandro

Ok 每 for your REPRO

?

You can specify EITHER 每 of two formats 每 (or a mix)

?

One method 每 you specify a DD name that you reference in your control statement

?

The OTHER 每 you simply specify 每 THIS IS THE DATA SET 每 I want to work with 每in your control statements

?

See the IDCAMS book for the exact (very complicated syntax)

(here is a link to CURRENT manual 每 this may have some values that are NOT in our OLDER system 每 so use the OLD book for the official version)

?

Here is a snippit 每 if you want to specify the info on JCL 每 You would code

?

//MYINFILE?? DD DSN=data set name goes here 每 upper case of course 每 DISP=SHR

//SYSIN DD *

??????????????? REPRO INFILE(MYINFILE)????? <<<<< note the NAME within the parenthees is the DD name in the jcl

Or

If you do NOT want to code the JCL 每 instead you can put it all in the control cards

?

FOR ME 每 I use the JCL format - - of course it all depends upon the situation 每

?

?

//SYSIN DD *

??????????????? REPRO INDATASET(MYCATALOG.GOES.NAME) -?????????? <note the continuation

????????????????????????????OUTDATASET(MYOUTPUT)??

?

?

REPRO

{INFILE(ddname)|INDATASET(entryname)}

?

{OUTFILE(ddname)|?OUTDATASET(entryname)}

?

?

-J-

?

Jeff Bassett

Bassettj@...

(301) 424-3362 (office)

(240) 388-7148 Cell

?

Time spent flying? - is NOT deducted from one*s lifespan

?

From: [email protected] <[email protected]> On Behalf Of Alejandro olivan Alvarez via groups.io
Sent: Wednesday, January 31, 2024 11:51 AM
To: [email protected]
Subject: [H390-MVS] Reorganizing a user catalog in MVS.

?

Hi Folks.

I've a UserCatalog (UCUSRDT0) on a volume (USRDT0) for my user/users (ALEX) in a Tk5 install ...so far, so good, until the catalog needed a reorg due to CI splits.

I've been reading some online stuff, but, as I expected, it turned out to be much modern and not aplicable to MVS (LOCK, UNLOCK, EXAMINE, DIAGNOSE...).
At this point, I backed up at hercules/emulator level, practice a little with shadow files, and just started my journey by, first, simply try to backup my catalog using EXPORT and REPRO... which I miserably failed to achieve :-(

- Regarding EXPORT, following step (ran as HERC01 user):

//EXPRTTMP EXEC PGM=IDCAMS,REGION=4096K

//SYSPRINT DD SYSOUT=*

//EXPDD? ? DD DSN=CATBACK.ALEX.UCUSRDT0,

//? ? ? ? ?UNIT=3390,VOL=SER=TSO001,

//? ? ? ? ?DISP=(NEW,CATLG,DELETE),

//? ? ? ? ?SPACE=(CYL,(5,1),RLSE),

//? ? ? ? ?DCB=(RECFM=FB,LRECL=80,BLKSIZE=3120)

//SYSIN? ? DD *

? EXPORT UCUSRDT0 -

? ? OUTFILE(EXPDD) TEMPORARY

/*

Fails 0012 with error:?IDC3592I THE ENTRY NAME IS NOT CLUSTER OR ALTERNATE INDEX
But I guess it is... well, it is my user catalog. it is a VSAM cluster! What could be wrong?

- Regarding REPRO, the step I made (ran as HERC01):

//REPROTMP EXEC PGM=IDCAMS,REGION=4096K

//SYSPRINT DD SYSOUT=*

//OUTDD? ? DD DSN=CATDUMP.ALEX.UCUSRDT0,

//? ? ? ? ?UNIT=3390,VOL=SER=TSO001,

//? ? ? ? ?DISP=(NEW,CATLG,DELETE),

//? ? ? ? ?SPACE=(CYL,(5,1),RLSE),

//? ? ? ? ?DCB=(RECFM=FB,LRECL=80,BLKSIZE=3120)

//SYSIN? ? DD *

? REPRO INFILE(UCUSRDT0) -

? ? OUTFILE(OUTDD)
/*


Exits 0012 with following errors

IDC3300I ERROR OPENING UCUSRDT0
IDC3304I ** JCL STATEMENT MISSING
Considering that both UCUSRDT0 axists, and the target dataset ends up created and found in DSLIST, I don't understand what's happening here.

I know this are very, very noob questions... but I need some breaktrough to start even to start.

Thank you very much in advance.
Cheers.


 

On Wed, Jan 31, 2024 at 08:51 AM, Alejandro olivan Alvarez wrote:
simply try to backup my catalog using EXPORT and REPRO...
Check this manual:



on page 349 (PDF page 369) for example 4. I think you should simply use REPRO to backup your user catalog, not EXPORT.

Also, pay attention to the DCB indicated in the example for the backup copy (RECFM=VB,LRECL=516,BLKSIZE=5164), that is the one you must use apparently.

Cheers,

Rene FERLAND, Montreal


 

Hi!

By one side... I was missing the JOBCAT / STEPCAT DD component on all my tests...?Now I understand why they didn't work :-)
But on the other side, I've also found that, apparently, dumping to a dataset on DASD may not be possible, but only to tape, as depicted on examples around.
My guess is that, once the STEPCAT / JOBCAT makes the source catalog reachable, then, the target PS can't be cataloged... or maybe it's theat weird DCB.
Anyways, At least,I have an early 0000 code for REPRO on my catalog into a tape:

//JOBCAT? ?DD DSNAME=UCUSRDT0,DISP=OLD?
//*
//* ---------------------------------------------
//* STEP1: DUMP USER-CATALOG TO TAPE.
//*
//REPROTMP EXEC PGM=IDCAMS,REGION=4096K
//SYSPRINT DD SYSOUT=*
//CATIN? ? DD DSNAME=UCUSRDT0,DISP=OLD
//CATOUT? ?DD DSNAME=UCUSRDT0.TAPE,LABEL=(1,SL),
//? ? ? ? ?DISP=NEW,UNIT=(TAPE,,DEFER),VOL=SER=UCBAK0,?
//? ? ? ? ?DCB=(DEN=3,RECFM=VB,LRECL=516,BLKSIZE=5164)?
//SYSIN? ? DD *
? REPRO INFILE(CATIN) -
? ? OUTFILE(CATOUT)
/*
?
Now I have to figure out whether or not can I check its contents, how to use it, and whether eventually it is OK or not... my journey is still on :-P

Thank you all.
Cheers.


 

羲堁极郤

Alejandro

?

BABY STEPS 每 you are certainly getting some good OJT 每 while I recognize 每 this is frustrating 每

?

?

>>>※dumping to a dataset on DASD may not be possible, but only to tape§

?

NOT TRUE my friend# ?now, for you to use a HLQ that catalogs back into the same catalog that you are working on 每 sure#.

There is NO restriction except that the output file NEEDS to be a BSAM 每(sequencial file) 每

So

//OUTFILE DD DSN=HERC01.CATREORG.OUT,DISP=(,CATLG),? <<<? USE a HLQ that points to a different catalog if you want to catalog the output

//? UNIT=SYSDA,SPACE=(CYL,10,10),RLSE),VOL=SER=WORK02,

//?? DCB=(RECFM=VB,LRECL=516,BLKSIZE=5164)

?

Now you will have a FLAT FILE on disk 每 you can edit or browse it 每

Or you can print it 每

Or you can use it in the next step to build a new catalog 每

Or - ???

?

Another idea 每 you MIGHT consider 每

?

Instead of creating new PDSs that are causing you a cataloging headache ?每 create a larger PDS and simply add members into your PDS for a week or 4 每 THEN run some maintenance job to re-organize the PDS 每 copy everything off to tape or archive or otherwise process it #.

?

?

?

-J-

?

Jeff Bassett

Bassettj@...

(301) 424-3362 (office)

(240) 388-7148 Cell

?

Time spent flying? - is NOT deducted from one*s lifespan

?

From: [email protected] <[email protected]> On Behalf Of Alejandro olivan Alvarez via groups.io
Sent: Thursday, February 1, 2024 7:08 AM
To: [email protected]
Subject: Re: [H390-MVS] Reorganizing a user catalog in MVS.

?

Hi!

By one side... I was missing the JOBCAT / STEPCAT DD component on all my tests...?Now I understand why they didn't work :-)
But on the other side, I've also found that, apparently, dumping to a dataset on DASD may not be possible, but only to tape, as depicted on examples around.
My guess is that, once the STEPCAT / JOBCAT makes the source catalog reachable, then, the target PS can't be cataloged... or maybe it's theat weird DCB.
Anyways, At least,I have an early 0000 code for REPRO on my catalog into a tape:

//JOBCAT? ?DD DSNAME=UCUSRDT0,DISP=OLD?

//*

//* ---------------------------------------------

//* STEP1: DUMP USER-CATALOG TO TAPE.

//*

//REPROTMP EXEC PGM=IDCAMS,REGION=4096K

//SYSPRINT DD SYSOUT=*

//CATIN? ? DD DSNAME=UCUSRDT0,DISP=OLD

//CATOUT? ?DD DSNAME=UCUSRDT0.TAPE,LABEL=(1,SL),

//? ? ? ? ?DISP=NEW,UNIT=(TAPE,,DEFER),VOL=SER=UCBAK0,?

//? ? ? ? ?DCB=(DEN=3,RECFM=VB,LRECL=516,BLKSIZE=5164)?

//SYSIN? ? DD *

? REPRO INFILE(CATIN) -

? ? OUTFILE(CATOUT)

/*

?

Now I have to figure out whether or not can I check its contents, how to use it, and whether eventually it is OK or not... my journey is still on :-P

Thank you all.
Cheers.


 

Hi!

I though on the idea of big PDS with data being added to members...? but I though it had to have its cons (sure... I always trip some wire :-P) ... I definitely have to learn how o plan for such a deploy (space calculations, naming conventions, etc...)
On the other hand, I'm slowly progressing. I have played with PRINT CHAR and DUMP on the TAPE dump, and it yelded thousands of chars, quite fun, but I saw the catalog entries there!
Good point being able to dump to PDS...I want to try that :D !!!!

Now I'm re-reading the USERCATALOG stuff ... I want to create a testing user catalog to play with (upload a backup, deleting it, etc) but I'm not sure wether multiple usercatalogs can be present on the same volume (I have in my mind some kind of limitation regarding volumes and catalogs).
One think that worries me now is that , on the documentation, I read that I in order to be able to use my volume for VSAM stuff (which I plan to do in the future) I have to define a huge usercatalog, with lots of CYLINDERS and then manually define DATA and INDEX sizes accordingly, so an empty space remains unused as result of that, as? a kind of VSAM space (or so I understand), but I though that was acomplished by means of DEFINE SPACE... that's confusing.?
Since I have full backups and shadow files I'm just going to try and see what happens.

Cheers.


 

On Thu, Feb 1, 2024 at 03:55 PM, Jeff Bassett wrote:

//OUTFILE DD DSN=HERC01.CATREORG.OUT,DISP=(,CATLG),? <<<? USE a HLQ that points to a different catalog if you want to catalog the output

//? UNIT=SYSDA,SPACE=(CYL,10,10),RLSE),VOL=SER=WORK02,

//?? DCB=(RECFM=VB,LRECL=516,BLKSIZE=5164)

It worked!!! I had initially a problem cataloging the target dataset because Of the overll JOBCAT DD ... So I had to just use STEPCAT DD on the REPRO step, and catalog the dataset on a final step...and the, ta-da! the dataset showed in DSLIST! yayyyyy!

//*
//* ------------------------------------------------
//* STEP1: DELETE DATASET
//*
//DSDEL? ? EXEC PGM=IEFBR14
//SYSPRINT DD SYSOUT=*
//TGTDS? ? DD DSNAME=HERC01.UCUSRDT0.REPRO,
//? ? ? ? ? ? UNIT=3390,SPACE=(CYL,(10,10),RLSE),VOL=SER=TSO001,
//? ? ? ? ? ? DISP=(OLD,DELETE,DELETE)
//*
//* ---------------------------------------------
//* STEP2: DUMP USER-CATALOG TO DATASET.
//*
//REPROTMP EXEC PGM=IDCAMS,REGION=4096K
//STEPCAT? DD DSNAME=UCUSRDT0,DISP=OLD
//SYSPRINT DD SYSOUT=*
//CATIN? ? DD DSNAME=UCUSRDT0,DISP=OLD
//CATOUT? ?DD DSNAME=HERC01.UCUSRDT0.REPRO,DISP=(NEW,KEEP,DELETE),
//? ? ? ? ? ? UNIT=3390,SPACE=(CYL,(10,10),RLSE),VOL=SER=TSO001,
//? ? ? ? ? ? DCB=(RECFM=VB,LRECL=516,BLKSIZE=5164)
//SYSIN? ? DD *
? REPRO INFILE(CATIN) -
? ? OUTFILE(CATOUT)
/*
//*
//* ------------------------------------------------
//* STEP3: CATALOG DATASET
//*
//DSCTLG? ?EXEC PGM=IEFBR14
//SYSPRINT DD SYSOUT=*
//TGTDS? ? DD DSNAME=HERC01.UCUSRDT0.REPRO,
//? ? ? ? ? ? UNIT=3390,SPACE=(CYL,(10,10),RLSE),VOL=SER=TSO001,
//? ? ? ? ? ? DISP=(OLD,CATLG,DELETE)
//


 

羲堁极郤

Remember, for a non-VSAM dataset you don't even have to catalog it.

Khalid

On 2/1/2024 10:00 AM, Alejandro olivan Alvarez wrote:

On Thu, Feb 1, 2024 at 03:55 PM, Jeff Bassett wrote:

//OUTFILE DD DSN=HERC01.CATREORG.OUT,DISP=(,CATLG),? <<<? USE a HLQ that points to a different catalog if you want to catalog the output

//? UNIT=SYSDA,SPACE=(CYL,10,10),RLSE),VOL=SER=WORK02,

//?? DCB=(RECFM=VB,LRECL=516,BLKSIZE=5164)

It worked!!! I had initially a problem cataloging the target dataset because Of the overll JOBCAT DD ... So I had to just use STEPCAT DD on the REPRO step, and catalog the dataset on a final step...and the, ta-da! the dataset showed in DSLIST! yayyyyy!



 

Hi again folks.

I'm having issues with catalog 'dumps' resulting from REPRO.
While they look good, I can't use them:

I have re-read Jay's doc and I've acknowledge that DASD volumes do have or belng to a single catalog. So it is not a complete surprise as I try to restore my UCUSRDT0 Catalog backup, for USRDT0 Volume, on a USRDT1 volume as UCUSRDT1 Catalog... so, apparently, a backup of a catalog is useless, unless it is used against a volume with the same name than the original and to assemble the same catalog than the original had...isn't it?

I don't find a way on the docs to tell REPRO that the backup will be used on another volume... is that even possible?

Cheers.?


 

MVS has the Pre-ICF catalog with those limits.


On Mon, Feb 5, 2024 at 11:14?AM Alejandro olivan Alvarez <alejandro.olivan.alvarez@...> wrote:
Hi again folks.

I'm having issues with catalog 'dumps' resulting from REPRO.
While they look good, I can't use them:

I have re-read Jay's doc and I've acknowledge that DASD volumes do have or belng to a single catalog. So it is not a complete surprise as I try to restore my UCUSRDT0 Catalog backup, for USRDT0 Volume, on a USRDT1 volume as UCUSRDT1 Catalog... so, apparently, a backup of a catalog is useless, unless it is used against a volume with the same name than the original and to assemble the same catalog than the original had...isn't it?

I don't find a way on the docs to tell REPRO that the backup will be used on another volume... is that even possible?

Cheers.?



--
Mike A Schwab, Springfield IL USA
Where do Forest Rangers go to get away from it all?