Commit graph

28 commits

Author SHA1 Message Date
Sears Russell
7660467f8e Refactor page implementation to use multiple include trick (so the backing representation can be changed).
Also, fix apparent bug in stasis_page_fixed_set_record_type().

Otherwise, this change should not make any semantic changes.
2011-11-09 21:37:38 +00:00
Sears Russell
d8621db18f move latching stuff to util/, blobs to operations/ 2011-06-13 11:26:25 +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
188b03152c fix blob recovery issue; pages were being initialized outside of tupdate, breaking recovery 2011-03-29 22:27:31 +00:00
Sears Russell
5364377fd9 Fix handling of lsns in loadUninitializedPage(). This change is more of a hack than I would like. 2011-03-25 20:03:50 +00:00
Sears Russell
bb904e85cf add latch-free slotted pages, and a bug-fix in page.c 2010-09-17 01:10:42 +00:00
Sears Russell
ee7aaff9ec add writeback starvation avoidance logic to concurrentBufferManager 2010-07-09 01:55:54 +00:00
Sears Russell
83a0ec68fe fix rose bit rot, have unintialized page clear the impl pointer (for tidyness), remove some resolved @todos. 2009-12-04 19:33:09 +00:00
Sears Russell
ebd6b14dbf single-page btrees are working 2009-07-29 21:03:16 +00:00
Sears Russell
260310e151 Add page ops for tree implementations. 2009-07-26 06:18:54 +00:00
Sears Russell
7f2edd880d New (more thorough, less frequent) tests for slotted pages. Renamed slotted methods, added microbenchmark for slotted pages. 2009-07-20 17:42:43 +00:00
Sears Russell
eb0661ceeb added segment.c 2009-07-09 21:09:36 +00:00
Sears Russell
2593de7a2c Move page type to Page_s struct. This breaks indirect.c (which is poorly thought out, and will be removed shortly), and was the next step on the road to segment-based recovery 2009-07-07 19:20:22 +00:00
Sears Russell
5efebbbb10 fix doxygen warning 2009-06-28 19:01:13 +00:00
Sears Russell
120665ae53 cleaned up arrayList. stasis_record_write no longer takes an LSN (it was ignoring it anyway). Added some missing calls to stasis_page_lsn_write (each time a page is written to, stasis_page_lsn_write should be called; this happens automatically for operations called via tupdate 2009-06-02 18:25:35 +00:00
Sears Russell
7db06197ca refactored truncation + dirty page table, fixed doxygen warnings. 2009-05-20 21:23:51 +00:00
Sears Russell
bc554efc85 renamed some functions to match naming convention 2009-05-08 06:53:30 +00:00
Sears Russell
651a1a22e5 more refactoring; removed static variables from pageHandle.c 2009-05-08 04:56:34 +00:00
Sears Russell
83a982d0bf fail earlier if record_type and record_size apis are abused 2009-04-01 21:12:50 +00:00
Sears Russell
d413bb27f3 support for lsn-free writeback; partial benchmark code for submission 2009-03-19 03:36:13 +00:00
Sears Russell
45a2410a25 add support for lsn-free set (but not alloc, etc...) 2009-03-15 07:21:37 +00:00
Sears Russell
0ff6196776 documentation fix 2008-10-27 23:33:22 +00:00
Sears Russell
6354fe8a2f use pageid instead of int; Tupdate now takes a pageid instead of a recordid 2008-10-03 02:42:25 +00:00
Sears Russell
6d17442380 Major refactoring:
- Changed operations to take only two arguments
     - No more hacks regarding log argument sizes

     - Set pageid = INVALID_PAGE if you want a logical operation

  - Ported operation implementations to new api; exposed + fixed a number of concurrency bugs

  - More fixes to prepare

  - Fixed to nested top actions

  - More coherent operations api / recovery implmentation

  - TnaiveHash* and Tinstant* are (and were already) broken, and are set for removal

  - Removed some instances of fail_unless

  - Fixed design flaws in blob implementation.

  - New naming convention for operation callback functions.
2008-09-28 03:11:24 +00:00
Sears Russell
41cd975e91 fixed new const warnings from gcc 2008-09-24 06:40:34 +00:00
Sears Russell
2863487991 Documentation update; added more sections under modules, reduced amount of cruft generated by doxygen. 2008-04-23 01:41:57 +00:00
Sears Russell
2929394b31 Fixed some documentation warnings, and clarified a few points. 2008-04-17 06:29:34 +00:00
Sears Russell
afbd89e3ff All headers now live in the header directory. (stasis/, not src/stasis) 2008-04-13 04:02:57 +00:00
Renamed from src/stasis/page.h (Browse further)