Managing buffer pools
Use this topic if you want to change or delete your buffer pools.
Buffer pools are defined during queue manager initialization, using DEFINE BUFFPOOL commands issued from the initialization input data set CSQINP1. Their attributes can be altered in response to business requirements while the queue manager is running, using the processes detailed in this topic. The queue manager records the current buffer pool attributes in checkpoint log records. These are automatically restored on subsequent queue manager restart, unless the buffer pool definition in CSQINP1 includes the REPLACE attribute.
Use the DISPLAY USAGE command to display the current buffer attributes.
You can also define buffer pools dynamically using the DEFINE PSID command with the DSN option.
If you change buffer pools dynamically, you should also update their definitions in the initialization data set CSQINP1.
See Planning on z/OS® for a description of page sets, storage classes, buffers, and buffer pools, and some of the performance considerations that apply.
How to change the number of buffers in a buffer pool
- Determine how much space is available for new buffers by looking at the CSQY220I messages in the log. The available space is reported in MB. As a buffer has a size of 4 KB, each MB of available space allows you to allocate 256 buffers. Do not allocate all the free space to buffers, as some is required for other tasks.
If the buffer pool uses fixed 4 KB pages, that is, its PAGECLAS attribute is FIXED4KB, ensure that there is sufficient real storage available on the LPAR.
- If the reported free space is inadequate, release some buffers from another buffer pool using the command
where buf-pool-id is the buffer pool from which you want to reclaim space and integer is the new number of buffers to be allocated to this buffer pool, which must be smaller than the original number of buffers allocated to it.ALTER BUFFPOOL(buf-pool-id) BUFFERS(integer)
- Add buffers to the buffer pool you want to expand using the command
where buf-pool-id is the buffer pool to be expanded and integer is the new number of buffers to be allocated to this buffer pool, which must be larger than the original number of buffers allocated to it.ALTER BUFFPOOL(buf-pool-id) BUFFERS(integer)
How to delete a buffer pool
When a buffer pool is no longer used by any page sets, delete it to release the virtual storage allocated to it.
You delete a buffer pool using the DELETE BUFFPOOL command. The command fails if any page sets are using this buffer pool.
See How to delete page sets for information about how to delete page sets.