DFSDBH10

DFSDBH10 is the OSAM Buffer Handler. It processes the same type of requests as the VSAM buffer handler DFSDVSM0, but in this case IMS owns the buffer pools and does not have to invoke another system to do the work.

DFSDBH10 is invoked by the DL/I buffer handler router DFSDVBH0. It performs the following functions:

  • searches the pool for a block within a range

  • locates the first block of a data set

  • releases ownership of a buffer

  • locates a specific block

  • locates a block containing a specific byte address

  • creates a new block

  • purges all blocks altered by a specific user

  • marks a buffer as altered

  • locates a block containing a byte address and marks it altered

  • marks a buffer empty

  • writes all altered buffers for a checkpoint and mark empty

  • writes all buffers due to an abend

  • writes a specific buffer

DFSDBH10 interfaces with the other OSAM buffer handler modules for buffer stealing and buffer purging. It invokes the OSAM I/O modules, DFSAOSxx, when I/O is required.

Hints

The amount of CPU that DFSDBH10 uses depends on the amount of OSAM activity in the job. The OSAM buffer handler may do much more work than the VSAM buffer handler, because OSAM manages the buffers itself.

Efficient calling patterns and proper pool allocation help minimize OSAM buffer handling. Check the Data Set Characteristics and I/O Facility Usage reports, and implement standard IMS database performance improvements.

The OSAM buffer pool statistics keep count of many of the functions performed by DFSDBH10. For IMS message processing regions, use the IMS DCMONITOR or IMS log reports. For BMP and batch jobs, you can add a //DFSSTAT DD card to the JCL, and IMS will write the OSAM buffer pool statistics at the end of the job.

Reference Sources

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