Method of dynamically expanding or contracting a DB2 buffer pool
First Claim
1. A method of dynamically adding a page to a DB2 buffer pool without cycling DB2, comprising:
- (a) calling a DB2 routine that temporarily adds a page to the buffer pool and sets a contractable-page flag for said page; and
(b) clearing said contractable-page flag.
9 Assignments
0 Petitions
Accused Products
Abstract
A method of dynamically expanding or contracting a DB2 buffer pool, a set of control blocks emulating certain DB2 control blocks is constructed. If the size of the buffer pool is to be increased, the buffer pool expansion routine used by DB2 to accommodate abnormally high storage demand is repeatedly invoked to perform the expansion. However, the contractable-page flag that is set by DB2 for each 4K or 32K page that is added to the buffer pool in this way, indicating that the added page should be removed from the buffer pool as soon as the high storage demand condition has ended, is reset. If the size of the buffer pool is to be decreased, pages are removed from DB2'"'"'s three queues or chains used to manage the buffer pool, i.e., the never-used chain, the previously-used chain, and the in-use chain, in that order; in the latter two cases the pages are "removed" by marking them as contractable pages so that DB2 itself will soon remove the pages from the appropriate chain as part of its own normal processing.
-
Citations
2 Claims
-
1. A method of dynamically adding a page to a DB2 buffer pool without cycling DB2, comprising:
-
(a) calling a DB2 routine that temporarily adds a page to the buffer pool and sets a contractable-page flag for said page; and (b) clearing said contractable-page flag.
-
-
2. A method of dynamically contracting a DB2 buffer pool by a specified number of pages without cycling DB2, in response to a contraction request from an operator, comprising:
-
(a) removing from the buffer pool any padres queued on DB2 '"'"'s NEVER USED chain until either (1) no pages remain queued on the NEVER USED chain, or (2) the contraction request is satisfied; (b) if step (a) does not result in satisfaction of the contraction request, then setting a contractable-page flag for each of successive pages queued on DB2'"'"'s PREVIOUSLY USED chain until either (1) the contraction request is satisfied, or (2) the contractable-page flag has been set on all said successive pages; and (c) if steps (a) and (b) do not result in satisfaction of the contraction request, then setting a contractable-page flag for each of successive pages queued on DB2'"'"'s IN USE chain until either (1) the contraction request is satisfied, or (2) the contractable-page flag has been set on all said successive pages.
-
Specification