Commit graph

72 commits

Author SHA1 Message Date
Sears Russell
d7e56fc96f Added more buffer manager flags (allow programs to bypass non_blocking). 2007-10-22 20:50:00 +00:00
Sears Russell
44a766a7f6 * Fixed a race condition. Pages that were merged during writeback were
set clean and unpinned while the slow handle was writing them back.
This allowed other threads to come in, and read the old version of the
page from disk.

* Fixed performance bug: When considering pages for writeback, start
  after the end of the last flushed page (not the first flushed page)

* Honor "max_fast_handles".
2007-10-22 20:45:48 +00:00
Sears Russell
1c408dd2f1 Initial refactoring of rose.cpp into reusable components. (Just shuffles the code around.) 2007-10-18 18:52:12 +00:00
Sears Russell
cd5ec5f70c Initial ROSE check in. 2007-10-15 17:46:44 +00:00
Sears Russell
22c89bb3fe Renamed physical_slot_length 2007-10-03 01:53:51 +00:00
Sears Russell
7fb4fd4c1a Updated svn:ignore. 2007-10-03 01:52:41 +00:00
Sears Russell
c9bbf3af94 Converted page.h to follow new naming convention; documented new page api; begun stasis documentation cleanup. 2007-10-02 00:18:33 +00:00
Sears Russell
5f954eb239 Final commit from google. 2007-08-24 23:01:08 +00:00
Sears Russell
5bd2138a8b Fixes a number of memory leaks; adds pageCleanup() callback, and allows callers to use custom allocators with LSM trees 2007-08-20 21:58:20 +00:00
Sears Russell
9c1c284406 Implemented range scans; lsmTree now supports keys that are stored as fixed length byte arrays. 2007-08-20 16:53:16 +00:00
Sears Russell
519bd515f4 New access method for the buffer manager; write coalescing; runtime bufferManager selection and a few bufferManager bugfixes. 2007-08-20 16:25:08 +00:00
Sears Russell
90f011b049 New access method for the buffer manager; write coalescing; runtime bufferManager selection and a few bufferManager bugfixes. 2007-08-20 16:23:57 +00:00
Sears Russell
8963d6d381 Fixed recordNext(), add unit test for recordNext() on slotted and fixed pages. 2007-08-20 16:04:44 +00:00
Sears Russell
8367dfe9a3 releasePage() is now a function, not a function pointer. releasePageImpl is the name of the new function pointer. 2007-08-14 01:20:08 +00:00
Sears Russell
9745d62887 Preliminary LSM tree implementation (hardcodes keys as ints for now) 2007-08-14 01:17:31 +00:00
Sears Russell
a773c4d8b7 Bugfixes and improved error handling for recovery tests and registerPageType() 2007-07-19 23:47:06 +00:00
Sears Russell
f539011e9f Implemented simulateBufferManagerCrash. 2007-07-19 16:36:17 +00:00
Sears Russell
3d84412cea It is now possible to register page types before Tinit() is called, so that they may be used by recovery. 2007-07-19 16:35:11 +00:00
Sears Russell
7ca0619db0 Adds a void * to Page_s so that page implementations can store information with the pages they manage. 2007-07-18 20:10:10 +00:00
Sears Russell
9fd91cffb8 Updated page api to handle page types that need to grab resources on record read/ write, or that perform callbacks when read / written to disk. 2007-07-18 20:09:14 +00:00
Sears Russell
356387eafe support "make install", and use libtool to generate .so, .a files. 2007-06-25 15:47:28 +00:00
no author
d0274c3304 Renamed 'lladd' directories and python module to 'stasis' 2007-06-11 21:36:57 +00:00