Goods.CacheManager.lru0 Goods.ObjectHeader lru0
Headers for two l2-lists used to implement enhanced LRU discipline for replacing objects in object cache. Head of the list contains most recently used object and tail - least recently used objects. To prevent object cache from replacing all object as a result of database serach through large number of obejct (most of which will not be used in future), standard LRU scheme was extended to more fit specific of database applications. Object cache is divided into two part: primary cache and cache for frequently used objects. First time object is accessed, it is placed in primary cache. Object will be moved to "frequently used objects" cache only when it is accessed more than twice and it is not at the head of LRU list (case of several sucessive accesses to the object). Both cache parts are managed separately: when total size of objects in the one part exceeds some limit value, least recently used objects from this part are thrown away from clients memory not affecting objects in another part of the cache.

Access: Project
  Type Description  
    ObjectHeader