Rich Prohaska
615aa1ca25
disabled in the code until it works. addresses #187
...
git-svn-id: file:///svn/tokudb@1221 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-18 21:44:14 +00:00
Rich Prohaska
ea16495aa8
handle cursor DB_SET into the right subtree. closes #186
...
git-svn-id: file:///svn/tokudb@1187 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-18 12:48:14 +00:00
Rich Prohaska
ccfa1a651a
remove debug code
...
git-svn-id: file:///svn/tokudb@1185 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-18 11:57:59 +00:00
Rich Prohaska
c7283d799f
pma_set now finds the leftmost non-deleted kv pair that matches the set key. closes #192
...
git-svn-id: file:///svn/tokudb@1157 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-17 17:09:54 +00:00
Rich Prohaska
d984283041
implement and test cursor->get_both_range. addresses #187
...
git-svn-id: file:///svn/tokudb@1152 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-17 13:48:20 +00:00
Rich Prohaska
9290db6fcc
unified the cursor search for cursor set, get_both, set_range, and get_both_range. still need to prune the search for some of these operations.
...
addresses #186
git-svn-id: file:///svn/tokudb@1149 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-17 01:03:35 +00:00
Rich Prohaska
f28b2fedc1
there was a path through the pma_insert_or_replace function that did not set the replace_v_size parameter. this occurred when inserting a key that had been deleted with a cursor reference. closes #191
...
git-svn-id: file:///svn/tokudb@1148 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-16 20:57:35 +00:00
Rich Prohaska
e61251778c
fix cursor->get_both in a dupsort db. closes #185
...
git-svn-id: file:///svn/tokudb@1135 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-14 20:51:27 +00:00
Rich Prohaska
8af05f08d6
set pma dupsort insert dup dup behaviour to replace. addresses #178
...
git-svn-id: file:///svn/tokudb@1132 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-14 13:18:47 +00:00
Rich Prohaska
8667527f2d
fix the test order. addresses #159
...
git-svn-id: file:///svn/tokudb@1124 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-13 22:25:24 +00:00
Rich Prohaska
8d098df137
cursor->del clears pivots if last match. closes #159
...
git-svn-id: file:///svn/tokudb@1114 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-13 14:53:18 +00:00
Rich Prohaska
83613e1e9a
restore -O2 default
...
git-svn-id: file:///svn/tokudb@1094 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-12 15:35:53 +00:00
Yoni Fogel
a3cf241f96
Added additional error code in toku_deserialize_brtheader_from,
...
and toku_brt_open.
Files that fail assertions when loading the db, will now return EINVAL instead of assert-crashing.
Closes #160
Trying to open bdb db files does not cause us to crash anymore.
git-svn-id: file:///svn/tokudb@1087 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 20:03:12 +00:00
Yoni Fogel
7331e46492
Added DB_UNKNOWN to db.h
...
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 #148
Closes #166
git-svn-id: file:///svn/tokudb@1086 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 19:34:21 +00:00
Yoni Fogel
123dd77a8f
c_pget makes certain never to touch original parameters until/unless success happens.
...
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
2007-12-10 18:54:12 +00:00
Yoni Fogel
012f706b67
DB_DBT_(MALLOC|REALOC|USERMEM) now behave the same as BDB.
...
We never touch ulen. If DB_DBT_USERMEM and ulen is too small, we set size, (do not write anything)
and return DB_BUFFER_SMALL.
This includes test_db_dbt_mem_behavior.c
Closes #146
git-svn-id: file:///svn/tokudb@1034 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-10 17:04:02 +00:00
Bradley C. Kuszmaul
2d351ec3d4
mixing toku_malloc and malloc is not a problem. At least with BUFFERED_MALLOC not defined. Added a test, and a {{{#error}}} inside {{{memory.c}}}. Fixes #161 .
...
git-svn-id: file:///svn/tokudb@1026 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-10 11:28:00 +00:00
Bradley C. Kuszmaul
6a3b4d643b
Recompute the fingerprint for DBC->c_del(). Fixes #154 .
...
git-svn-id: file:///svn/tokudb@1017 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 22:27:52 +00:00
Rich Prohaska
55243e2e18
use DB_KEYEMPTY not BRT_KEYEMPTY. addresses #153
...
git-svn-id: file:///svn/tokudb@1013 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 20:32:59 +00:00
Bradley C. Kuszmaul
7d0c797ac8
DB->associate(..., DB_CREATE, ...) now appears to work.
...
There was a bug in brt.c which checked to see if the number of pinned pages is zero at the beginning of a lookup. With an open cursor, that doesn't have to be true.
Fixes #64 , #141 .
git-svn-id: file:///svn/tokudb@1007 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 19:02:03 +00:00
Rich Prohaska
964dca79ef
fix the valgrind uninitialized value problem. closes #143
...
git-svn-id: file:///svn/tokudb@1001 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 15:22:11 +00:00
Bradley C. Kuszmaul
b5d08ff1b1
Make an association of 2 secondaries to a primary work. Fixes #137 .
...
git-svn-id: file:///svn/tokudb@998 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 14:56:54 +00:00
Bradley C. Kuszmaul
3a073c1e17
Start moving more stuff out of dir. Addresses #126 .
...
git-svn-id: file:///svn/tokudb@982 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-06 20:58:45 +00:00
Rich Prohaska
6668583aad
add a checko2 target to verify OPTFLAGS. addresses #127
...
git-svn-id: file:///svn/tokudb@981 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-06 20:52:23 +00:00
Bradley C. Kuszmaul
6ab4529c91
Switch over the fingerprints to be in the subfield
...
git-svn-id: file:///svn/tokudb@977 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-06 19:16:18 +00:00
Rich Prohaska
4ccaaf0250
set h->dirty when h->unused_memory changes. closes #129
...
git-svn-id: file:///svn/tokudb@976 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-06 18:56:46 +00:00
Bradley C. Kuszmaul
d1569489ca
Get rid of childkeylens. Addresses #126 .
...
git-svn-id: file:///svn/tokudb@964 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-06 14:30:33 +00:00
Bradley C. Kuszmaul
814b68e843
Get rid of another case where childkeylens are used. Addresses #126 .
...
git-svn-id: file:///svn/tokudb@963 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-06 14:24:17 +00:00
Bradley C. Kuszmaul
4dfccf0d81
Get rid of a few more cases where childkeylens are used. Addresses #126 .
...
git-svn-id: file:///svn/tokudb@962 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-06 14:20:47 +00:00
Bradley C. Kuszmaul
85a62db892
Nothing uses the childkeylens now. So we'll be able to remove them next. Addresses #126 .
...
git-svn-id: file:///svn/tokudb@960 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-06 13:52:52 +00:00
Bradley C. Kuszmaul
6ac3943735
Start making structs for the children. Addresses #126 .
...
git-svn-id: file:///svn/tokudb@957 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-06 12:00:24 +00:00
Bradley C. Kuszmaul
eeb476bdc4
Oops, caused a crash. Addresses #27 .
...
git-svn-id: file:///svn/tokudb@956 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-06 11:59:35 +00:00
Rich Prohaska
d1a42e495b
fix DB_NEXT_DUP when the cursor points to a deleted kv pair. closes #121
...
git-svn-id: file:///svn/tokudb@950 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-06 00:32:44 +00:00
Rich Prohaska
230d0d4632
add DBC->get DB_NEXT_DUP. addresses #121
...
git-svn-id: file:///svn/tokudb@948 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-05 22:07:48 +00:00
Bradley C. Kuszmaul
9801c3a7aa
Speed up recovery (a lot) by removing an assertion. Addresses #27 .
...
git-svn-id: file:///svn/tokudb@947 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-05 20:40:39 +00:00
Bradley C. Kuszmaul
080f823012
Get rid of memory leaks. Addresses #27 .
...
git-svn-id: file:///svn/tokudb@946 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-05 20:28:33 +00:00
Bradley C. Kuszmaul
ba1bd129d5
Can recover after 10 insertions. Addresses #27 .
...
git-svn-id: file:///svn/tokudb@945 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-05 20:00:19 +00:00
Bradley C. Kuszmaul
a542433295
Make some of the PMA fields be unsigned.
...
Remove some leading __ (double underbars) from some symbols. (Addresses #8.)
Improve the verification of node sizes (because recovery is having trouble with this. Addresses #27.)
git-svn-id: file:///svn/tokudb@944 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-05 19:41:39 +00:00
Bradley C. Kuszmaul
3e29f976cc
Fix valgrind problems caused by logging. Addresses #27 .
...
git-svn-id: file:///svn/tokudb@941 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-05 18:22:42 +00:00
Rich Prohaska
f6476e0171
fix the ncursors > 0 assert in the nonleaf expand code caused when the cursor path traverses the child at the split point. addresses #119
...
git-svn-id: file:///svn/tokudb@928 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-05 01:07:48 +00:00
Bradley C. Kuszmaul
accc92e4b0
Add some information needed for recovery. Changed the size of the serialization, and caused a new cursor bug to show up. Addresses #27 .
...
git-svn-id: file:///svn/tokudb@927 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-04 22:18:21 +00:00
Bradley C. Kuszmaul
3ca8f1e01d
pma move logging works better. Addresses #27
...
git-svn-id: file:///svn/tokudb@920 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-04 17:59:03 +00:00
Bradley C. Kuszmaul
8c37306c4e
pma move logging works better
...
git-svn-id: file:///svn/tokudb@918 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-04 16:16:30 +00:00
Bradley C. Kuszmaul
4fd00d7311
Log some pma movements. Addresses #27 .
...
git-svn-id: file:///svn/tokudb@911 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-04 10:02:59 +00:00
Rich Prohaska
b83bcb1be6
add DB_CURRENT. addresses #48
...
git-svn-id: file:///svn/tokudb@893 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-03 13:36:52 +00:00
Rich Prohaska
b7b40fc87d
flush buffers when a node has become too big after a child split. closes #51
...
git-svn-id: file:///svn/tokudb@867 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-01 13:12:56 +00:00
Rich Prohaska
cec87512aa
push down will get us partly home. addresses #51
...
git-svn-id: file:///svn/tokudb@862 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-30 17:40:04 +00:00
Bradley C. Kuszmaul
22d8e86bc9
Fix the DBT problem for duplicate keys. Fixes #101 .
...
git-svn-id: file:///svn/tokudb@857 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-30 15:17:37 +00:00
Bradley C. Kuszmaul
9c336ba00c
Get rid of mdict (into .junk). Fixes #10 .
...
git-svn-id: file:///svn/tokudb@849 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-30 06:40:37 +00:00
Bradley C. Kuszmaul
9a8fd72c7e
associate implemented up to a point: put works, get doesn't. Addresses #48 .
...
git-svn-id: file:///svn/tokudb@848 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-30 06:27:49 +00:00