IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

Space Allocation


IBM Mainframe Forums -> JCL & VSAM
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
grem

New User


Joined: 06 May 2009
Posts: 14
Location: philippines

PostPosted: Tue Sep 11, 2012 7:49 am
Reply with quote

Hi,

What if i have a declaration of SPACE below. and i have 7thousand inputs and all record should be wirtten on the OUT1 is this possible that my job will not abend on SPACE issue but instead not all processed records will not be written on OUT1?

//OUT1 DD DSN=FILE.QX0999.COPY.D120611,
// DISP=(NEW,CATLG,DELETE),
// SPACE=(00080,(5,2),RLSE),
// RECFM=FB,LRECL=25
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19243
Location: Inside the Matrix

PostPosted: Tue Sep 11, 2012 7:57 am
Reply with quote

Hello,

No - when you run out of space, the job is terminated. Unless someone has done something to allow it to continue.

Suggest you change the SPACE to CYL rather than 80.
Back to top
View user's profile Send private message
Bill Woodger

Moderator Emeritus


Joined: 09 Mar 2011
Posts: 7309
Location: Inside the Matrix

PostPosted: Tue Sep 11, 2012 8:43 am
Reply with quote

As has been indicated, there may be something at your site which causes that behaviour (traps the space abend(s)), but the normal thing would be an abend.

Ask your colleagues or technical support.
Back to top
View user's profile Send private message
grem

New User


Joined: 06 May 2009
Posts: 14
Location: philippines

PostPosted: Tue Sep 11, 2012 8:51 am
Reply with quote

thanks for your reply icon_smile.gif
Back to top
View user's profile Send private message
Pete Wilson

Active Member


Joined: 31 Dec 2009
Posts: 590
Location: London

PostPosted: Wed Sep 12, 2012 4:07 pm
Reply with quote

What you have coded won't be enough as you're only requesting space for 5 blocks of 80 bytes primary, and 2 blocks of 80 bytes secondary space.
/ SPACE=(00080,(5,2),RLSE),
// RECFM=FB,LRECL=25

Suggest you code the following which requests enough space for 7000 records of 25 bytes in Primary space, and another 2000 for Secondary space.

/ SPACE=(25,(7,2),RLSE),AVGREC=K,
// RECFM=FB,LRECL=25
Back to top
View user's profile Send private message
Anuj Dhawan

Superior Member


Joined: 22 Apr 2006
Posts: 6248
Location: Mumbai, India

PostPosted: Wed Sep 12, 2012 8:55 pm
Reply with quote

Okay, I've not verified so I might be mistaken but coding block size in 2012 sounds bit odd, no? It was a choice when programmers has to be smart enough to work with different DASDs with differnt geometries. With 3390 DASD packs, SMS and ACS available now, coding CYL or TRK with RLSE should be a good choice. As they say, please correct me if I'm wrong...
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19243
Location: Inside the Matrix

PostPosted: Wed Sep 12, 2012 9:22 pm
Reply with quote

Hi Anuj,

Quote:
coding CYL or TRK with RLSE should be a good choice.
Yup, agree (as i mentioned earlier).

Actually most of my clients have not allowed block size in the SPACE parameter to be promoted to Production for a very long time.

d
Back to top
View user's profile Send private message
Anuj Dhawan

Superior Member


Joined: 22 Apr 2006
Posts: 6248
Location: Mumbai, India

PostPosted: Thu Sep 13, 2012 5:40 am
Reply with quote

Thanks Dick.
Back to top
View user's profile Send private message
Pete Wilson

Active Member


Joined: 31 Dec 2009
Posts: 590
Location: London

PostPosted: Thu Sep 13, 2012 12:30 pm
Reply with quote

This is NOT requesting space in blocks. With the AVGREC parameter it is asking for an allocation based on expected numbers of records (7000) of a given lrecl (25) and the system then simply converts this to a TRK or CYL value for the allocation.

The AVGREC is a multiplier factor and can be U, K or M (unit, kilo, mega). (Without the AVGREC parameter it would be treated as a block allocation request.)

// SPACE=(25,(7,2),RLSE),AVGREC=K,

This is a preferable method for Users to allocate space rather than TRK or CYL as they probably know roughly how many records they're dealing with and the LRECL, so requesting space based on that knowledge without having to be aware of things like trk/cyl geometry is inifinitely better.

That is why this parameter was introduced about 20 years ago!

The equivalent in IDCAMS are the KILOBYTES and MEGABYTES keywords, combined with RECORDSIZE.
Back to top
View user's profile Send private message
Anuj Dhawan

Superior Member


Joined: 22 Apr 2006
Posts: 6248
Location: Mumbai, India

PostPosted: Thu Sep 13, 2012 2:37 pm
Reply with quote

I'm sorry Pete. My question was posed in general and was for original poster... icon_redface.gif
Back to top
View user's profile Send private message
Pete Wilson

Active Member


Joined: 31 Dec 2009
Posts: 590
Location: London

PostPosted: Thu Sep 13, 2012 2:54 pm
Reply with quote

No worries Anuj. At least the User gets a fuller explanation!

ps: I don't use it, but I'm not sure if block allocation is really a problem as long as BLKSIZE is ommitted or coded as 0 to get SDB.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19243
Location: Inside the Matrix

PostPosted: Thu Sep 13, 2012 9:38 pm
Reply with quote

Hello,

Quote:
but I'm not sure if block allocation is really a problem
Technically, it isn't a problem.

Because of so many misunderstandings of what it "really" means, this became a problem - which is why several of the sites i've supported just decided to not accept it icon_wink.gif
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> JCL & VSAM

 


Similar Topics
Topic Forum Replies
No new posts Get RECORD LENGTH, allocated space of... CLIST & REXX 7
No new posts Replace each space in cobol string wi... COBOL Programming 3
No new posts CLIST - Virtual storage allocation error CLIST & REXX 5
No new posts Merge 2 lines based on Space from a S... DFSORT/ICETOOL 5
No new posts Allocated space calculation from DCOL... PL/I & Assembler 3
Search our Forums:

Back to Top