Commit graph

52 commits

Author SHA1 Message Date
Sears Russell
4493dbb88b Added support for segment based recovery. For now, Stasis doesn't support hybrid recovery, so mixing page deallocation and segments will make recovery corrupt data / segfault. 2009-07-13 17:18:01 +00:00
Sears Russell
b66328192c in-memory group by implementation 2009-07-01 01:33:24 +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
564dfe426b Renamed / refactored operation implementation + registration functions. Added support for third party operations 2009-03-31 05:02:54 +00:00
Sears Russell
83ad15b6d0 more benchmarks; transactions can now be multithreaded 2009-03-20 11:36:27 +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
b1f44ab005 added simplistic support for log reordering 2009-03-16 08:11:49 +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
1f336255f5 fix shutdown of empty rose trees 2008-12-05 20:52:39 +00:00
Sears Russell
32950b2b98 fixed memory leaks and pointer aliasing bugs in lsmTree_iterator. 2008-12-05 00:08:46 +00:00
Sears Russell
79d1512a5e fixed problem in lsm tree recovery; it was not updating the lsm tree header when passing C1 into C2's merger thread. Then C2 freed C1, and C1 pointed to uninitialized data. 2008-12-04 09:22:17 +00:00
Sears Russell
e4341e10b9 partially fixed rose recovery; clean shutdowns now work 2008-12-04 04:12:47 +00:00
Sears Russell
549f97d297 rewrote mergeThread, added ability to start iterators mid lsmTable 2008-11-26 07:14:23 +00:00
Sears Russell
b8624d09b1 obtain readlocks on lsm tree pages while iterating over them 2008-11-26 07:05:22 +00:00
Sears Russell
6a5e7f5589 Fix two problems in lsmTree:
- rewrite lookup() to be simpler, and fixed a few bugs
 - was keeping node records around after pages were released
2008-11-26 07:01:43 +00:00
Sears Russell
11082997d8 revert accidentally committed files 2008-11-24 23:43:26 +00:00
Sears Russell
a321ba6e4e handle null lsmIiterator_ gracefully 2008-11-24 23:41:11 +00:00
Sears Russell
2b63991014 preliminary (and largely untested) support for opening LSM-tree iterators starting at a given tuple 2008-11-24 01:32:35 +00:00
Sears Russell
e2f604175b move hash iterator code around, update documentation 2008-11-13 00:12:19 +00:00
Sears Russell
f5d1229941 Recovery now maintains XactionTable's state in the same way as forward operation.
Internal transactional2.c state is now declared static.
2008-11-13 00:06:35 +00:00
Sears Russell
eb6ade59e4 fix doxygen warning 2008-11-06 21:06:55 +00:00
Sears Russell
794edb07d5 updated documentation 2008-11-06 07:19:02 +00:00
Sears Russell
2c2c603dd2 all naive linear hash methods now start with TnaiveHash; removed references to ThashAlloc from documentation 2008-11-03 21:42:42 +00:00
Sears Russell
a639d461b8 fail a bit earlier on error 2008-10-27 23:32:45 +00:00
Sears Russell
a2a8c73cb5 prevent rose from initiating lots of small merges when the writer process is slow 2008-10-27 23:26:16 +00:00
Sears Russell
108d40ec16 fix warnings on 32-bit platforms 2008-10-09 19:00:17 +00:00
Sears Russell
132a567533 removed dead/unnecessary code; private methods are now static 2008-10-04 07:08:35 +00:00
Sears Russell
ef487c4dc8 remove btree stub files 2008-10-04 00:53:11 +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
cf8eb2ca15 fix doxygen warnings 2008-10-01 20:32:02 +00:00
Sears Russell
db1d79efcd Removed Tinstant* and broken logical hash stuff 2008-09-30 15:34:42 +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
944c7e984f fixes / cleanups of Tprepare() 2008-09-24 03:08:32 +00:00
Sears Russell
651299716e Fixed bugs in gc iterator. 2008-06-08 20:28:23 +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
Sears Russell
f05b0233a3 Fixed memory leaks on iterator open/close Also zero out some memory defensively. 2008-03-01 19:32:34 +00:00
Sears Russell
673f6b55d3 Allocation bugfixes 2008-02-29 18:03:32 +00:00
Sears Russell
a823255227 Added interface to let other stasis modules find regions' boundary tags 2008-02-19 22:07:13 +00:00
Sears Russell
af149cdad1 remove old comment. 2008-02-19 21:17:38 +00:00
Sears Russell
9bb6984c23 force_range is now being called after compressData() 2007-11-12 00:49:00 +00:00
Sears Russell
87a70f29bc Preliminary force_range implementation; lsmTable leaks significantly less space now. 2007-11-11 23:22:21 +00:00
Sears Russell
7e2c37534e Partial implementation of a collection oriented interface for ROSE. (Checking in to create version to diff against.) 2007-11-01 20:09:55 +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