LENQTBL and (deprecated) LRESTBL parameters
The LRESTBL parameter is an alias for LENQTBL. LRESTBL is deprecated — use LENQTBL instead.
- Default value
- Parameter type
- Where set
- On User 0's parameter line
- Related products
- Model 204 V2.2 or earlier
The number of entries in the resource enqueuing table to be allocated for each user
The resource enqueuing table is used for many purposes. Opening many files concurrently and using nested INCLUDE commands contribute to filling up this table.
The value of LENQTBL defaults to 6. However, if the product of
NUSERS*LENQTBL is less than 12, that product is forced to 12 so that the table will be allocated with a minimum of 12 user entries.
The resource enqueuing table is a volatile structure: its entries can be allocated and deallocated very quickly. As a result, any prediction of its optimum size can only be roughly approximate. Typically, the following formula for sizing LENQTBL suffices, although there might be cases where you need a larger or a smaller LENQTBL value.
Algorithm for estimating the value of LENQTBL
Set LENQTBL to the sum of the following items.
LENQTBL = (avg. no. of open permanent groups (APSY or non-APSY) + avg. no. of open files per user (including files in groups) + 1)
The 1 added at the end accounts for the maximum number of permanent procedures (APSY or non-APSY) that can be in EVAL per user.
Algorithm for corresponding storage requirements
The total amount of storage required for the resource enqueuing table is:
length of user entries + length of system header + length of file headers
(NUSERS * LENQTBL * 32) + 64 + (NFILES * 124)
For example, if:
NUSERS = 100
LENQTBL = 12, which is always the minimum allocation
NFILES = 200
Then the calculation is as follows:
(100 * 12 * 32) + 64 + (200 * 124) = 63,264 bytes
If SYSOPT = 1 or 2 (indicating CCASYS/APSY or CCAGRP), add 1 to the value of NFILES used in the formula. If SYSOPT = 3 (indicating both CCASYS/APSY and CCAGRP), add 2.
Use the value of NFILES you set in CCAIN. If you view NFILES after the run initializes, 1 or 2 has already been added, if needed, to reflect the SYSOPT value.