Commit graph

23 commits

Author SHA1 Message Date
Leif Walsh
32698fa975 refs 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 fixes 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