Commit graph

269 commits

Author SHA1 Message Date
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
Rich Prohaska
be7474282c add key and data size limit check in db->put. closes #50
git-svn-id: file:///svn/tokudb@832 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 19:32:53 +00:00
Bradley C. Kuszmaul
df410defa7 Rename the last bunch of symbols to toku_symbols. Closes #8.
git-svn-id: file:///svn/tokudb@829 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 18:14:40 +00:00
Rich Prohaska
ab2fbfa238 addresses #8
git-svn-id: file:///svn/tokudb@828 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 18:03:21 +00:00
Bradley C. Kuszmaul
8b48d70c9d Rename a bunch of symbols to toku_symbols. Addresses #8.
git-svn-id: file:///svn/tokudb@827 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 15:41:46 +00:00
Bradley C. Kuszmaul
0a6d3a6cc6 Rename a bunch of symbols to toku_symbols. Addresses #8.
git-svn-id: file:///svn/tokudb@826 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 15:34:49 +00:00
Bradley C. Kuszmaul
062ad802b1 Rename a bunch of symbols to toku_symbols. Addresses #8.
git-svn-id: file:///svn/tokudb@825 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 15:22:23 +00:00
Bradley C. Kuszmaul
77ab644ef6 Rename a bunch of symbols to toku_symbols. Addresses #8.
git-svn-id: file:///svn/tokudb@824 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 15:17:46 +00:00
Bradley C. Kuszmaul
9f54dcef61 Rename a bunch of symbols to toku_symbols. Addresses #8.
git-svn-id: file:///svn/tokudb@823 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 15:09:14 +00:00
Bradley C. Kuszmaul
6b2f1c61b7 Rename a bunch of symbols to toku_symbols. Addresses #8.
git-svn-id: file:///svn/tokudb@822 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 14:44:03 +00:00
Bradley C. Kuszmaul
d6ed45950d Add copyrights using #ident in the buildheader and db-benchmark-test and loadsome and bdb-examples dirs. Addresses #54.
git-svn-id: file:///svn/tokudb@820 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 14:27:42 +00:00
Bradley C. Kuszmaul
1a155723d6 Add copyrights using #ident on the top of newbrt sources. Addresses #54.
git-svn-id: file:///svn/tokudb@817 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 14:18:54 +00:00
Rich Prohaska
67dc4d5e3e addresses #8
git-svn-id: file:///svn/tokudb@807 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-28 20:51:16 +00:00
Rich Prohaska
d074a42ec6 cursor DB_SET op should not change the key. closes #73
git-svn-id: file:///svn/tokudb@804 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-28 19:46:39 +00:00
Bradley C. Kuszmaul
e4dcc3e9f8 A bunch of symbols that don't start with toku_ are made static or start with toku_. Addresses #8.
git-svn-id: file:///svn/tokudb@801 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-28 19:09:24 +00:00
Bradley C. Kuszmaul
2020f63610 A bunch of symbols that don't start with toku_ are made static or start with toku_. Addresses #8.
git-svn-id: file:///svn/tokudb@800 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-28 19:00:21 +00:00