Commit graph

253 commits

Author SHA1 Message Date
Sears Russell
1b71865b7d minor log fixes. add stasis_log_chunk_name flag. 2011-04-20 21:50:56 +00:00
Sears Russell
853394f022 fix compiler warnings regarding min and concurrentRingbuffer 2011-04-20 20:34:39 +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
84bbeca165 filePool implementation is more-or-less complete. added remaining functions and latching 2011-04-19 18:51:43 +00:00
Sears Russell
2f664271b4 partial implementation of filePool log format. force and truncate are unimplemented, as is attempting to read unflushed data. 2011-04-18 20:31:19 +00:00
Sears Russell
175c26e125 add flush and shutdown apis to concurrent ringbuffer, tighten up get_rd_buf api 2011-04-18 20:21:16 +00:00
Sears Russell
ab058db5d3 add stasis_double_to_timeval() 2011-04-18 20:08:40 +00:00
Sears Russell
e087c9c073 add alternative implementation of min aggregate for small sets. It avoids red black overheads, but some operations are linear in the number of values considered by the aggregate 2011-04-18 20:04:33 +00:00
Sears Russell
304b439217 new data structures: min aggregate and concurrent ringbuffer 2011-04-14 23:03:20 +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
188b03152c fix blob recovery issue; pages were being initialized outside of tupdate, breaking recovery 2011-03-29 22:27:31 +00:00
Sears Russell
b20cd8cd0f document the fact that LSN 0 is reserved 2011-03-25 20:24:40 +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
e7280de51f add ints to enum definition 2011-03-21 21:25:32 +00:00
Sears Russell
bb5efafcd7 comment out declaration of non-existant function 2011-03-21 21:25:00 +00:00
Sears Russell
50335355a4 fix linker error in build 2011-03-18 23:35:26 +00:00
Sears Russell
22802f72c3 add percentile handling to histogram 2011-02-25 19:47:14 +00:00
Sears Russell
de8bf53e98 fix some header #include problems 2011-02-22 19:12:38 +00:00
Sears Russell
fb5791e7e4 one line fix to concurrentHashTable, plus documentation and improved unit tests. 2011-02-15 02:57:19 +00:00
Sears Russell
c4ebeb1285 add missing calls to various pthread destructors 2011-02-02 21:20:18 +00:00
Sears Russell
0a461faa04 add "raid1" a simple mirroring I/O handle implementation 2010-12-03 03:51:24 +00:00
Sears Russell
c7e07c5c5d cleaned up initialization code for stasis handles; it is no longer possible to instantiate the (long broken) non-blocking handle implementation 2010-12-03 02:18:56 +00:00
Sears Russell
a7f71d6dbf add convenience macros to latency profiler; turn on pread/pwrite profiling by default 2010-11-30 18:33:22 +00:00
Sears Russell
d8634edb3d add --target-ops option for the bufferManager benchmark. 2010-11-29 19:17:13 +00:00
Sears Russell
1708a716e1 add custom slab allocator for stlredblack 2010-11-13 06:08:57 +00:00
Sears Russell
0d5c22991d add util/multiset; optimize flush with target lsn 2010-11-13 06:03:30 +00:00
Sears Russell
6b302226ab fix transaction table leaks during recovery; add debugging field to xact table entries 2010-11-05 18:57:18 +00:00
Sears Russell
36546b3a2d add factory methods for log implementation 2010-11-05 18:53:10 +00:00
Sears Russell
6f0c50d861 third-party dirtyPageTable patches 1-4, forward ported to trunk. This commit may introduce a regression; dirty_page_table_flush is probably no longer reentrant 2010-10-19 22:37:07 +00:00
Sears Russell
8ee684d98e add version of Tupdate that takes a Page* instead of a pageid 2010-10-19 21:07:24 +00:00
Sears Russell
9fa9930614 added fnv-1 hash implementation 2010-10-03 18:00:34 +00:00
Sears Russell
ecbdc9513f add stasis_round_up_to_power_of_two 2010-10-03 15:41:19 +00:00
Sears Russell
b3e5743691 add c decl stuff to crc32.h 2010-10-03 15:40:53 +00:00
Sears Russell
18984c7b44 initial checkin of latency profiler 2010-09-30 19:28:42 +00:00
Sears Russell
6525949f56 add paranoid checks to concurrentHash and concurrentBufferManager; tightened up invariants maintained by concurrentHash 2010-09-30 19:27:18 +00:00
Sears Russell
00cf4eb4ce fix bug in lru backoff, add flag for buffer manager stress testing, add support for buffer manager handles to concurrentBufferManager, fix support in bufferHash 2010-09-28 23:50:07 +00:00
Sears Russell
ae04cee76c exponential backoff and power of two bucket flag for concurrenntWrapper (disabled by default) 2010-09-27 00:11:34 +00:00
Sears Russell
4fe5bcaa72 Refactored doubleLinkedList and lruFast. The linked list API is now less insane, and lruFast is simpler. Added asserts to detect double insertion of nodes into the lists / lru 2010-09-24 17:56:51 +00:00
Sears Russell
a3e7fc0fe2 add hint: stasis_buffer_manager_hint_writes_are_sequential. if set to 1, then only one thread will write back at a time, which leads to greatly improved sequential write throughput 2010-09-23 23:09:43 +00:00
Sears Russell
58c909a2ea add implementations of some more rblookup flags to the stl red black tree adapter 2010-09-23 20:38: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
b722adff8a added DEBUG() statements 2010-08-05 23:07:52 +00:00
Sears Russell
7a27e39e5b MAX_BUFFER_SIZE is now a runtime (pre-tinit) option; clean up some doxygen warnings 2010-07-16 16:52:08 +00:00
Sears Russell
e2ba421a53 cleaned up buffer manager comments, added some asserts 2010-07-13 18:17:25 +00:00
Sears Russell
ee7aaff9ec add writeback starvation avoidance logic to concurrentBufferManager 2010-07-09 01:55:54 +00:00
Sears Russell
d4804bd926 add rwlc: A read-write lock that can wait on pthread conditions (assuming it holds the write lock) 2010-05-27 01:48:27 +00:00
Sears Russell
dc1f799a37 TarrayListAlloc() and TarrayListExtend() now generate O(1) bytes of log entries; they use the new multipage operation type. 2010-05-11 23:34:13 +00:00
Sears Russell
820f706faf TarrayListExtend now zeros out the contents of the newly allocated records (this is implemented by having fixed.c zero out the records) 2010-05-11 23:27:22 +00:00
Sears Russell
2d645beb42 cleaned up multipage operations a bit; added stasis_segments_enabled flag 2010-05-11 22:01:37 +00:00
Sears Russell
07df7c064a add support for multi-page operations 2010-05-11 00:17:07 +00:00