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