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.