Commit graph

36 commits

Author SHA1 Message Date
Yoni Fogel
798f83412e refs #6286 Reorganized static asserts and status macros so c++11 features stay out of exported headers
git-svn-id: file:///svn/toku/tokudb@54546 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:31 -04:00
Yoni Fogel
8c06138f58 refs #6286 Removed TOKDUB_ prefixes from all column names for global status.
Added static asserts that prevent accidentally adding global status variables that start with TOKU

git-svn-id: file:///svn/toku/tokudb@54509 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:31 -04:00
Yoni Fogel
22e332838a refs #6286 Add 148 items to information schema.global_status
git-svn-id: file:///svn/toku/tokudb@54507 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:31 -04:00
Yoni Fogel
e8226b79b8 refs #6286 Add infrastructure to use column names for info schema
git-svn-id: file:///svn/toku/tokudb@54506 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:31 -04:00
Yoni Fogel
2ea274c9f5 refs #5820 Merge information schema to mainline
git-svn-id: file:///svn/toku/tokudb@54478 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:31 -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
3111955f13 fix stuff
git-svn-id: file:///svn/toku/tokudb@53792 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
Zardosht Kasheff
a81b87b51d closes #6105, reduce to 50K
git-svn-id: file:///svn/toku/tokudb@53683 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
d9a440ee26 closes #5949 merge to main
git-svn-id: file:///svn/toku/tokudb@52748 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:28 -04:00
John Esmet
c9ded07b2f fixes #5848 add "Id" keyword to each file that did not already have it
git-svn-id: file:///svn/toku/tokudb@51639 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:25 -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
2ce44e52ee refs #5828 destroy the root node when the concurrent tree is destroyed.
git-svn-id: file:///svn/toku/tokudb@51345 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:24 -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
John Esmet
c0f791cb4e refs #5779 rebalance on the way down in treenode::insert(), add a test that makes sure the concurrent tree can survive 128k serial key insertions.
git-svn-id: file:///svn/toku/tokudb@50986 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:22 -04:00
John Esmet
2f8f9ff560 refs #5776 merge a fix for 5776 to main. will resolve as closed once 5771 can survive stress tests for 24 hours or so.
git-svn-id: file:///svn/toku/tokudb@50967 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:22 -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
a879883311 refs #5351 remove kruft
git-svn-id: file:///svn/toku/tokudb@50479 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:19 -04:00
John Esmet
689a93f5ff fixes #5701 The assert half correct, half over-active. When the manager's mutex is held it is okay to transition an existing locktree's reference count from 0 to 1. If the lock isn't held, it's a race, since one thread could be destroying the zero-ref count locktree when you're incrementing the count. The failure occurred with the manager's mutx held (so the assert was overactive) and it's a layering-pain to assert that the manager's mutex is held otherwise, so just get rid of it.
git-svn-id: file:///svn/toku/tokudb@50297 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:18 -04:00
John Esmet
3ebf117c33 refs #5351 correct corner case that was causing +inf, +inf point to not be covered by unit test
git-svn-id: file:///svn/toku/tokudb@50109 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:17 -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
3556f22396 refs #5351 put this in the race tools header, make sure it does not break a release build
git-svn-id: file:///svn/toku/tokudb@49925 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
John Esmet
d61566864e refs #5351 set the mutex to zero first
git-svn-id: file:///svn/toku/tokudb@49918 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:16 -04:00
John Esmet
6ee5fff9f7 refs #5351 fix test
git-svn-id: file:///svn/toku/tokudb@49917 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:16 -04:00
John Esmet
f0a8035a35 refs #5351 remove printf
git-svn-id: file:///svn/toku/tokudb@49916 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:16 -04:00
John Esmet
d49dd4f15b refs #5351 have the locktree link with portability and ft and make sure a printf uses a portable format specifier
git-svn-id: file:///svn/toku/tokudb@49888 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:16 -04:00
Leif Walsh
ffe2a5d87c refs #5351 fix mutexattr stuff for darwin
git-svn-id: file:///svn/toku/tokudb@49885 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:16 -04:00
John Esmet
bcd522eac0 refs #5351 propset id on lock_request.h
git-svn-id: file:///svn/toku/tokudb@49866 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:15 -04:00
John Esmet
12803248af refs #5351 do not use the static initializer in a dynamic context, because it confuses tools like helgrind which look for create/destroy pairs to validate mutex handling
git-svn-id: file:///svn/toku/tokudb@49865 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:15 -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