Patent ID: 7809891

Claim:
A method for managing a data cache in a central processing unit (CPU) of a database system, the method comprising: adding an ID of a page p into a page holder queue of the data cache; executing a memory barrier store-load operation on the CPU; looking-up page p in the data cache based on the ID of the page p in the page holder queue; if page p is found in the data cache and not marked for expiration: accessing the page p from the data cache; and adding the ID of the page p into a least-recently-used (LRU) usage queue by writing the ID of page p at the head of the LRU usage queue and incrementing a count of data items in the LRU usage queue; if page p is not found in the data cache: requesting page p via a data loader; yielding the CPU for parallel processes or waiting the CPU until the requesting page p via the data loader is complete; and retrying the looking-up of page p in the data cache; setting a threshold on the LRU usage queue; and if the count of data items in the LRU usage queue exceeds the threshold, locking an LRU queue, and chaining in all pages identified by the LRU usage queue at the head of the LRU queue.