NicC wrote:Besides - if your lrecl is 80 and your blocksize is 80 your file is not blocked except in the sense that each record is a block which destroys the reason for blocking and your performance will be really bad.
That's not necessarily really true for tape drives that compress data, A major part of tape drive data compression is they combine your records into large physical records and write them that way; the result is especially marked for unblocked data. But what NicC says is very true for disk data.
Assembler programmers have an extra point to influence the contents of the DCB: they can use a DCB OPEN exit to alter the contents of a DCB during OPEN. AFAIK, the capability is not available in high level languages. You have this hierarcy:
- The DCB as specified at the time of the OPEN.
- The DCB after it has been altered by the DCB open exit after JCL DCB attributes and data set label DCB attributes have been merged into the DCB by OPEN processing.
- The DCB parameters as specified in JCL.
- The DCB attributes retrieved from the data set label (for tape data sets) or the format 1 DSCB (for disk data sets.