Commit graph

32 commits

Author SHA1 Message Date
Sears Russell
7f332f85cc fix deadlock in filePool logger. The deadlock was due to pages being evicted before Tupdate() released the log entry for writeback. Now, we track another timestamp, so that Tupdate() starts with something analogous to a writelock, and downgrades it to a readlock before pinning pages, and invoking callbacks 2011-07-15 17:37:50 +00:00
Sears Russell
e1201970b6 add firstPendingEntry call to log API, use finer grained latches in Tupdate(). 2011-04-01 17:25:46 +00:00
Sears Russell
b20cd8cd0f document the fact that LSN 0 is reserved 2011-03-25 20:24:40 +00:00
Sears Russell
e7280de51f add ints to enum definition 2011-03-21 21:25:32 +00:00
Sears Russell
dbf253275f fix nested top action log race; because of a refactoring mistake, it was releasing a mutex without acquiring it... 2010-01-21 20:27:35 +00:00
Sears Russell
d71e248291 removed freeLogEntry 2010-01-11 20:41:59 +00:00
Sears Russell
1af589dd18 remove malloc and memcpy from the in_memory_log read path 2009-12-31 23:25:56 +00:00
Sears Russell
32e40c949d added log modes to sequentialThroughput benchmark, added methods for concurrent appends to log api (and stubbed them out) 2009-12-31 19:02:34 +00:00
Sears Russell
7ff80f37ef add deferred, end of transaction callbacks. addresses issue 15 2009-12-15 06:30:37 +00:00
Sears Russell
e6a718a7f9 improved concurrency for transaction table 2009-10-15 20:11:43 +00:00
Sears Russell
4565aff9de more refactoring; no more globals in transactionTable.c 2009-10-14 21:22:50 +00:00
Sears Russell
dbe3ecf0d0 refactoring transaction table; moved implementation into its own file. still need to remove globals 2009-10-14 18:57:50 +00:00
Sears Russell
20a3fe9df5 add support for soft commits, and making prior soft commits durable 2009-10-12 19:16:41 +00:00
Sears Russell
942ba7fffc bugfixes + support for hard limits on log size 2009-10-08 22:48:58 +00:00
Sears Russell
1ce1496226 dependency cleanups; removed compenastions from alloc.c 2009-08-22 00:01:02 +00:00
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
73c4b4fb71 Fix for Issue 1. Reworked log format so that nested top actions do not need to look up old entries during forward operation. This saves log bandwidth and avoids the bug that caused the performance regression 2009-05-14 21:28:09 +00:00
Sears Russell
3ff75ff568 made pass over log documentation 2009-05-13 22:06:58 +00:00
Sears Russell
87218ad929 yet another refactoring; broke groupForce into its own module, removed more static variables and namespace violations 2009-05-13 18:04:53 +00:00
Sears Russell
731da7456a more eclipse refactoring; cleaned up some names, whitespace and documentation 2009-04-13 22:50:12 +00:00
Sears Russell
4b07b538a6 Renamed some methods; fixed bug that caused recovery to create potentially unbounded numbers of concurrent, active transactions.
(Note: this commit contains quite a few instances of auto-cleaned whitespace....)
2009-04-11 17:17:42 +00:00
Sears Russell
83ad15b6d0 more benchmarks; transactions can now be multithreaded 2009-03-20 11:36:27 +00:00
Sears Russell
b1f44ab005 added simplistic support for log reordering 2009-03-16 08:11:49 +00:00
Sears Russell
bd2015443f expose nextAvailableLSN for lsn-free pages 2009-03-15 02:43:09 +00:00
Sears Russell
93885a3ab4 removed static variables from logWriter.c 2008-12-29 23:05:13 +00:00
Sears Russell
2dcc6598d2 added support for softcommit, and for compile / runtime configuration of stasis log + storefile locations 2008-12-01 22:45:32 +00:00
Sears Russell
17d4bb3ed4 log refactoring 2008-12-01 19:48:59 +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
fb4e91debe removed deferred operation stubs 2008-09-12 23:08:41 +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
no author
d0274c3304 Renamed 'lladd' directories and python module to 'stasis' 2007-06-11 21:36:57 +00:00
Renamed from lladd/logger/logger2.h (Browse further)