gtpd1m1mDatabase Reference

Pool Records

File pool records are records created on demand by applications programs. These records are always accessed indirectly by file address pointers in:

Controlling the Use of Pool Addresses

The use of the file pool area is controlled by the control program file directory system. This system maintains directories for each of the pool areas (4KB, large, or small; duplicated or nonduplicated; and long-term or short-term records). Pool areas use file address reference format (FARF) addressing.

When an application program requires a file address for a created record, it issues a file address request macro to the control program. The control program searches the appropriate file pool directory for the first address that is not in use and, when it finds it, sets an indicator bit showing that the address is in use, and passes the file address to the application program.

When an application program determines that a file address is no longer required, it issues a file address release macro to the control program. For a short-term file pool record, for example, a record that exists only for the time of a transaction, the control program sets the appropriate indicator in the relevant directory to not in use state. For a long-term record, the control program writes the address of the released record to the real-time tape RTA and released pool address (FC33) records, which will be processed by directory support programs to update the status of the long-term file pool directories (see Maintenance Functions).

Losing Pool Addresses Because of Software Errors or a System Restart

Pool addresses can be lost when application programs fail to release file addresses correctly. Although the file copies of the file directory records are frequently updated from the main storage copies of directory records, at any point in time the file copies may not accurately reflect the actual state of the directories.The frequency with which the file copies are updated is based on the number of file addresses given out and placed in NOT AVAILABLE state. If an unplanned system restart occurs because of a machine malfunction or catastrophic error condition, the file pool directory records are read from file and additional record address NOT AVAILABLE indicators are set. The number that is set is an estimate of the maximum number of record file addresses that could have been set to NOT AVAILABLE state in the main storage directory since the file records were last updated. This eliminates the possibility of the same file address being given to application programs before and after a restart. However, some of the file addresses that are set to NOT AVAILABLE state may not have been used before the restart, so some file pool addresses are lost to the system.

Recouping Lost Pool Addresses

The recoup function reconciles the long-term file pool directories with the actual status of the pool area to provide summaries that can be used to isolate the causes of directory discrepancies. To do this, recoup accesses every fixed record and main storage table that references pool records. Recoup then reads any pool records referenced from those records. The data gathered during this record accessing and chain chasing phase can then be used to create file pool directories showing the actual status of the file pool area, and to produce summaries, which may be used to determine how errors are caused.