Zardosht Kasheff
a34734ccbc
refs #54 , improve the performance of hot indexing. This change does two things:
...
- gets indexer to run in reverse, that is, start at the end and run to beginning
- refines locking a bit. An estimate of the position of the hot indexer is stored,
that is cheap to look at. Threads that use this estimate with a mutex either do
only a quick comparison or set it to a new value. Threads doing writes (with XXX_multiple calls)
will check their position with respect to the estimate, and if they see the hot indexer
is already past where they will modify, they don't grab the more expensive indexer
lock. For insertion workloads that go to the end of the main dictionary of a table/collection,
this check should practically always pass.
2013-08-21 15:10:05 -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
0bc5013e30
fixes #5423 fixes #5424 fixes #5503 fixes #5225 fsync always succeeds and returns void, no more ft panic or logger panic, no more impossible error paths
...
git-svn-id: file:///svn/toku/tokudb@48076 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:08 -04:00
Yoni Fogel
d4cf29525f
refs #5081 Replace all usage:
...
BOOL->bool
FALSE->false
TRUE->true
u_int*_t->uint*_t
Also poisoned all of the variables
git-svn-id: file:///svn/toku/tokudb@46157 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:01:01 -04:00
Leif Walsh
958c447641
closes #5206 merge c++ changes to mainline
...
git-svn-id: file:///svn/toku/tokudb@45903 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:00:59 -04:00
John Esmet
5a6cd59d91
#refs 5133 merge undo-do algorithm changes to main. now, we read a row from the source db AND gather up the leaf entrie's provisional data in the cursor callback, which makes it atomic with respect to commit and abort on that DB. had to fix a few tests after changing some leaf entry signatures
...
git-svn-id: file:///svn/toku/tokudb@44949 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:00:53 -04:00
John Esmet
fb72102eeb
close[t:5134] le_cursor api cleaned up, followed up on a TODO to get rid of the DB parameter from is_key_right (and improved its name too) by using a fake_db in the le_cursor plus the new toku_ft_get_descriptor() api to grab a descriptor reference. refactored some tests to get it all compiling. LE and hot indexer tests pass
...
git-svn-id: file:///svn/toku/tokudb@44895 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:00:53 -04:00
Yoni Fogel
3a208cebc4
closes [t:4913]. Modelines now synchronized in every source/header file (and always top two lines)
...
git-svn-id: file:///svn/toku/tokudb@43762 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:00:36 -04:00
Leif Walsh
3719bf2c2f
[t:4901] merging brt->ft rename to main
...
git-svn-id: file:///svn/toku/tokudb@43686 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-17 00:00:35 -04:00