Commit graph

8 commits

Author SHA1 Message Date
Russell Sears
3d707c71b6 fix casts; add missing BEGIN_C_DECLS; designated initializers; libstasis.so now builds + runs under both g++ and gcc! 2013-02-08 18:51:38 -08:00
Sears Russell
9083bca1c3 Implement CLOCK replacement policy, and set it to be the default. Add flags to configure the default replacement policy. 2011-08-23 18:25:26 +00:00
Sears Russell
fbdc102d6c change replacementPolicy to avoid a malloc / free during page pins 2011-04-20 20:25:17 +00:00
Sears Russell
c7fa929e71 This fixes in Stasis issue 22.
Replacement policies now track the pin count of each page that they interact with.  This behavior used to live in bufferHash, and had never been ported to concurrentBufferManager.

For various reasons, the pin counts have to be updated atomically with the LRU state.  This would be very difficult to do inside of concurrentBufferManager, which sometimes needs to add and remove pages to replacement policies without holding any other latches.
2010-04-20 01:09:32 +00:00
Sears Russell
2535f69fbc switch the concurrent hash to use lru->getStaleAndRemove; fix crashes due to partial leak of thread local pages on thread shutdown 2009-11-24 01:43:36 +00:00
Sears Russell
b4a0f2436b concurrent lru implementation for new buffer manager 2009-11-09 20:53:05 +00:00
Sears Russell
3ff75ff568 made pass over log documentation 2009-05-13 22:06:58 +00:00
no author
d0274c3304 Renamed 'lladd' directories and python module to 'stasis' 2007-06-11 21:36:57 +00:00
Renamed from lladd/replacementPolicy.h (Browse further)