John Esmet
7316bacdeb
FT-396 Rename TokuDB to TokuFT in each license header
2014-08-21 15:35:06 -04:00
John Esmet
47f57224b7
FT-273 Use a comparator in the locktree instead of a
...
descriptor/ft_compare_func pair
2014-06-26 11:35:53 -04:00
John Esmet
b33e859c6a
FT-273 Use a comparator object for fractal tree key comparisons when
...
possible, untangling the dependency between parameters 'ft->compare_fun' and
'ft->cmp_descriptor' in a sensible way. It is now much less necessary to
create a fake db (good) and some long parameter lists are now shorter
(it's a start)
2014-06-15 23:01:58 -04:00
John Esmet
b6abf2063c
FT-259 Clean up memarena API / code. Use a memarena in the locktree to store
...
each transaction's ranges instead of a hand-rolled buffer.
2014-06-14 20:40:33 -04:00
John Esmet
21b3cd608b
fixes #206 Factor out inner classes to be their own classes. Relax some
...
abstractions and strengthen others, with an eye for simplicity and
consistency, not over-encapsulation.
2014-03-06 16:22:18 -05:00
John Esmet
ddacebb1ea
fixes #187 Add a paranoid invariant that left endpoints are <= right
...
endpoints on acquire and release.
2014-03-01 19:25:08 -05:00
Rich Prohaska
c8993dec4d
#141 identify a big transaction and have it run lock escalation
2014-01-13 11:29:52 -05:00
Rich Prohaska
2796c2d35c
tokutek/ft-index#76 add US Patent 8,489,638
2013-10-04 16:49:53 -04:00
John Esmet
3e85b387f4
refs #59 Add the locktree visualization APIs, new accessors in the DB and DB_TXN,
...
and a new operation in test_stress0 for stress testing coverage
2013-09-13 11:10:49 -04:00
Rich Prohaska
50aef9b7d9
#50 count lock tree timeouts
2013-08-21 16:10:43 -04:00
Leif Walsh
9f99932a76
refs #6566 fix typo in license text
...
git-svn-id: file:///svn/toku/tokudb@55577 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:36 -04:00
Leif Walsh
9fd20e61a4
refs #6566 add license text to all C/C++ files as a comment near the top
...
git-svn-id: file:///svn/toku/tokudb@55574 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:35 -04:00
Leif Walsh
84fef672e4
refs #6566 update all copyright strings to reflect an end year of 2013
...
git-svn-id: file:///svn/toku/tokudb@55567 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:35 -04:00
John Esmet
01c0320527
fixes #6100 #6232 track memory usage in each txn's range buffer, resetting on txn commit and in the escalation callback. large write transactions that get redundant locks in the locktree will now be under control.
...
git-svn-id: file:///svn/toku/tokudb@54278 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:30 -04:00
John Esmet
cf69a2b6bf
fixes #6113 add instrumentation to the locktree, including memory stats, escalation stats, and single txnid optimization stats
...
git-svn-id: file:///svn/toku/tokudb@53781 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:30 -04:00
John Esmet
fba8312504
fixes #5961 pass a callback to the ydb layer when escalation occurs for a txnid, providing the locktree and range_buffer describing how to update the txn's internal data structures so they don't grow out of control for very long lived write transactions
...
git-svn-id: file:///svn/toku/tokudb@52941 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:29 -04:00
Leif Walsh
a1d664f010
refs #5965 fix some mutex initializations
...
git-svn-id: file:///svn/toku/tokudb@52884 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:29 -04:00
Leif Walsh
32698fa975
refs #5672 #5351 increase drd timeouts some more (ugh), make locktree stop reporting false positives
...
git-svn-id: file:///svn/toku/tokudb@51378 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:25 -04:00
John Esmet
33a99affe4
fixes #5771 merge the single txnid optimization to main. single threaded write performance is up 20-50% in mysql and multithreaded performance is largely unchanged.
...
git-svn-id: file:///svn/toku/tokudb@51108 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:23 -04:00
Leif Walsh
032ed0c0ca
refs #5742 #5672 suppress more valgrind stuff
...
git-svn-id: file:///svn/toku/tokudb@50720 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:21 -04:00
John Esmet
b15afefe89
refs #5351 fix an overactive assert. just ignore the bit for now because the lock request layer does not know that write locks do not realy exist.
...
git-svn-id: file:///svn/toku/tokudb@49962 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:16 -04:00
John Esmet
43d1d20ae6
fix DRD failures in the threaded stress framework and locktree
...
git-svn-id: file:///svn/toku/tokudb@49960 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:16 -04:00
John Esmet
85594f4e49
refs #5351 fix various drd and helgrind related issues. tree rotations should no longer be problematic with race tools.
...
git-svn-id: file:///svn/toku/tokudb@49920 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:16 -04:00
Leif Walsh
a67344b336
refs #5351 tighten up acquire_lock after cleanup
...
git-svn-id: file:///svn/toku/tokudb@49863 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:15 -04:00
Leif Walsh
c08bafb348
refs #5351 clang compilation cleanup after 5351 merge
...
git-svn-id: file:///svn/toku/tokudb@49862 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:15 -04:00
John Esmet
65cd284834
fixes #5351 fixes #5528 merge the new locktree to main. the locktree, locktree manager, and blocking lock request api are implemented at the toplevel under locktree/ and the ydb layer has been modified to use the new API. some kruft has been deleted from various parts of the source tree and these merge also includes a change where we kill 'includes.h'
...
git-svn-id: file:///svn/toku/tokudb@49851 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:15 -04:00