Format of enhanced/extended OSAM buffer subpool statistics

The enhanced OSAM buffer pool statistics provide additional information generated for each defined subpool. Because there might be several buffer subpools for OSAM databases, the enhanced STAT call repeatedly requests these statistics. The first time the call is issued, the statistics for the subpool with the smallest buffer size is provided. For each succeeding call (without intervening use of the PCB), the statistics for the subpool with the next-larger buffer size is provided.

The final call for the series returns a GA status code in the PCB. The statistics returned are the totals for all subpools. If no OSAM buffer subpools are present, a GE status code is returned.

Extended OSAM buffer pool statistics can be retrieved by including the 4-byte parameter 'bE1b' following the enhanced call function. The extended STAT call returns all of the statistics returned with the enhanced call, plus the statistics on the coupling facility buffer invalidates, OSAM caching, and sequential buffering IMMED/SYNC read counts.

Restriction: The extended format parameter is supported by the DBESO, DBESU, and DBESF functions only.

DBESF

This function value provides the full OSAM subpool statistics in a formatted form. The application program I/O area must be at least 600 characters. For OSAM subpools, five 120-byte records (formatted for printing) are provided. Three of the records are heading lines and two of the records are lines of subpool statistics.

The following example shows the enhanced stat call format:

       B U F F E R   H A N D L E R   O S A M   S T A T I S T I C S    FIXOPT=X/X   POOLID: xxxx
BSIZ  NBUFS      LOCATE-REQ    NEW-BLOCKS   ALTER- REQ   PURGE- REQ  FND-IN-POOL  BUFRS-SRCH  READ- REQS   BUFSTL-WRT
                   PURGE-WRTS    WT-BUSY-ID   WT-BUSY-WR   WT-BUSY-RD   WT-RLSEOWN   WT-NO-BFRS    ERRORS
nn1K  nnnnnnnn   nnnnnnnnnn    nnnnnnnnnn   nnnnnnnnnn   nnnnnnnnnn  nnnnnnnnnn   nnnnnnnnnn  nnnnnnnnnn   nnnnnnnnnn
                   nnnnnnnnnn    nnnnnnnnnn   nnnnnnnnnn   nnnnnnnnnn   nnnnnnnnnn   nnnnnnnnnn    nnnnnnn/nnnnnnn

The following example shows the extended stat call format:

       B U F F E R   H A N D L E R   O S A M   S T A T I S T I C S   STG CLS=     FIXOPT=N/N  POOLID:
BSIZ  NBUFS      LOCATE-REQ    NEW-BLOCKS   ALTER- REQ   PURGE- REQ  FND-IN-POOL  BUFRS-SRCH  READ- REQS   BUFSTL-WRT
                   PURGE-WRTS    WT-BUSY-ID   WT-BUSY-WR   WT-BUSY-RD   WT-RLSEOWN   WT-NO-BFRS    ERRORS
nn1K  nnnnnnn5   nnnnnnnnn0    nnnnnnnnn0   nnnnnnnnn0   nnnnnnnnn0  nnnnnnnnn0   nnnnnnnnn0  nnnnnnnnn0   nnnnnnnnn0
                   nnnnnnnnnn    nnnnnnnnnn   nnnnnnnnnn   nnnnnnnnnn   nnnnnnnnnn   nnnnnnnnnn    nnnnnnn/nnnnnnn
      CF-READS   EXPCTD-NF    CFWRT-PRI  CFWRT-CHG  STGCLS-FULL       XI-CNT        VECTR-XI    SB-SEQRD   SB-ANTICIP
      nnnnnnnnnn nnnnnnnnnn   nnnnnnnnnn nnnnnnnnnn  nnnnnnnnnn   nnnnnnnnnn      nnnnnnnnnn  nnnnnnnnnn   nnnnnnnnnn
FIXOPT
Fixed options for this subpool. Y or N indicates whether the data buffer prefix and data buffers are fixed.
POOLID
ID of the local shared resource pool.
BSIZ
Size of the buffers in this subpool. Set to ALL for total line. For the summary totals (BSIZ=ALL), the FIXOPT and POOLID fields are replaced by an OSM= field. This field is the total size of the OSAM subpool.
NBUFS
Number of buffers in this subpool. This is the total number of buffers in the pool for the ALL line.
LOCATE-REQ
Number of LOCATE-type calls.
NEW-BLOCKS
Number of requests to create new blocks.
ALTER-REQ
Number of buffer alter calls. This count includes NEW BLOCK and BYTALT calls.
PURGE-REQ
Number of PURGE calls.
FND-IN-POOL
Number of LOCATE-type calls for this subpool where data is already in the OSAM pool.
BUFRS-SRCH
Number of buffers searched by all LOCATE-type calls.
READ-REQS
Number of READ I/O requests.
BUFSTL-WRT
Number of single block writes initiated by buffer steal routine.
PURGE-WRTS
Number of blocks for this subpool written by purge.
WT-BUSY-ID
Number of LOCATE calls that waited due to busy ID.
WT-BUSY-WR
Number of LOCATE calls that waited due to buffer busy writing.
WT-BUSY-RD
Number of LOCATE calls that waited due to buffer busy reading.
WT-RLSEOWN
Number of buffer steal or purge requests that waited for ownership to be released.
WT-NO-BFRS
Number of buffer steal requests that waited because no buffers are available to be stolen.
ERRORS
Total number of I/O errors for this subpool or the number of buffers locked in pool due to write errors.
CF-READS
Number of blocks read from CF.
EXPCTD-NF
Number of blocks expected but not read.
CFWRT-PRI
Number of blocks written to CF (prime).
CFWRT-CHG
Number of blocks written to CF (changed).
STGGLS-FULL
Number of blocks not written (STG CLS full).
XI-CNTL
Number of XI buffer invalidate calls.
VECTR-XI
Number of buffers found invalidated by XI on VECTOR call.
SB-SEQRD
Number of immediate (SYNC) sequential reads (SB stat).
SB-ANTICIP
Number of anticipatory reads (SB stat).

DBESU

This function value provides full OSAM statistics in an unformatted form. The application program I/O area must be at least 84 bytes. Twenty-one fullwords of binary data are provided for each subpool:
Word
Contents
1
A count of the number of words that follow.
2-19
The statistics provided in the same sequence as presented by the DBESF function value.
20
The POOLID provided at subpool definition time.
21
The second byte contains the following fix options for this subpool:
  • X'04' = DATA BUFFER PREFIX fixed
  • X'02' = DATA BUFFERS fixed

    The summary totals (word 2=ALL), for word 21, contain the total size of the OSAM pool.

22-30
Extended stat data in same sequence as on DBESF call.

DBESS

This function value provides a summary of the OSAM database buffer pool statistics in a formatted form. The application program I/O area must be at least 360 bytes. Six 60-byte records (formatted for printing) are provided. This STAT call is a restructured DBASF STAT call that allows for 10-digit count fields. In addition, the subpool header blocks give a total of the number of OSAM buffers in the pool.

The following shows the data format:

DATA BASE BUFFER POOL:  NSUBPL nnnnnn  NBUFS nnnnnnnn
  BLKREQ nnnnnnnnnn   INPOOL nnnnnnnnnn   READS  nnnnnnnnnn
  BUFALT nnnnnnnnnn   WRITES nnnnnnnnnn   BLKWRT nnnnnnnnnn
  NEWBLK nnnnnnnnnn   CHNWRT nnnnnnnnnn   WRTNEW nnnnnnnnnn
  LCYLFM nnnnnnnnnn   PURGRQ nnnnnnnnnn   RLSERQ nnnnnnnnnn
  FRCWRT nnnnnnnnnn   ERRORS nnnnnnnn/nnnnnnnn
NSUBPL
Number of subpools defined for the OSAM buffer pool.
NBUFS
Total number of buffers defined in the OSAM buffer pool.
BLKREQ
Number of block requests received.
INPOOL
Number of times the block requested is found in the buffer pool.
READS
Number of OSAM reads issued.
BUFALT
Number of buffers altered in the pool.
WRITES
Number of OSAM writes issued.
BLKWRT
Number of blocks written from the pool.
NEWBLK
Number of blocks created in the pool.
CHNWRT
Number of chained OSAM writes issued.
WRTNEW
Number of blocks created.
LCYLFM
Number of format logical cylinder requests issued.
PURGRQ
Number of purge user requests.
RLSERQ
Number of release ownership requests.
FRCWRT
Number of forced write calls.
ERRORS
Number of write error buffers currently in the pool or the largest number of errors in the pool during this execution.

DBESO

This function value provides the full OSAM database subpool statistics in a formatted form for online statistics that are returned as a result of a /DIS POOL command. This call can also be a user-application STAT call. When issued as an application DL/I STAT call, the program I/O area must be at least 360 bytes. Six 60-byte records (formatted for printing) are provided.

Example: The following shows the enhanced stat call format:

OSAM DB BUFFER POOL:ID xxxx BSIZE nnnnnK NBUFnnnnnnn  FX=X/X
  LCTREQ  nnnnnnnnnn  NEWBLK  nnnnnnnnnn  ALTREQ  nnnnnnnnnn
  PURGRQ  nnnnnnnnnn  FNDIPL  nnnnnnnnnn  BFSRCH  nnnnnnnnnn
  RDREQ   nnnnnnnnnn  BFSTLW  nnnnnnnnnn  PURGWR  nnnnnnnnnn
  WBSYID  nnnnnnnnnn  WBSYWR  nnnnnnnnnn  WBSYRD  nnnnnnnnnn
  WRLSEO  nnnnnnnnnn  WNOBFR  nnnnnnnnnn  ERRORS nnnnn/nnnnn

Example: The following shows the extended stat call format:

OSAM DB BUFFER POOL:ID xxxx BSIZE nnnnnK NBUFnnnnnnn  FX=X/X
  LCTREQ  nnnnnnnnnn  NEWBLK  nnnnnnnnnn  ALTREQ  nnnnnnnnnn
  PURGRQ  nnnnnnnnnn  FNDIPL  nnnnnnnnnn  BFSRCH  nnnnnnnnnn
  RDREQ   nnnnnnnnnn  BFSTLW  nnnnnnnnnn  PURGWR  nnnnnnnnnn
  WBSYID  nnnnnnnnnn  WBSYWR  nnnnnnnnnn  WBSYRD  nnnnnnnnnn
  WRLSEO  nnnnnnnnnn  WNOBFR  nnnnnnnnnn  ERRORS nnnnn/nnnnn
  CFREAD  nnnnnnnnnn  CFEXPC  nnnnnnnnnn  CFWRPR nnnnn/nnnnn
  CFWRCH  nnnnnnnnnn  STGCLF  nnnnnnnnnn  XIINV  nnnnn/nnnnn
  XICLCT  nnnnnnnnnn  SBSEQR  nnnnnnnnnn  SBANTR nnnnn/nnnnn
POOLID
ID of the local shared resource pool.
BSIZE
Size of the buffers in this subpool. Set to ALL for summary total line. For the summary totals (BSIZE=ALL), the FX= field is replaced by the OSAM= field. This field is the total size of the OSAM buffer pool. The POOLID is not shown. For the summary totals (BSIZE=ALL), the FX= field is replaced by the OSAM= field. This field is the total size of the OSAM buffer pool. The POOLID is not shown.
NBUF
Number of buffers in this subpool. Total number of buffers in the pool for the ALL line.
FX=
Fixed options for this subpool. Y or N indicates whether the data buffer prefix and data buffers are fixed.
LCTREQ
Number of LOCATE-type calls.
NEWBLK
Number of requests to create new blocks.
ALTREQ
Number of buffer alter calls. This count includes NEW BLOCK and BYTALT calls.
PURGRQ
Number of PURGE calls.
FNDIPL
Number of LOCATE-type calls for this subpool where data is already in the OSAM pool.
BFSRCH
Number of buffers searched by all LOCATE-type calls.
RDREQ
Number of READ I/O requests.
BFSTLW
Number of single-block writes initiated by buffer-steal routine.
PURGWR
Number of buffers written by purge.
WBSYID
Number of LOCATE calls that waited due to busy ID.
WBSYWR
Number of LOCATE calls that waited due to buffer busy writing.
WBSYRD
Number of LOCATE calls that waited due to buffer busy reading.
WRLSEO
Number of buffer steal or purge requests that waited for ownership to be released.
WNOBRF
Number of buffer steal requests that waited because no buffers are available to be stolen.
ERRORS
Total number of I/O errors for this subpool or the number of buffers locked in pool due to write errors.
CFREAD
Number of blocks read from CF.
CFEXPC
Number of blocks expected but not read.
CFWRPR
Number of blocks written to CF (prime).
CFWRCH
Number of blocks written to CF (changed).
STGCLF
Number of blocks not written (STG CLS full).
XIINV
Number of XI buffer invalidate calls.
XICLCT
Number of buffers found invalidated by XI on VECTOR call.
SBSEQR
Number of immediate (SYNC) sequential reads (SB stat).
SBANTR
Number of anticipatory reads (SB stat).