Region size requirements for the Build Index function

The Build Index function of FPA operates in a virtual storage region as z/OS® batch job steps. HFPMAIN0 runs in 31-bit addressing mode.

Region size for the Build Index function depends on the size of a UOW, the number of input areas, the number of output secondary index database data sets, the ITASKCTL specification, and the OTASKCTL specification. Typically, database maintenance is a relatively important function. To increase the performance of the Build Index program, it would be advisable to run it in a region that has a relatively high dispatching priority (that is, at least equal to the dispatching priority of a message processing region).

Estimating the region size for the Build Index function

The region size required for the Build Index function is a function of the size of a UOW, the number of input areas, the number of output secondary index database data set, the ITASKCTL specification, and the OTASKCTL specification.

In most cases, the specification on the EXEC statement for HFPMAIN0 of a region that is too small, is detected during the initialization processing of the main task. This causes processing to be terminated at that point. Under certain conditions, the region size shortfall does not become evident until the actual Build Index process has begun. The job must be completely rerun. Thus, the region size calculations must always be performed prior to initiating Build Index processing.

In addition, the sort program also requires region space. For how to estimate the required region size, see the DFSORT Application Programming Guide.

The following worksheet is for estimating the region size that is required for a typical Build Index job. The actual region size depends on the keywords that are specified for the job. Therefore, when you specify the region size in your JCL, use a higher value than the value calculated from this worksheet.

Figure 1. Worksheet for estimating region size for the Build Index function
FPA programs, internal tables, control blocks        3,020,000

Number of areas defined in input DBD * 1,300         ---------

Number of secondary index databases defined 
                      in output DBD * 1,400          ---------

      Internal tables, control blocks             18,200

      Maximum segment length * 1,000           ---------

      Maximum CISZ * 4                         ---------

      Internal I/O buffer                      1,000,000         (If ICHECK=DEFER)

                              subtotal         ---------

      Value specified on ITASKCTL * subtotal         ---------

      Internal tables, control blocks             21,000

      Internal I/O buffer                      1,000,000         (If ICHECK=NODEFER)

      Storage used by sort program             ---------

                              subtotal         ---------

      Value specified on OTASKCTL * subtotal         ---------

Number of Build Index processed areas * 3,700        ---------

Total of CISZ * UOW1 of each area * 2                ---------

Total bytes of Build Index storage                   ---------

If ICACHE=YES is specified, the Build Index function preloads the IOVF part into the data space. The data space size required for the Build Index function is a total of the size of the IOVF part in each area. In addition, if the input data is an image copy data set, all image copy records are stored into the data space. In this case, the data space for the image copy data set must be added to the size that is calculated by the preceding worksheet.

The following figure shows the worksheet for estimating the data space size for Build Index function.

Figure 2. Worksheet for estimating data space size for the Build Index function
Total size of IOVF parts in all areas                ----------


Total of CISZ * UOW1 * (ROOT1 - ROOT2) in each area  ----------(If input data is IC and
                                                                ICACHE=YES is specified)

Total byte of a data space storage                   ----------