Commit graph

454 commits

Author SHA1 Message Date
Bradley C. Kuszmaul
179253d997 Use toku_malloc, not malloc. Fixes #169.
git-svn-id: file:///svn/tokudb@1332 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-22 22:18:50 +00:00
Bradley C. Kuszmaul
10fb98e4da Quiet down the src/tests. Addresses #13.
git-svn-id: file:///svn/tokudb@1331 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-22 20:57:07 +00:00
Bradley C. Kuszmaul
c0d629c7e9 Make test_db_assoc3 work with -v. Make it run with vgrind. Fixes #163.
git-svn-id: file:///svn/tokudb@1328 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-22 18:46:45 +00:00
Bradley C. Kuszmaul
161e70ed01 Get rid of various memory leaks in the cxx (and test cxx exceptions) Addresses #215.
git-svn-id: file:///svn/tokudb@1327 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-22 18:40:22 +00:00
Bradley C. Kuszmaul
6198e6f5c5 add exceptions to dbc.cpp. Addresses #215.
git-svn-id: file:///svn/tokudb@1316 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-21 15:32:21 +00:00
Yoni Fogel
4c90d3a8d0 DB_ENV->set_data_dir cleaned up and tightened
Fixes a bug where I forgot to set the reallocced memory.
Addresses #42

git-svn-id: file:///svn/tokudb@1305 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-21 06:18:16 +00:00
Yoni Fogel
131ce32d51 set_data_dir is now additive.
DB->open, and DB->remove now use the data dirs
We look (in order) in each of the data dirs for a file to open/remove.
The first file found, is the one used (even if another is similarly named with
different subdbs).

For creating dbs, (if file does not exist in any of the search dirs), we always
create in the first data dir (or env->i->dir if no data dirs are set).

Addresses #42
Addresses #108


git-svn-id: file:///svn/tokudb@1304 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-21 06:01:55 +00:00
Yoni Fogel
10c82d9f0c DbEnv.err
DbEnv.set_errfile

toku_db_env_err now writes to the file from set_errfile
toku_db_env_err calls toku_db_env_err_vararg

Fixed DbException.set_env, and callers of it.
Modified test1 to not use exceptions, since the test tried to use return codes.

Closes #214
Addresses #197
Addresses #215

git-svn-id: file:///svn/tokudb@1303 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-21 05:57:33 +00:00
Bradley C. Kuszmaul
80b5a4758b Add a comment. Addreses #180.
git-svn-id: file:///svn/tokudb@1293 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-20 22:08:42 +00:00
Bradley C. Kuszmaul
62dc77b1c3 Add some more cases to test_db_get_put_flags.c. Addresess #180.
git-svn-id: file:///svn/tokudb@1292 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-20 22:08:22 +00:00
Yoni Fogel
e669f58910 DB->remove (with no subdb) now correctly returns
error codes from unlink.
Modified test_db_remove_subdb to check for this.
Closes #211

git-svn-id: file:///svn/tokudb@1288 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-20 18:59:39 +00:00
Yoni Fogel
605ad57be1 Removed 'unused' attribute from a parameter actually used.
git-svn-id: file:///svn/tokudb@1287 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-20 18:46:36 +00:00
Yoni Fogel
221c5ba9d3 Modifications for c_put and test_db_get_put_flags
to support 'flags==0 returns EINVAL for put on a dupsort db'
Addresses #180
Addresses #15
Addresses #194

git-svn-id: file:///svn/tokudb@1282 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-20 18:16:53 +00:00
Bradley C. Kuszmaul
0c31bc0a83 the dupsort_get_both_range test now works under BDB. Addresses #187.
git-svn-id: file:///svn/tokudb@1277 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-20 15:13:46 +00:00
Bradley C. Kuszmaul
1e96e2f4d5 The test_db_env_open_nocreate.c test was complaining when it didn't
really have a right to.  It was creating the directory and then
calling {{{DB_ENV->open}}} without specifying {{{DB_CREATE}}} and then
complaining if the open was successful.

For BDB, the open is not successful because BDB has internal files it sets up.

TokuDB has no internal files (yet) because it only handles
{{{DB_PRIVATE}}} databases.  Hence creating the directory is enough to
make TokuDB happy.  And we're OK with that.

Addresses #209.


git-svn-id: file:///svn/tokudb@1263 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-19 22:50:06 +00:00
Bradley C. Kuszmaul
276256b3e6 Print an error message for DB_PRIVATE missing, and make the test actually observe issue #209 (open works even when the dir doesn't exist but DB_CREATE is not specified). Addresses #208, 209.
git-svn-id: file:///svn/tokudb@1262 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-19 22:38:10 +00:00
Bradley C. Kuszmaul
6530c1c216 Improve testing. Addresses #179, #178.
git-svn-id: file:///svn/tokudb@1261 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-19 21:38:15 +00:00
Bradley C. Kuszmaul
f31f24c237 Make set_errfile work. Fixes #72.
git-svn-id: file:///svn/tokudb@1260 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-19 21:17:37 +00:00
Rich Prohaska
a98f0cd111 change the db->put to require flags != 0. closes #180
git-svn-id: file:///svn/tokudb@1217 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-18 20:15:01 +00:00
Rich Prohaska
a7970a58d8 fix the mem leak. closes #199
git-svn-id: file:///svn/tokudb@1205 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-18 18:38:26 +00:00
Rich Prohaska
32e57a7811 shorten the tests. addresses #198
git-svn-id: file:///svn/tokudb@1199 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-18 17:04:36 +00:00
Yoni Fogel
58fd7e37fc Additional tests for c_put
Show that the key parameter is not only ignored, but never accessed nor written to
when flags == DB_CURRENT
Closes #15

Removed comments asking for this test.

git-svn-id: file:///svn/tokudb@1183 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-18 02:37:12 +00:00
Yoni Fogel
f945194b94 Added tests for c_put
Addresses #15

git-svn-id: file:///svn/tokudb@1181 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-18 02:23:29 +00:00
Yoni Fogel
e7d13a1a73 Added a comment to c_put
git-svn-id: file:///svn/tokudb@1180 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-18 02:21:34 +00:00
Rich Prohaska
feeff730d7 test for cursor stickyness. addresses #196
git-svn-id: file:///svn/tokudb@1173 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-17 21:34:58 +00:00
Yoni Fogel
1f6fb8627f Addresses #180
test_db_assert_einval.c renamed to test_db_get_put_flags.c

git-svn-id: file:///svn/tokudb@1166 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-17 17:53:35 +00:00
Yoni Fogel
14ff121e79 Addresses #180
Tests for DB_GET_BOTH with DUPSORT and no DUPSORT.

git-svn-id: file:///svn/tokudb@1165 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-17 17:53:02 +00:00
Yoni Fogel
1c918c44c8 addresses #180
Support DB_GET_BOTH for dbs without DUPSORT.
Also modified test_db_assert_einval to validate the changes.

git-svn-id: file:///svn/tokudb@1164 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-17 17:46:39 +00:00
Yoni Fogel
daaf8751e3 Replaced some BDB api call parameter checking asserts
with return EINVAL
Addresses #194

git-svn-id: file:///svn/tokudb@1163 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-17 17:38:22 +00:00
Bradley C. Kuszmaul
14a3707f5f The names were sometimes coming out with duplicates, which was confusing the comparison function.
Fix:  Make all the names unique by adding on the tod to the end of the name.
Fixes #175.


git-svn-id: file:///svn/tokudb@1159 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-17 17:13:23 +00:00
Yoni Fogel
467c07d5a1 Removed comments asking for test
Addresses #15

git-svn-id: file:///svn/tokudb@1158 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-17 17:10:42 +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
Bradley C. Kuszmaul
ad217c2273 Clean up usage() and initialize activity_count. Fixes #193.
git-svn-id: file:///svn/tokudb@1156 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-17 16:31:31 +00:00
Bradley C. Kuszmaul
586a2b7675 Get rid of test_db_curs3.c, which is derivitive from test_db_assoc3.c
git-svn-id: file:///svn/tokudb@1155 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-17 16:27:03 +00:00
Yoni Fogel
d89f277346 toku_db_put_noassociate will call
get_noassociate instead of get (in case we ever call this on a secondary db).
Addresses #180

git-svn-id: file:///svn/tokudb@1154 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-17 16:21:34 +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
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
57a54715c0 make DB_DUP and DB_NODUPDATA warnings not errors. addresses #189
git-svn-id: file:///svn/tokudb@1144 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-15 21:04:59 +00:00
Rich Prohaska
44df006735 after env->close is called the env handle is invalid. this implies that the close happens even if the flags param is non-zero. closes #190
git-svn-id: file:///svn/tokudb@1143 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-15 20:32:33 +00:00
Rich Prohaska
f0f3df1b58 closes #190
git-svn-id: file:///svn/tokudb@1139 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-14 23:04:31 +00:00
Rich Prohaska
9d1694a27b add db->put DB_YESOVERWRITE. addresses #180
git-svn-id: file:///svn/tokudb@1138 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-14 22:56:50 +00:00
Rich Prohaska
2a34c17d63 rollback r1135 update. not yet ready
git-svn-id: file:///svn/tokudb@1136 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-14 20:55:03 +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
1fb6403b07 remove unsort duplicates. closes #179
git-svn-id: file:///svn/tokudb@1128 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-14 00:49:46 +00:00
Yoni Fogel
af88312df7 Initial implementation of DBC->c_pget
Still requires tests.
Addresses #15

git-svn-id: file:///svn/tokudb@1127 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-13 23:51:47 +00:00
Rich Prohaska
d4a306799b add comment addresses #157
git-svn-id: file:///svn/tokudb@1118 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-13 19:37:11 +00:00
Rich Prohaska
7f55362822 make tokudb->set_flags compatible with bdb->set_flags. closes #157
git-svn-id: file:///svn/tokudb@1116 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-13 15:43:03 +00:00
Rich Prohaska
edbc8caf14 test flags param in db->cursor. addresses #89
git-svn-id: file:///svn/tokudb@1115 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-13 15:15:30 +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