Created function that peeks at both key and value at the same time
(to avoid repeated OMT calls).
This was worth 4-5% performance in scanscan --lwc --prelock --prelockflag
git-svn-id: file:///svn/tokudb@5386 c7de825b-a66e-492c-adef-691d508d4ae1
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
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
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
Make txn->abort work without bombing out for {{{test_txn_abort5}}} one case. Fixes#431.
Start writing {{{test_txn_abort6}}}. Addresses #443.
Try to write a test for #399 and #400, but haven't managed to reproduce the problem. Addresses #399, #400.
Write a test for #332. Addresses #332.
git-svn-id: file:///svn/tokudb@2406 c7de825b-a66e-492c-adef-691d508d4ae1
Deals with NULL transactions in an INIT_TXN environment.
Does not deal with NULL txn cursors yet.
Also adds DB_AUTO_COMMIT
git-svn-id: file:///svn/tokudb@2252 c7de825b-a66e-492c-adef-691d508d4ae1
You can use DB_UNKNOWN as a dbtype (as long as you don't use DB_EXCL) in dbopen,
and then it will load the flags from the file.
tokudb_dump
Now supports duplicates/sorted duplicates.
tokudb_load will give a warning about any duplicate duplicate loads
but will continue with the rest of the data.
Closes#148Closes#166
git-svn-id: file:///svn/tokudb@1086 c7de825b-a66e-492c-adef-691d508d4ae1
Code is cleaner now with less special cases, handles DB_DBT_(MALLOC|REALLOC|USERMEM) as well as no flags now.
Closes#144
git-svn-id: file:///svn/tokudb@1037 c7de825b-a66e-492c-adef-691d508d4ae1
0 Readded missing files i.e. regression tests.
1
svn add the new test (test_db_remove_subdb)
Commit db->remove and the tokudb.bugs (bug 47 describes it)
2
Modified tests to use a test subdirectory for temp files,
removed unneeded flags to DB_ENV->open
test_db_dup.c
test_db_already_exists.c
test_db_close_no_open.c
test_db_open_notexist_reopen.c
3
Added bug 48 (memory leak in DB->remove
Need Valgrind to verify.
svn add: test_db_remove_memleak.c
git-svn-id: file:///svn/tokudb@579 c7de825b-a66e-492c-adef-691d508d4ae1
note that when the object size is 1, the cache table acts on the number of objects as before.
change the tree algorithms to update the object size in the cache table when the object is unpinned.
git-svn-id: file:///svn/tokudb@334 c7de825b-a66e-492c-adef-691d508d4ae1
tree. It replaces any INSERT or DELETE command with the same key at all
interior nodes. It is translated into a PMA delete operation at a leaf
node.
The database file format was changed for the contents of interior node
buffers to include a 1 byte type field. There are currently 2 types:
BRT_INSERT and BRT_DELETE.
git-svn-id: file:///svn/tokudb@278 c7de825b-a66e-492c-adef-691d508d4ae1