DFSGGSPC

DFSGGSPC (source module DFSGGSP0) is a CSECT within the DL/I space management load module DFSDHDS0. It is the driver that finds free space in a database. It is usually passed the location of a segment, and tries to find free space as close to the segment as possible. There is a multiple step algorithm for locating the space.

1. space in the same block

2.. space in the "second most desirable block" (if specified in the DBDGEN, as is the default)

3. any block on the same track and in the buffer pool

4. any block on the same cylinder and in the buffer pool

5. any block on the same track indicated by the bitmap

6. any block on the same cylinder indicated by the bitmap

7. any block within n cylinders and in the buffer pool (n is specified by SCAN= in the D.BDGEN)

8. any block within n cylinders indicated by the bitmap

9. any block at the end of the dataset and in the buffer pool

10. any block at the end of the dataset indicated by the bitmap

11. any block anywhere in the database indicated by the bitmap

If space is found, it will be allocated, any updates to free space pointers within the block will be performed, and the bitmap will be updated if required. If necessary the dataset will be extended.

Hints

For performance considerations for CSECT DFSGGSPC, please refer to module DFSDHDS0.

Reference Sources

More information is available in the IMS DBSOURCE Library Data Set. See your IMS systems programmer.