Commit graph

352 commits

Author SHA1 Message Date
Bradley C. Kuszmaul
cad4727404 #162 appears not to be a bug. (It's a bug in the test program.) Fixes #162.
We have tests for DB->associate().  Fixes #61.

assoc3 is a proto-amazon application.  Fixes #134.

There is a problem in the assoc3 test (References #175.)

Warning:  It helps to always use {{{DB_DUP}}} for associated secondary indices.  BDB and TokUDB will both corrupt things if you accidently insert a duplicate without {{{DB_DUP}}}.

DB->associate() appears to work.  Fixes #48.


git-svn-id: file:///svn/tokudb@1096 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-12 15:52:33 +00:00
Bradley C. Kuszmaul
5c316e0c35 Make the test_db_assoc3 test more repeatable.
* Use separate random number generator instead of the one that tokudb uses.
 * Don't use gettimeofday.  Instead look through the timestamps and use 1+ the max of the previous timestamps.  Increment whenever we need a new one.
 * Create a make rule to test it:  Do {{{make test_db_assoc3.tdbrun}}}
Addresses #162.


git-svn-id: file:///svn/tokudb@1095 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-12 15:38:21 +00:00
Rich Prohaska
12c89f3095 change 17 to 9 and the test works
git-svn-id: file:///svn/tokudb@1089 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-12 00:26:08 +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
b446f09beb Added DB->get_flags to db_create and added toku_db_get_flags
Addresses #166

git-svn-id: file:///svn/tokudb@1085 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 18:58:42 +00:00
Yoni Fogel
3bbf5c9a5d DB->set_flags is now additive.
Closes #165

git-svn-id: file:///svn/tokudb@1083 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 18:46:47 +00:00
Bradley C. Kuszmaul
8de7c053b0 db_assoc3 is crashing
git-svn-id: file:///svn/tokudb@1079 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 16:55:28 +00:00
Bradley C. Kuszmaul
25e613344d Move junk to .junk. Addresses #162.
git-svn-id: file:///svn/tokudb@1077 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 14:43:00 +00:00
Bradley C. Kuszmaul
49819f43ff After getting rid of the duplicate keys, there is no bug found by test_db_curs4
git-svn-id: file:///svn/tokudb@1075 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 14:40:32 +00:00
Bradley C. Kuszmaul
f80b5ebcf8 Clean up the way cursors are handled. This code shows that something is freed that shouldn't be. Addresses #162.
git-svn-id: file:///svn/tokudb@1073 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 12:15:57 +00:00
Bradley C. Kuszmaul
49a904ea1f Cut off the uninteresting tail of the traces. Addresses #162.
git-svn-id: file:///svn/tokudb@1072 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 11:21:44 +00:00
Bradley C. Kuszmaul
735669ad58 Do some extra checks. Addresses #162.
git-svn-id: file:///svn/tokudb@1071 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 11:20:03 +00:00
Bradley C. Kuszmaul
3e5d772aca Shortened the string as much as I could
git-svn-id: file:///svn/tokudb@1070 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 11:16:40 +00:00
Bradley C. Kuszmaul
9797268da5 Shorten the name strings (but cannot shorten them all without encountering a BDB bug. Addresses #162.
git-svn-id: file:///svn/tokudb@1069 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 11:03:29 +00:00
Bradley C. Kuszmaul
7cac629817 Simplify further. Addresses #162.
git-svn-id: file:///svn/tokudb@1068 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 10:51:02 +00:00
Bradley C. Kuszmaul
fab0a6aa16 Get rid of random seeds. Addresses #162.
git-svn-id: file:///svn/tokudb@1067 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 10:27:30 +00:00
Bradley C. Kuszmaul
b5ca65fe2e Get rid of random seeds. Addresses #162.
git-svn-id: file:///svn/tokudb@1066 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 10:26:42 +00:00
Bradley C. Kuszmaul
04d6f31073 Get rid of a bunch of unused code. For example, no longer relies on random. Addresses #162.
git-svn-id: file:///svn/tokudb@1065 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 10:25:23 +00:00
Bradley C. Kuszmaul
e251c5cbed Start changing timestamp to 1 byte instead of 8. Addresses #162.
git-svn-id: file:///svn/tokudb@1064 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 10:11:15 +00:00
Bradley C. Kuszmaul
868a5dd8b8 Shorten the trace. Addresses #162.
git-svn-id: file:///svn/tokudb@1063 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 10:07:14 +00:00
Bradley C. Kuszmaul
be6b85b01c We now have divergent traces from BDB and TokuDB. Addreses #162.
git-svn-id: file:///svn/tokudb@1060 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-11 01:19:26 +00:00
Bradley C. Kuszmaul
b756f84dc1 c4.tdb runs, but c4.bdb returns EINVAL for a DB->put. I don't get it. Addresses #162
git-svn-id: file:///svn/tokudb@1059 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-10 23:04:44 +00:00
Bradley C. Kuszmaul
e6e47e5e8c test_db_curs4 is good, but too much randomness
git-svn-id: file:///svn/tokudb@1057 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-10 22:32:30 +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
Bradley C. Kuszmaul
a6736215c4 seeing the problem with {{{make && ./test_db_curs2.tdb 1 && ./test_db_curs2.tdb 1 --more}}}. Addresses #162.
git-svn-id: file:///svn/tokudb@1036 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-10 18:34:38 +00:00
Bradley C. Kuszmaul
06dd703781 Somehow messed up. Start over trying to recreate the problem. Addresses #162.
git-svn-id: file:///svn/tokudb@1035 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-10 17:10:53 +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
7b6b48673d Removing a bunch of ops, and still have it with
make && ./test_db_cursor.tdb && ./test_db_cursor.tdb --more
Addresses #162.


git-svn-id: file:///svn/tokudb@1033 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-10 15:58:21 +00:00
Rich Prohaska
3b5b5561c2 test case addresses #154
git-svn-id: file:///svn/tokudb@1032 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-10 15:41:31 +00:00
Bradley C. Kuszmaul
a112b6ee7f Addresses #162.
Simplified version has trouble if we change the line 402 to a 3 or a 2 then its bad or good to do:
 make && ./test_db_cursor.tdb 1 && ./test_db_cursor.tdb 1 --more


git-svn-id: file:///svn/tokudb@1031 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-10 15:40:50 +00:00
Bradley C. Kuszmaul
596dfb8e5d Start making a simpler version of the test. Addreses #162.
git-svn-id: file:///svn/tokudb@1029 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-10 15:06:50 +00:00
Bradley C. Kuszmaul
d72309c626 Use the seed in the right way
git-svn-id: file:///svn/tokudb@1028 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-10 14:57:04 +00:00
Bradley C. Kuszmaul
11ab266bc7 test_db_assoc3 fails when delete happens
git-svn-id: file:///svn/tokudb@1027 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-10 13:23:08 +00:00
Yoni Fogel
6e9a2579a6 Free any memory caused by DB_DBT_MALLOC
and pruning stale records in secondary databases.
Closes #144
Closes #158
Fixed bug where we modify key or pkey or data if we return errors and
we really just pruned stale records.

Added test to verify we have no memory leaks caused by these issues.

git-svn-id: file:///svn/tokudb@1019 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-08 01:11:09 +00:00
Bradley C. Kuszmaul
e9a50167b0 Add a strerror for DB_BADFORMAT. Addresses #156.
git-svn-id: file:///svn/tokudb@1016 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 22:27:04 +00:00
Bradley C. Kuszmaul
1a25a9c0d6 c_del is breaking things. Addresse #134.
git-svn-id: file:///svn/tokudb@1015 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 20:57:05 +00:00
Rich Prohaska
67564afc2c add test case. closes #153
git-svn-id: file:///svn/tokudb@1014 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 20:41:36 +00:00
Bradley C. Kuszmaul
0b86108b7f db_assoc3 is doing more. It returns -3 which it shouldn't
git-svn-id: file:///svn/tokudb@1012 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 20:16:56 +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
Yoni Fogel
7ae62892fc Port to OSX/32bit architectures
git-svn-id: file:///svn/tokudb@1005 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 18:20:15 +00:00
Yoni Fogel
6880d604aa moved dbt_init and dbt_init_malloc from most tests to test.h
git-svn-id: file:///svn/tokudb@1004 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 18:19:01 +00:00
Bradley C. Kuszmaul
ed93d29d84 the prototypical amazon test does more (it compiles without dying or comitting. Addresses #134.
git-svn-id: file:///svn/tokudb@1000 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 14:57:47 +00:00
Rich Prohaska
3258fa2ec1 define DB_NODUPDATA to get our bdb tests to compile. closes #142
git-svn-id: file:///svn/tokudb@999 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 14:57:13 +00:00
Bradley C. Kuszmaul
14d9e55b58 Implement DB_CREATE with DB->associate(). No testing yet. Addresses #141.
git-svn-id: file:///svn/tokudb@997 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 12:27:48 +00:00
Bradley C. Kuszmaul
c19f4c2ba8 Make an association of 2 secondaries to a primary work.
git-svn-id: file:///svn/tokudb@996 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 12:05:13 +00:00
Yoni Fogel
a128e5129d Closes #140
Test making certain we free any memory given to us that is flagged DB_DBT_APPMALLOC

git-svn-id: file:///svn/tokudb@992 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 00:46:26 +00:00
Yoni Fogel
639bc1d3a6 Typo fix in test_db_donitindex.c
git-svn-id: file:///svn/tokudb@991 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 00:39:34 +00:00
Yoni Fogel
effdfa88b9 git-svn-id: file:///svn/tokudb@990 c7de825b-a66e-492c-adef-691d508d4ae1 2007-12-07 00:08:18 +00:00
Yoni Fogel
bc3c049f0c Removed property executable
git-svn-id: file:///svn/tokudb@989 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 00:07:56 +00:00
Yoni Fogel
6d302e48bb Test for DB_DONOTINDEX
Closes #66

git-svn-id: file:///svn/tokudb@988 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-06 22:24:48 +00:00