BLKALLOC System Option: z/OS

Causes SAS to set LRECL and BLKSIZE values for a SAS library when it is allocated rather than when it is first accessed.
Valid in: Configuration file, SAS invocation, OPTIONS statement, SAS Systems Options window
Category: File Control: SASFILES
z/OS specifics: All




The BLKALLOC option causes LIBNAME statement processing to use a nonzero block size value when allocating a direct access or sequential access bound library. The block size value is derived from one of the following sources, which are listed in order of precedence:
  1. the value specified with the BLKSIZE host option of the LIBNAME statement
  2. the value specified with the BLKSIZE system option
  3. the value specified with the BLKSIZE(OTHER) system option
  4. 6144.
The block size value is set only if both of following conditions are met:
  • The library is not already allocated either externally or internally to SAS.
  • DISP=NEW is specified.
The purpose of BLKALLOC is to ensure that the library data set is allocated with a default nonzero block size value, even if the library is not accessed by SAS in the current session, and therefore not initialized. The block size value thus set is saved in the data set label (format-1 DSCB in VTOC). If such a library is accessed in a later SAS session, it is treated as a preallocated, but uninitialized, library.
Note: The BLKALLOC option has no effect for libraries that were already allocated, either externally or internally to SAS.