MASTER FILE RECORD SIZE MUST BE 8 LESS THAN CONTROL INTERVAL SIZE
search cancel

MASTER FILE RECORD SIZE MUST BE 8 LESS THAN CONTROL INTERVAL SIZE

book

Article ID: 39771

calendar_today

Updated On:

Products

Librarian

Issue/Introduction

Why am I getting the error, 'MASTER FILE RECORD SIZE MUST BE 8 LESS THAN CONTROL INTERVAL SIZE' when trying to initialize after creating a new Librarian VSAM master file?

*** ERROR *** MASTER FILE RECORD SIZE MUST BE 8 LESS THAN CONTROL INTERVAL SIZE.

 

Environment

Release: 4.4

Resolution

1.  The record size must be must be eight less than the CISIZE.   For example, if the CISIZE is 10240 then the RECORDSIZE  must be 10232. 

Before initialing a Librarian VSAM file you will need to define the VSAM cluster using the IBM IDCAMS utility 

Example:

//IDCAMS  EXEC PGM=IDCAMS 
//SYSPRINT DD SYSOUT=* 
//SYSIN    DD * 
DEFINE - 
CLUSTER - 
(NAME(YOUR.VSAM.MASTER.MN) - 
VOLUMES(XXXXXX XXXXXX XXXXXX) - 
CYLINDERS(5 2) - 
REUSE - 
NUMBERED - 
CONTROLINTERVALSIZE(10240) - 
RECORDSIZE(10232 10232) - 
SHAREOPTIONS(4 4)) - 
DATA - 
(NAME(YOUR.VSAM.MASTER.MN.DC)) 
/* 
//IDCAMS  EXEC PGM=IDCAMS 
//SYSPRINT DD SYSOUT=* 
//SYSIN    DD * 
LISTCAT ENTRIES(YOUR.VSAM.MASTER.MN) ALL 
/* 

Note the following items: 

* CONTROLINTERVALSIZE can be (n x 512) or (n x 2048), where n is any number from 1 to 16, inclusive.

* RECORDSIZE must be 8 less than the CONTROLINTERVALSIZE. The RECORDSIZE for VSAM master files is not an indication of the length for the users' logical records. CA Librarian blocks and compresses many user logical records into a single record or the defined VSAM cluster. However, user logical records can span VSAM logical records, if needed. 

* You must specify REUSE and NUMBERED. 

* You must specify SHAREOPTIONS (4 4), indicating that the data set is fully shared and that CA Librarian maintains data integrity.

 

2.  Next step is to initialize the newly created Librarian VSAM master file.

Example:

//INITSYS EXEC PGM=AFOLIBR,PARM='NRJS,NJTA,DEPTH=25' 
//STEPLIB  DD DSN=YOUR.LIBRARIAN.CALJLINK,DISP=SHR 
//MASTER   DD DSN=YOUR.VSAM.MASTER.MN,DISP=SHR 
//SYSPRINT DD SYSOUT=* 
//INDEX    DD SYSOUT=* 
//OSJOB    DD DUMMY 
//SYSIN    DD * 
-OPT INIT,DISK,ARC=12,BLOCKS=nnnnn 
-END 
/* 
//

BLOCKS=nnnnn specifies the number of VSAM records to initialize. If omitted, only the primary extent space allocation of the data set are initialized. To calculate the maximum number of blocks (assuming that the primary and secondary space allocations are the same), use the following equation: 

physrecs/track * number of tracks = Z 

Z + ( (primary space/second space) * Z * 117) = BLOCKS 

The value of primary space and secondary space is obtained from the SPACE( ) parameter in the IDCAMS DEFINE job. The value of physrecs/track and number of tracks are obtained from the LISTCAT ENT(your.vsam.master) ALL command. This formula does not assume the primary space and secondary space are equal. The BLOCK= is not mandatory but it is recommended.

 

Additional Information

For more information on initializing Librarian master files, see the Initialization section of Chapter 3: Disk Master Files
in the CA Librarian System Services Reference Guide.