Commit graph

1162 commits

Author SHA1 Message Date
Rich Prohaska
97c5f29219 crash in txn begin, commit
git-svn-id: file:///svn/tokudb@2263 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-12 14:04:09 +00:00
Rich Prohaska
187380c667 define DB_AUTO_COMMIT in db.h_4_6
git-svn-id: file:///svn/tokudb@2261 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-12 12:20:13 +00:00
Yoni Fogel
385b669b08 Removed some additional void* types in favor of static types in lock tree
git-svn-id: file:///svn/tokudb@2255 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-11 23:40:29 +00:00
Yoni Fogel
c89743d016 Changed range trees to have static types instead of void*
git-svn-id: file:///svn/tokudb@2254 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-11 23:37:55 +00:00
Yoni Fogel
0fa24d17cb Addresses #368
Deals with NULL transactions in a transaction environment for cursors.
Returns EINVAL (disallows NULL transaction cursors in txn environment.)
This may change later to auto-create transaction and commit it upon
cursor close.

git-svn-id: file:///svn/tokudb@2253 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-11 20:11:54 +00:00
Yoni Fogel
44894c394a Addresses #368
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
2008-02-11 20:00:19 +00:00
Yoni Fogel
2d5e34efda Added DB_AUTO_COMMIT to header
git-svn-id: file:///svn/tokudb@2251 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-11 19:55:37 +00:00
Yoni Fogel
75b96f85ab brt_cursor_not_set made not static so
we can use it in toku_c_get.

git-svn-id: file:///svn/tokudb@2249 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-11 16:29:58 +00:00
Rich Prohaska
05c5502b7d fix namespace pollution
git-svn-id: file:///svn/tokudb@2248 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-11 15:27:15 +00:00
Rich Prohaska
03256cb5ab fix the DB_NEXT_DUP code. close #376
git-svn-id: file:///svn/tokudb@2241 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-10 20:27:41 +00:00
Bradley C. Kuszmaul
7087120e2f Remove another annoying error message. Addresses #375.
git-svn-id: file:///svn/tokudb@2239 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-10 17:58:30 +00:00
Bradley C. Kuszmaul
e8c87085e2 Remove those annoying error messages. Fixes #375.
git-svn-id: file:///svn/tokudb@2238 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-10 17:54:56 +00:00
Bradley C. Kuszmaul
b345dd3947 Note that pma_search might as well be written recursively. Addresses #374.
git-svn-id: file:///svn/tokudb@2237 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-10 15:26:10 +00:00
Bradley C. Kuszmaul
f93c6fb185 Fix #374, replace use a loop instead of recursion in {{{distribute_data}}}.
git-svn-id: file:///svn/tokudb@2236 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-10 14:59:43 +00:00
Rich Prohaska
07047bdfd0 rename libdb.so to libtokudb.so. closes #150
git-svn-id: file:///svn/tokudb@2230 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-10 03:50:15 +00:00
Yoni Fogel
2cb9fb2ebe Port to OSX for makefiles, easier to use OSX versions.
git-svn-id: file:///svn/tokudb@2229 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-10 02:39:08 +00:00
Rich Prohaska
6880c16767 builds take too long with check-x, so disable for now
git-svn-id: file:///svn/tokudb@2228 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-09 22:57:33 +00:00
Rich Prohaska
2695ac8014 fix get_both_range on nodup trees. closes #373
git-svn-id: file:///svn/tokudb@2227 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-09 21:20:22 +00:00
Rich Prohaska
092ecc9d7d test behavour of DB_GET_BOTH_RANGE. closes #370
git-svn-id: file:///svn/tokudb@2225 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-09 21:06:47 +00:00
Rich Prohaska
49e5333ad5 lock init with set_lk_max_locks. closes #371
git-svn-id: file:///svn/tokudb@2224 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-09 16:54:01 +00:00
Rich Prohaska
e30caae6fe test DB_NOTFOUND and c++ exceptions. closes #362
git-svn-id: file:///svn/tokudb@2223 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-09 15:44:34 +00:00
Rich Prohaska
decc8bdd90 check for definition of zero length. addresses #367
git-svn-id: file:///svn/tokudb@2219 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-09 12:13:51 +00:00
Rich Prohaska
921e224de1 fix build issue with db.h_4_6
git-svn-id: file:///svn/tokudb@2218 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-09 11:48:24 +00:00
Yoni Fogel
8f7507a8e1 Addresses #350
Restored the DUPSORT version of the tests for the lock txn test.

git-svn-id: file:///svn/tokudb@2211 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-09 00:00:39 +00:00
Yoni Fogel
5fad7d0bbd Addresses #350
DB->get, DB->pget, DBC->c_get, DBC->c_pget almost done.
Remainder: associated dbs need DBC->c_del and DB->del to lock properly.
Rest is done.

Associated dbs (using any of the above calls) may get stuck half way due to locking.
We are not currently optimizing for them, but it will lock everything necessary
(Once DB->del and DB->c_del lock properly)

Some tests are written, but not all of them.

Currently test_db_txn_locks.c fails due to abort not working properly.


git-svn-id: file:///svn/tokudb@2210 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-09 00:00:02 +00:00
Rich Prohaska
c6875ae990 set the data and length to 0 for zero length things. dbt's with malloc flags are unchanged. closes #367
git-svn-id: file:///svn/tokudb@2209 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 22:53:08 +00:00
Bradley C. Kuszmaul
6eca43dde5 Bump log_code.c test coverage to 54% by putting a call to tdb_logprint into the Makefile. Addresses #369.
git-svn-id: file:///svn/tokudb@2208 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 22:41:47 +00:00
Bradley C. Kuszmaul
b4537afb5f Make test_log5 use set_lk_max_locks. Addresses #366.
git-svn-id: file:///svn/tokudb@2207 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 22:39:40 +00:00
Bradley C. Kuszmaul
10062269c7 Make each rollback code take a list of arguments rather than a single logentry. Makes it easier to notice that I've got unused variables. Addresses #27.
git-svn-id: file:///svn/tokudb@2206 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 22:16:02 +00:00
Bradley C. Kuszmaul
922f0b8b0a Make DB_ENV->set_lk_max_locks work. And test it. Fixes #366.
git-svn-id: file:///svn/tokudb@2205 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 22:14:15 +00:00
Bradley C. Kuszmaul
726ea454ba Give up on valgrind for bdb. Addresses #328.
git-svn-id: file:///svn/tokudb@2204 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 22:12:37 +00:00
Yoni Fogel
5abb302d65 Addresses #367
Test that shows bug described in 367, data = key = (NULL,0)
is not supported by our cursor implementations.

git-svn-id: file:///svn/tokudb@2203 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 21:43:25 +00:00
Bradley C. Kuszmaul
2cbb1dbad0 On sync, if there is a parent, put the rollback info into the parent. Addresses #27.
git-svn-id: file:///svn/tokudb@2200 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 20:03:53 +00:00
Bradley C. Kuszmaul
d9f3060f83 Rework the way transactions ids are used in the log (xid's on messages are used when inserting something into a leaf.) Addresses #27.
git-svn-id: file:///svn/tokudb@2199 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 19:54:00 +00:00
Rich Prohaska
90f58ae1ae oops, restore the db.h 4.4
git-svn-id: file:///svn/tokudb@2197 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 19:11:33 +00:00
Rich Prohaska
84be2fa9c4 port from branch 0.4.2 to main. closes #362
git-svn-id: file:///svn/tokudb@2196 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 19:10:34 +00:00
Yoni Fogel
31cfeaf166 Addresses #350
Effectively eliminated 'non cursor' gets.
Internally (in brt) all gets were cursor gets already.
To save future locking code, and reduce complexity of ydb,
all DB->get calls use cursor gets as subfunctions.

git-svn-id: file:///svn/tokudb@2195 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 19:06:39 +00:00
Rich Prohaska
a0f0e6d203 avoid performance collapse using db-benchmark-test. closes #340
git-svn-id: file:///svn/tokudb@2194 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 18:44:50 +00:00
Yoni Fogel
a53ca2c75e Addresses #350
Only uses lock tree if both txns and locking system are enabled.
If TXN only is enabled, it implies only one txn at a time: no lock tree needed.
If LOCK only is enabled, it implies no txns, therefore only ephemeral locks needed (lock tree not needed)
If neither are enabled, clearly lock tree is not needed.

git-svn-id: file:///svn/tokudb@2193 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 18:40:36 +00:00
Yoni Fogel
0f39ff8a04 Addresses #350
Fixed some bugs in test_db_txn_locks
to port it over to BDB.

git-svn-id: file:///svn/tokudb@2192 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 18:28:43 +00:00
Yoni Fogel
e8a6e94d10 Addresses #350
Bugfix with releasing locks/unlocking a transaction.

DBC->c_get (DB_SET)
and DB->put (DB_YESOVERWRITE) now perform locking
Secondary dbs not included (behavior unknown).

Several tests added for c_get (DB_SET) and DB->put(DB_YESOVERWRITE).

Lock tree only created if INIT_TXN is enabled during env creation.


git-svn-id: file:///svn/tokudb@2191 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 18:00:26 +00:00
Yoni Fogel
4b9a134152 Port to OSX for some tests.
git-svn-id: file:///svn/tokudb@2187 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 15:16:33 +00:00
Yoni Fogel
7ba48c085f standardized naming of a test.
git-svn-id: file:///svn/tokudb@2186 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 15:01:17 +00:00
Yoni Fogel
113b1e094e Modified test-weakxaction.c to work with tokudb.
Test does not yet pass due to locking not fully implemented.

git-svn-id: file:///svn/tokudb@2171 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 05:24:29 +00:00
Bradley C. Kuszmaul
09a3da9a49 Make all.recover work again. Addresses #27.
git-svn-id: file:///svn/tokudb@2168 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 04:34:12 +00:00
Bradley C. Kuszmaul
4abb5ba31d Use toku_assert instead of assert. Addresses #354.
git-svn-id: file:///svn/tokudb@2167 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 03:17:38 +00:00
Rich Prohaska
520eec42ce test a method to increase coverage of utilities using a makefile to check exit codes
git-svn-id: file:///svn/tokudb@2157 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-07 19:06:12 +00:00
Rich Prohaska
fab328719f fix the build. addresses #277
git-svn-id: file:///svn/tokudb@2156 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-07 17:17:43 +00:00
Rich Prohaska
7d28f43da1 put toku_assert.o into libdb.so. addresses #354
git-svn-id: file:///svn/tokudb@2155 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-07 17:12:36 +00:00
Rich Prohaska
c5c3a7a172 improve cxx coverage addresses #277
git-svn-id: file:///svn/tokudb@2154 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-07 16:45:58 +00:00