Commit graph

1377 commits

Author SHA1 Message Date
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
9577aca365 add missing #include 2010-09-26 22:56:50 +00:00
Sears Russell
ba4e61e3d4 avoid needless insertions of dirty pages into LRU in sequential write mode. 2010-09-26 22:31:36 +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
7815d2f792 add assert to sequential-optimized write path 2010-09-24 17:51:09 +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
9a46882ae3 port to new rbtree implementation (still buggy); performance tweaks for sequential throughput (this commit only changes non_blocking which is disabled by default, and in all sane runtime configurations) 2010-09-23 22:51:13 +00:00
Sears Russell
9ffc06c824 fix compilation on old boxes 2010-09-23 22:48:23 +00:00
Sears Russell
cb31593d1f fix typo in disabled code 2010-09-23 22:48:06 +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
4a5d14f2c6 more non_blocking fixes. now the unit test passes 2010-09-23 19:52:54 +00:00
Sears Russell
774ccfb002 whitespace and comment cleanup 2010-09-23 18:24:03 +00:00
Sears Russell
1048109ab8 initial checkin of buffer manager benchmark 2010-09-23 17:47:06 +00:00
Sears Russell
d3c8c1c003 remove overly-aggressive asserts from last checkin 2010-09-23 00:31:37 +00:00
Sears Russell
546bb4c767 fix rare latch corruption in concurrentBufferManager; add some asserts 2010-09-23 00:21:04 +00:00
Sears Russell
62e7663c27 fix + use macro 2010-09-23 00:19:34 +00:00
Sears Russell
c3b9345bd2 initial checkin of ruby bindings 2010-09-20 16:09:44 +00:00
Sears Russell
aa8142d708 remove apparent race in concurrentHash.c 2010-09-17 01:38:40 +00:00
Sears Russell
889311a303 un-rollback -r1403. It was not the source of the assert failure. 2010-09-17 01:16:46 +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
e6067ae60b rollback -r1403, which was leading to tmp == p->TLS assertion failures 2010-09-02 17:59:00 +00:00
Sears Russell
00e474e3fe Fix bug in LinearHashNTA: inserting over an old key, then aborting set deleted the old key instead of restoring it to its original value 2010-09-01 04:01:20 +00:00
Sears Russell
3b8679d09b call loadUninitializedPage in sequential throughput benchmark 2010-08-27 19:43:33 +00:00
Sears Russell
c2cb334506 add comment to explain mysterious policy in concurrentWrapper 2010-08-25 16:37:05 +00:00
Sears Russell
9b0ee8e856 get rid of deadlock in concurrentBufferManager writeBackPage. The deadlock was due to concurrent reads in higher level code 2010-08-19 23:16:02 +00:00
Sears Russell
52055aa20f whitespace cleanup 2010-08-19 17:48:39 +00:00
Sears Russell
e5528ce218 relaxed page latching requirements; page.c, and dirtyPageTable no longer check / rely on holding rwlatch; removed (now) unnecessary latching from unit tests 2010-08-06 00:19:19 +00:00
Sears Russell
b722adff8a added DEBUG() statements 2010-08-05 23:07:52 +00:00
Sears Russell
0c37a4bccc fix performance-degrading typo 2010-07-26 23:56:05 +00:00
Sears Russell
ad0fe63c2e implement writeBackPage for bufferHash.c 2010-07-26 23:55:43 +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
f376d46090 pull multiops outside of the log latch. (how embarassing...) 2010-06-15 23:12:38 +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
97a2fdd600 fix null pointer dereference when recovering loser transaction that makes use of multipage operations 2010-05-19 01:22:40 +00:00
Sears Russell
71292538e8 Amortize bucket initialization costs for linear hash tables. The best case improvement (~ 20%) is seen with hashes with fixed length key/value pairs and insert-only workloads 2010-05-12 17:51:20 +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
75ae7103fc fix crash in recovery redo that was caused by multipage operations 2010-05-11 23:17:09 +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
Sears Russell
31d045efba add link to my dissertation 2010-05-05 19:27:27 +00:00
Sears Russell
85ad4dd316 updated getting started text 2010-05-05 18:54:45 +00:00
Sears Russell
ffa4f18283 add tryToWriteBackPage. concurrentBufferManager is now compatible with FORCE mode transactions. 2010-04-28 00:05:00 +00:00