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