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

Advantage of specify BLKSIZE=0 when allocat new dataset


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

New User


Joined: 28 Jun 2007
Posts: 1
Location: Mumbai

PostPosted: Thu Jul 19, 2007 12:43 pm
Reply with quote

What advantage of specify BLKSIZE=0 when allocat newdataset
Back to top
View user's profile Send private message
sandeep1dimri

New User


Joined: 30 Oct 2006
Posts: 76

PostPosted: Thu Jul 19, 2007 1:43 pm
Reply with quote

icon_surprised.gif
Back to top
View user's profile Send private message
sandeep1dimri

New User


Joined: 30 Oct 2006
Posts: 76

PostPosted: Thu Jul 19, 2007 3:03 pm
Reply with quote

Hi

It signifies the number of records in one block. And we provide BLKSIZE=0 means that we are not sure on the number of records in the block and so SMS takes care of BLKSIZE while allocating space for dataset. And it optimisze the number of records in one block.

So BLKSIZE=0 means optimize the number of records in one block.

Thanks
sandeep.
Back to top
View user's profile Send private message
vicky10001
Warnings : 1

Active User


Joined: 13 Jul 2005
Posts: 136

PostPosted: Thu Jul 19, 2007 3:07 pm
Reply with quote

How need to calculate BLKSIZE?

Example

LRECL = 800
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8797
Location: Welsh Wales

PostPosted: Thu Jul 19, 2007 5:00 pm
Reply with quote

vijaykumar pande
Quote:
What advantage of specify BLKSIZE=0 when allocat newdataset

BLKSIZE=0 can often cause problems if the dataset is not opened and closed unless your SMS environment has been correctly established.

If it has not, then the BLKSIZE=0 will be honoured and the dataset will have that attribute, which makes the dataset invalid for processing by DFHSM, or whatever other ILM software you use.

The correct coding is RECFM=xx,LRECL=nnn

vicky10001
Quote:
How need to calculate BLKSIZE?
Example
LRECL = 800

The calculation, should you wish to do it manually depends on the geometry of the DASD installed at your shop. The industry standard is currently 3390, which has an optimum BLKSIZE=27998.

This is great for VB files, RECFM=VB,LRECL=100,BLKSIZE=27998

For FB files, the formula is

INT(27998 / LRECL) * LRECL

But hey, why not let the system do it for you ..... it knows best icon_eek.gif
Back to top
View user's profile Send private message
Anuj Dhawan

Superior Member


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

PostPosted: Thu Jul 19, 2007 7:27 pm
Reply with quote

Yup, this
Quote:
The correct coding is RECFM=xx,LRECL=nnn

is the best approach. Code this for your new dataset & let the system decide about BLKSIZE.

Expat,

I got a query here, I ran a test JOB:

Code:
//SORTIN   DD  DSN=HLQ.FIRST.FILE,             
//             DISP=SHR                         
//SORTOUT  DD  DSN=HLQ.FIRST.FILE.JUL19A,       
//             DISP=(NEW,CATLG,CATLG),         
//             DSORG=PS,                       
//             RECFM=FB,                       
//             DATACLAS=LARGE,                 
//             UNIT=SYSDA                       
//SORTWK01 DD  UNIT=SYSDA,SPACE=(CYL,(20,5))   
//SYSIN    DD  *                               
  SORT FIELDS=(1,3,CH,A)                       
/*                                             
//SORTMSG  DD  SYSOUT=*                         
//SYSOUT   DD  SYSOUT=*                         
//SYSPRINT DD  SYSOUT=*                         
//SYSUDUMP DD  SYSOUT=*                         
//CEEDUMP  DD  SYSOUT=*                         
//*                                             


First with BLKSIZE=0 & second time without BLKSIZE parameter. In both the cases I got Block size . . . . : 27920, why so? Does that mean, coding
BLKSIZE=0 & not coding it at all, are same?
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8797
Location: Welsh Wales

PostPosted: Thu Jul 19, 2007 7:59 pm
Reply with quote

It is almost the same, except that when the dataset is not opened then the BLKSIZE will equal 0.

If you use BLKSIZE=0 and the dataset is opened and closed by your program, it is the same as coding RECFM=xx,LRECL=nnn
Back to top
View user's profile Send private message
Anuj Dhawan

Superior Member


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

PostPosted: Thu Jul 19, 2007 8:57 pm
Reply with quote

Thanks Expat, got it.
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 FINDREP - Only first record from give... DFSORT/ICETOOL 3
No new posts Map Vols and Problem Dataset All Other Mainframe Topics 2
No new posts Allocated cylinders of a dataset DB2 12
No new posts Sort First/last record of a subset th... DFSORT/ICETOOL 7
No new posts Reading dataset in Python - New Line ... All Other Mainframe Topics 22
Search our Forums:

Back to Top