Bradley C. Kuszmaul
0c5f094e26
Probably repairs #880 . Addresses #880 .
...
git-svn-id: file:///svn/tokudb@4258 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-29 17:05:03 +00:00
Bradley C. Kuszmaul
d4a80654d1
Simplfy the logic a little. Addresses #880 .
...
git-svn-id: file:///svn/tokudb@4256 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-29 16:28:37 +00:00
Bradley C. Kuszmaul
8f6bbeb225
Please run the test case under the debugger (compiled with -O0), and then in gdb when it bombs do the following commands.
...
{{{
(gdb) print original_mp
(gdb) print last_total_size_needed
(gdb) up
(gdb) print *mp
(gdb) where
}}}
Addresses #880 .
git-svn-id: file:///svn/tokudb@4255 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-29 16:21:28 +00:00
Bradley C. Kuszmaul
e9323991d7
{{{
...
svn delete tokudb.872
cd tokudb
svn merge -r4187:4233 https://svn.tokutek.com/tokudb/tokudb.872
}}}
Fixes #849 , #872 .
Addresses #820 .
git-svn-id: file:///svn/tokudb@4234 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-29 03:12:59 +00:00
Bradley C. Kuszmaul
c82a8af504
Merge the changes for #871 and #406 into the main line as
...
{{{
$ cd tokudb; svn merge -r 4179:4181 https://svn.tokutek.com/tokudb/tokudb.871
$ svn delete tokudb.871
}}}
Fixes #871 . Addresses #406 . (Possibly fixes both.)
git-svn-id: file:///svn/tokudb@4182 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-28 01:22:51 +00:00
Bradley C. Kuszmaul
31144bf15b
Make the leaf nodes have accurate memory footprint info.
...
git-svn-id: file:///svn/tokudb@4178 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-27 21:08:31 +00:00
Yoni Fogel
b846ceaa9a
Addresses #860
...
Removed extra mallocs and memcopies for toku_c_get
when the dbts use anything other than DB_DBT_USERMEM
git-svn-id: file:///svn/tokudb@4121 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-24 17:22:14 +00:00
Bradley C. Kuszmaul
fbc83b1cda
Hacked fix for #832 . Don't promote unless there's space for a max pivot key.
...
git-svn-id: file:///svn/tokudb@4105 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-23 17:04:21 +00:00
Bradley C. Kuszmaul
f60c54cad0
Fixes #22 , #333 and Addresses #818 :
...
* Create an exact bit (#818 ) for the sums (but doesn't calculate it.)
* Add magic to the file header (#22 )
* Add per-subdb dupsort flags. (#333 ).
Did
{{{
$ cd tokudb
$ svn merge -r3990:4094 https://svn.tokutek.com/tokudb/tokudb.818/
$ cd ..
$ svn delete tokudb.818
}}}
git-svn-id: file:///svn/tokudb@4095 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-22 21:28:00 +00:00
Bradley C. Kuszmaul
0534cbcbaa
Clean up the debug argument that is passed all around. Addresses #832 .
...
git-svn-id: file:///svn/tokudb@4036 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-20 23:47:39 +00:00
Bradley C. Kuszmaul
2f47bef9e1
Add information that is printed in the #832 assertion fails. Also, don't actually assert a failure unless the node size got out of control. Thus, if the estimate is too low, print an message and proceed if possible. Addresses #832 .
...
git-svn-id: file:///svn/tokudb@3988 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-17 00:49:13 +00:00
Bradley C. Kuszmaul
9c26f7c6f8
The proposed fix for #789 . Addresses #789 .
...
git-svn-id: file:///svn/tokudb@3983 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-16 18:48:23 +00:00
Bradley C. Kuszmaul
79df5188a4
memcmp does not accurately determine whether two keys are the same. Take out the overactive assertion. Addresses #788 , #789 .
...
git-svn-id: file:///svn/tokudb@3980 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-16 13:47:02 +00:00
Bradley C. Kuszmaul
bdc7ee0c2f
Back out. Addresses #788 , #789 .
...
git-svn-id: file:///svn/tokudb@3978 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-16 13:16:29 +00:00
Bradley C. Kuszmaul
abe77e8ac2
Zardosht found what looks like the bug. This might fix the two regressions. Addresses #788 , #789 .
...
git-svn-id: file:///svn/tokudb@3973 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-15 21:27:35 +00:00
Bradley C. Kuszmaul
4aea0d2607
More tests pass for keyrange.
...
The same 4 cases mentioned in [3932], except now three out of four are tested:
1. flattened nodup (tested in [3932])
2. unflattened nodup (tested in this change set)
3. flattened dupsort (tested in this change set
4. unflattened dupsort (untested)
Addresses #764 .
git-svn-id: file:///svn/tokudb@3944 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-13 20:14:31 +00:00
Bradley C. Kuszmaul
b07dd27c62
Start testing {{{toku_brt_keyrange}}}.
...
There are 4 cases
1. flattened nodup (tested in this changeset)
1. unflattened nodup (untested)
1. flattened dupsort (untested)
1. unflattened dupsort (untested)
git-svn-id: file:///svn/tokudb@3931 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-13 12:14:38 +00:00
Rich Prohaska
3d0f87f4d8
compile with gcc-4.3 on debian4. addresses #804
...
git-svn-id: file:///svn/tokudb@3922 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-12 18:39:21 +00:00
Yoni Fogel
467c49d564
Addresses #394
...
Bugfix with the way data was copied out to static buffers.
Now (again) copies to cursor's temp storage if it is not a temporary cursor
if it is a db handle call, or a temporary cursor, it will use the db's temporary storage.
git-svn-id: file:///svn/tokudb@3863 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-08 17:38:10 +00:00
Bradley C. Kuszmaul
eec09abdf3
Optimize the case of where we replace a leafentry. (Don't delete and insert. Instead just replace. Addresses #794 .
...
git-svn-id: file:///svn/tokudb@3859 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-08 15:24:53 +00:00
Bradley C. Kuszmaul
f48447c9cf
Write the brt keyrange code. Untested. Addresses #764 .
...
git-svn-id: file:///svn/tokudb@3852 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-08 13:05:01 +00:00
Bradley C. Kuszmaul
ed2c880ee3
Clean up, clean up, everybody clean their share. Fixes #791 .
...
git-svn-id: file:///svn/tokudb@3848 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-08 07:16:26 +00:00
Bradley C. Kuszmaul
e81be86e43
Some keyrange support. Addresess #764 .
...
git-svn-id: file:///svn/tokudb@3846 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-08 07:05:26 +00:00
Yoni Fogel
9abb92dc4b
Addresses #394
...
Merge branch tokudb.394 back into trunk
git-svn-id: file:///svn/tokudb@3841 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-07 20:03:13 +00:00
Yoni Fogel
8c0fd271d5
Addresses #783
...
Using DB_CURRENT no longer overwrites temporary memory owned by the db handle.
Added regression test.
git-svn-id: file:///svn/tokudb@3821 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-06 20:30:24 +00:00
Bradley C. Kuszmaul
09850cc913
Hacking makefiles. Also make the filenames used by the tests work more reliably. Addresses #782 .
...
git-svn-id: file:///svn/tokudb@3792 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-04 16:56:15 +00:00
Bradley C. Kuszmaul
c199a47fae
Dramatic speedups: For {{{db-benchmark-test -x}}} (4 interations)
...
|| || DB size || logsize || rate ||
|| Before (with transactions) || .33GB || 3.0GB || 17477/s ||
|| No Transactions (with this fix) || .43GB || 0GB || 104124/s ||
|| After removing undo info (#775 ) || .33GB || 1.4GB || 25696/s ||
|| After optimizing commit (#725 ) || .43GB || 0.6GB || 39909/s ||
The file size is a larger, but the logs are a lot smaller.
Addresses #725 , #775 .
Manipulations:
{{{
$ (cd tokudb; svn merge -r3763:3778 https://svn.tokutek.com/tokudb/tokudb.725 )
$ svn delete tokudb.725
}}}
git-svn-id: file:///svn/tokudb@3779 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-03 12:43:25 +00:00
Bradley C. Kuszmaul
77fe15598c
Removed the undo information from the logs (to rely on the checkpoint to save a good copy in the log).
...
Also, don't record the fingerprint changes, since they can be recalculated independently. (This is a biggy. The fingerprints updates were half the log changes.)
We'll have to do something about the fingerprints of internal nodes, so some if may come back in some form.
Speeds up {{{db-benchmark-test-tokudb -x}}} from 17477/s to 25696/s, and reduces the size of the {{{bench.tokudb}}} directory (containing logs and data) from 3.3GB to 1.7GB for a 0.33GB datafile.
Manipulations as follows:
(cd tokudb;svn merge -r3676:3763 https://svn.tokutek.com/tokudb/tokudb.740 )
svn delete tokudb.740
Fixes #775 .
git-svn-id: file:///svn/tokudb@3764 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-02 14:38:35 +00:00
Bradley C. Kuszmaul
71b56ba1e8
Calculate an estimate of the number of {{{LEAFENTRY}}}s below each node.
...
Increment {{{layout_version}}} to 6.
brtdump now has a {{{--nodata}}} option (to print only the metadata, but not the data)
Fixes #766 .
Merged to main using
{{{
cd tokudb/tokudb
svn merge -r3713:3725 https://svn.tokutek.com/tokudb/tokudb.766
cd ..
svn delete tokudb.766
}}}
git-svn-id: file:///svn/tokudb@3728 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-30 13:23:04 +00:00
Bradley C. Kuszmaul
7523273fb8
On commit push into tree instead of root if possible. Addresses #735 .
...
git-svn-id: file:///svn/tokudb@3668 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-27 12:34:50 +00:00
Bradley C. Kuszmaul
d5f2eec078
Add the list of txns. Addresses #735 . Fixes #749 .
...
git-svn-id: file:///svn/tokudb@3659 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-26 03:16:30 +00:00
Bradley C. Kuszmaul
ecd0b0a971
Start adding the lists. Addresses #749 .
...
git-svn-id: file:///svn/tokudb@3647 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-25 14:22:05 +00:00
Bradley C. Kuszmaul
8489ae2389
Change the {{{LEAFENTRY}}} to {{{OMTVALUE}}} when using the omt, and also change the type of {{{OMTVALUE}}} to {{{void*}}} so we can have two different OMTs coexisting. Fixes #750 .
...
git-svn-id: file:///svn/tokudb@3645 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-25 13:45:55 +00:00
Bradley C. Kuszmaul
0b880e866e
Merge onto the main line again.
...
{{{
svn merge -r3571:3582 https://svn.tokutek.com/tokudb/tokudb.724
}}}
git-svn-id: file:///svn/tokudb@3583 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-23 04:17:28 +00:00
Bradley C. Kuszmaul
33b252772a
Merge in the OMT and its integration into the main line.
...
{{{
$ cd tokudb
$ svn merge -r3533:3571 https://svn.tokutek.com/tokudb/tokudb.724
}}}
There remain a few problems with recovery, but the main line has problems with recovery, so let's bite the bullet and move forward.
Fixes #729 , #724 .
git-svn-id: file:///svn/tokudb@3572 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-22 20:39:50 +00:00
Bradley C. Kuszmaul
ce2f9354f3
Use the filenums slower. Fixes #722 .
...
git-svn-id: file:///svn/tokudb@3513 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-18 21:30:39 +00:00
Bradley C. Kuszmaul
8511ea7372
Log db close so that recovery will work right if the same db is opened and closed repeatedly.
...
Also the file numbers can thus be reused.
Don't pass the BRT into the flush commands, since the BRT may no longer be present.
Put a counter in to see how many rollback records are present. (Addresses #698.)
Increment the file version to 4.
Fixes #545 , #703 .
Note: All the tests pass except
* Many cxx tests are getting valgrind errors. (Addresses #716 . Possibly causes #716.)
* {{{test_log9.recover}}} fails with "Binary files ... differ". These will presumably be fixed by #711 or #714 . (Addresses #711 , #714.)
* {{{test_log10.recover}}} fails. There are two failures:
1. A valgrind problem (see #718.) (Addresses #718 . Possibly causes #718.)
1. The "Binary files ... differ" issue.
git-svn-id: file:///svn/tokudb@3486 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-17 03:11:55 +00:00
Bradley C. Kuszmaul
676c4dc0ee
A fix that makes the {{{test_dupsort_del}}} pass. However {{{test_dupsort_del_checksum}}} still breaks under TokuDB, but not under BDB. Addesses #690 .
...
git-svn-id: file:///svn/tokudb@3442 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-12 14:50:50 +00:00
Bradley C. Kuszmaul
1a31f3dbce
The fix is to #687 is that the latest value from a le_both was providing the committed value rather than the provisional value. Fixes #687
...
git-svn-id: file:///svn/tokudb@3404 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-09 21:43:13 +00:00
Bradley C. Kuszmaul
a8a3471e43
Remove dead code for expunging fifos. Fixes #684 .
...
git-svn-id: file:///svn/tokudb@3392 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-09 18:52:03 +00:00
Bradley C. Kuszmaul
2102667943
Get rid of the wrong assertion. Fixes #671 .
...
git-svn-id: file:///svn/tokudb@3388 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-09 17:13:13 +00:00
Bradley C. Kuszmaul
b58a413bce
{{{
...
svn merge -r3352:3375 https://svn.tokutek.com/tokudb/tokudb.558a
}}}
with no conflicts.
Fixes #672 , #558 , #680 .
git-svn-id: file:///svn/tokudb@3376 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-09 02:45:27 +00:00
Bradley C. Kuszmaul
b1ecd56ca0
Get the lsn's right on {{{brtenq}}} operations. Fixes #678 .
...
git-svn-id: file:///svn/tokudb@3350 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-08 03:20:59 +00:00
Bradley C. Kuszmaul
ab12ba3afb
Implemented tests for the confused-about-provisional-deletes bug. {{{test_log6a_abort}}} works now. Fixes #677 .
...
git-svn-id: file:///svn/tokudb@3349 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-08 02:09:19 +00:00
Bradley C. Kuszmaul
f618aba2b8
Changing the size calculation broke brt-test. Changed it so if cachetable overflows its budget, then the cachetable continues to work. Addresses #669 .
...
git-svn-id: file:///svn/tokudb@3338 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-07 19:52:49 +00:00
Rich Prohaska
8e0a9cc188
delete an assert that causes db-build to crash. addresses #671
...
git-svn-id: file:///svn/tokudb@3336 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-07 18:11:13 +00:00
Bradley C. Kuszmaul
77b41b1938
Make {{{brtnode_size()}}} more accurate. Fixes #669 .
...
git-svn-id: file:///svn/tokudb@3334 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-07 14:53:10 +00:00
Bradley C. Kuszmaul
6298988642
Merge the tokudb.558 branch back to to the main branch with:
...
{{{
svn merge -r3272:3320 https://svn.tokutek.com/tokudb/tokudb.558
}}}
No conflicts.
git-svn-id: file:///svn/tokudb@3322 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-07 01:30:25 +00:00
Bradley C. Kuszmaul
7e5dfd3e5d
Write leafentry code, and get things to compile. Addresses #558 .
...
git-svn-id: file:///svn/tokudb@3269 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-04 18:03:03 +00:00
Rich Prohaska
5b9d12914e
toku_verify_gpma removed as it is part of code verification. closes #633
...
git-svn-id: file:///svn/tokudb@3240 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-03 17:11:43 +00:00