Commit graph

1541 commits

Author SHA1 Message Date
Sears Russell
0d5c22991d add util/multiset; optimize flush with target lsn 2010-11-13 06:03:30 +00:00
Sears Russell
38884a6cd2 fix infinite loop in dirty page table 2010-11-12 18:34:40 +00:00
Sears Russell
81d2c1590e BUGFIX: dirtyPageTable was accidentally using the deprecated red black tree, which leads to in-memory corruption and crashes. Fixed this, and set the deprecated red black tree to issue a warning on startup if it is used 2010-11-09 21:11:37 +00:00
Sears Russell
09d113246c fix pointer bug when invoking commit callbacks 2010-11-05 18:59:10 +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
8c8e6855b7 fix typo in ruby binding 2010-10-19 23:11:20 +00:00
Sears Russell
d26da056b7 make dirty_page_table_flush be reentrant; fix possible dereference of null pointer 2010-10-19 22:55:03 +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
2105337d7f disable tests of dead code that are known to fail 2010-10-19 21:05:54 +00:00
Sears Russell
25d9230f62 fix error string compilation problem 2010-10-06 18:49:11 +00:00
Sears Russell
00c4be5d11 disable sequential handles in buferHash (for now) 2010-10-05 16:22:37 +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
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