## space calculation

JES, JES2, JCL utilities, IDCAMS, Compile & Run JCLs, PROCs etc...

### space calculation

please advice me, for 1.5 mil record, how to define primary and secondary cylinder in jcl.
myshah

Posts: 3
Joined: Fri Oct 14, 2016 9:00 am
Has thanked: 0 time
Been thanked: 0 time

### Re: space calculation

myshah wrote:please advice me, for 1.5 mil record, how to define primary and secondary cylinder in jcl.
You left out a few details, like How large are the records? One 3390 cylinder holds roughly 750,000 bytes.

For fixed length records in a sequential data set -
1. Determine the actual BLKSIZE you will use.
• Determine the blocking factor (number of logical records in 1 physical record) you will use. This is usually considered optimal - 23476/record length. For 80 byte records, 23476 / 80 = 293
• Determine the BLKSIZE - 293 * 80 = 23440
2. Determine the number of physical records - 1,500,000 / 293 = 5120
3. Determine the number of tracks - 5120 / 2 = 2560
4. Determine the number of cylinders - 2560 / 15 = 171
5. Add 10% - 171 * 1.10 = 177
These are the "magic" numbers
• 23476 - This is the largest physical record that will allow 2 physical records on a 3390 track
• 15 - The number of tracks in a 3390 cylinder.
Secondary cylinders are kind of arbitrary. If you are confident, 10% is good for a moderately large data set like this one.
steve-myers
Global moderator

Posts: 2105
Joined: Thu Jun 03, 2010 6:21 pm
Has thanked: 4 times
Been thanked: 243 times

### Re: space calculation

Hello,

Space calculation for a dataset is a simple task, yet can go wrong on many levels. In your case, you've given insufficient information to provide a clean solution.
To really understand the concepts of it, you'll have to read the manuals (such as 'Using Data Sets' for starters and then moving onto 'Using IBM 3390 Direct Access Storage in an MVS Environment'), though you can refer this topic for a quick reckoner. Skip to Expat's post, which gives a detailed explanation as to how you can arrive onto a value for Cylinder allocation; furthermore if you read the manuals stated earlier in this post, you'll come to know about the concept of 'extent', 'multi-volume dataset', 'format=large/extended' and so on- all of which play important role in dataset storage usage.

Read through, understand the concept, use it to come up with an allocation; if you're stuck at any point, let us know where and we can guide you.

Edit: Sorry Steve didn't see your post, I think I started the reply earlier hence missed the post.
Aki88

Posts: 381
Joined: Tue Jan 28, 2014 1:52 pm
Has thanked: 33 times
Been thanked: 36 times

### Re: space calculation

steve-myers wrote:23476 - This is the largest physical record that will allow 2 physical records on a 3390 track

That's a 3380. A 3390 holds 2 x 27998 bytes per track!
Robert AH Prins

prino

Posts: 636
Joined: Wed Mar 11, 2009 12:22 am
Location: Vilnius, Lithuania
Has thanked: 3 times
Been thanked: 29 times

### Re: space calculation

below is a detail what i define in Jcl

SPACE=(CYL,(50,10),RLSE),DISP=(,CATLG),UNIT=3390,
VOL=SER=(HA1000),
DCB=(LRECL=264,BLKSIZE=0,RECFM=FB)

but i still got error :34
myshah

Posts: 3
Joined: Fri Oct 14, 2016 9:00 am
Has thanked: 0 time
Been thanked: 0 time

### Re: space calculation

prino wrote:
steve-myers wrote:23476 - This is the largest physical record that will allow 2 physical records on a 3390 track

That's a 3380. A 3390 holds 2 x 27998 bytes per track!
Senior moment. Used the wrong table.

27998 / 80 = 349
349 * 80 = 27920
1,500,000 / 349 = 4298
4298 / 2 = 2149
2149 / 15 = 144
144 * 1.10 = 158
steve-myers
Global moderator

Posts: 2105
Joined: Thu Jun 03, 2010 6:21 pm
Has thanked: 4 times
Been thanked: 243 times

### Re: space calculation

Hello,

myshah wrote:.... but i still got error :34

Can you please show us what made you assume that there was a problem with allocation and nothing else in your JCL.

Error, what error; what was the exact error message/code/identifier- anything for that matter - returned by the failing JCL.

Also, did you understand Mr. Myers post, or the link I'd shared earlier, both of which detail the maths behind space allocation calculation.

Please try and understand- you are providing very little or no information for the 'error' you're facing; for the original space calculation query, enough has already been posted here to help you out in coming up with the number of cylinders required for your dataset.
Aki88

Posts: 381
Joined: Tue Jan 28, 2014 1:52 pm
Has thanked: 33 times
Been thanked: 36 times

### Re: space calculation

myshah wrote:below is a detail what i define in Jcl

SPACE=(CYL,(50,10),RLSE),DISP=(,CATLG),UNIT=3390,
VOL=SER=(HA1000),
DCB=(LRECL=264,BLKSIZE=0,RECFM=FB)

but i still got error :34

Why are you specifying a VOLSER?
"You have sat too long for any good you have been doing lately ... Depart, I say; and let us have done with you. In the name of God, go!" -- what I say to a junior programmer at least once a day

Akatsukami
Global moderator

Posts: 1058
Joined: Sat Oct 16, 2010 2:31 am
Location: Bloomington, IL
Has thanked: 6 times
Been thanked: 51 times

### Re: space calculation

SPACE=(CYL,(50,10),RLSE),DISP=(,CATLG),UNIT=3390,
VOL=SER=(HA1000),
DCB=(LRECL=264,BLKSIZE=0,RECFM=FB)

but i still got error :34
No surprise there -- 1.5 million 264-byte records needs 472 cylinders and you've allowed at most 200 cylinders with your JCL.
Robert Sample
Global moderator

Posts: 3720
Joined: Sat Dec 19, 2009 8:32 pm
Location: Dubuque, Iowa, USA
Has thanked: 1 time
Been thanked: 279 times

### Re: space calculation

Akatsukami wrote:
myshah wrote:below is a detail what i define in Jcl

SPACE=(CYL,(50,10),RLSE),DISP=(,CATLG),UNIT=3390,
VOL=SER=(HA1000),
DCB=(LRECL=264,BLKSIZE=0,RECFM=FB)

but i still got error :34

Why are you specifying a VOLSER?
Not everyone uses SMS, or, perhaps, the TS chose the volume for some reason he need not disclose here.

Personally, I would specify DCB=(LRECL=264,DSORG=PS,RECFM=FB) so that allocation, rather than OPEN determines and fills in the actual BLKSIZE.

I also note that the JCL specifies DISP=(,CATLG) and does not specify a data set name. This error 34 may be a JCL checker rather than the system or the user program.
steve-myers
Global moderator

Posts: 2105
Joined: Thu Jun 03, 2010 6:21 pm
Has thanked: 4 times
Been thanked: 243 times

Next