Commit graph

2172 commits

Author SHA1 Message Date
Yoni Fogel
0430769843 Addresses #288
Added the following tests:

 * Single point overlaps
  * Tree: {|0-1|}, query of |1-2| returns |0-1|
  * Tree: {|1-2|}, query of |0-1| returns |1-2|
  * Tree: {|1-2|}, insert of of |0-1| success == allow_overlaps
  * Tree: {|0-1|}, insert of of |1-2| success == allow_overlaps
 * Complete overlaps
  * Tree: {|0-3|}, query of |1-2| returns |0-3|
  * Tree: {|1-2|}, query of |0-3| returns |1-2|
  * Tree: {|1-2|}, insert of of |0-3| success == allow_overlaps
  * Tree: {|0-3|}, insert of of |1-2| success == allow_overlaps
 * Exact overlaps
  * Tree: {|0-3|}, query of |0-3| returns |0-3|
  * Tree: {|0-3|}, insert of of |0-3| success == allow_overlaps

Also freed buf and NULLed the pointer to help find memory leaks.

git-svn-id: file:///svn/tokudb@1745 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-19 00:14:16 +00:00
Yoni Fogel
0244928d0c Addresses #288
More range tree tests.

git-svn-id: file:///svn/tokudb@1744 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-18 23:42:27 +00:00
Yoni Fogel
8042a1d132 Addresses #288
Additional tests for range trees.

git-svn-id: file:///svn/tokudb@1743 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-18 22:27:23 +00:00
Yoni Fogel
2b94f88627 Addresses #287 Moved documentation from toku_rt_delete
back to toku_rt_insert.
The error code was for insert, not delete.

git-svn-id: file:///svn/tokudb@1742 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-18 22:15:53 +00:00
Yoni Fogel
e360035b3a Addresses #287 Added missing error code to toku_rt_insert
git-svn-id: file:///svn/tokudb@1741 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-18 22:14:32 +00:00
Yoni Fogel
2eff86b295 Addresses #288
First set of test cases for range trees.
linear.c is stub implementation so we can compile and write tests before
we actually implement the range tree.

The makefiles were modified just enough to get this to work, and have to
be cleaned up a lot.

git-svn-id: file:///svn/tokudb@1740 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-18 22:10:19 +00:00
Yoni Fogel
d2ef744f21 Renamed header
git-svn-id: file:///svn/tokudb@1739 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-18 22:06:45 +00:00
Yoni Fogel
d2b7298712 Closes #287
Added header file with documentation for range trees

git-svn-id: file:///svn/tokudb@1738 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-18 22:06:17 +00:00
Rich Prohaska
e202a52f4a test more c_del return values. addresses #250
git-svn-id: file:///svn/tokudb@1736 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-18 18:45:28 +00:00
Yoni Fogel
2153cb9832 git-svn-id: file:///svn/tokudb@1733 c7de825b-a66e-492c-adef-691d508d4ae1 2008-01-18 16:38:51 +00:00
Rich Prohaska
08dca9d5b5 test multiple writers. addresses #7
git-svn-id: file:///svn/tokudb@1719 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-17 20:42:44 +00:00
Bradley C. Kuszmaul
fa33cff297 set child properly. Addresses #27.
git-svn-id: file:///svn/tokudb@1718 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-17 19:36:44 +00:00
Bradley C. Kuszmaul
6bb86b7210 Log node splits better. Addresses #27.
git-svn-id: file:///svn/tokudb@1714 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-17 15:41:42 +00:00
Bradley C. Kuszmaul
a5e4c9f921 Gratuitous cleanup of test-weakxaction.c. Addresses #281.
git-svn-id: file:///svn/tokudb@1713 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-17 14:05:06 +00:00
Bradley C. Kuszmaul
d9fbbffee7 Find out about weak transactions: They do conflict. Fixes #281.
git-svn-id: file:///svn/tokudb@1707 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-17 09:11:37 +00:00
Yoni Fogel
f8bab84f2c Ported test_db_thread_insert to OSX
git-svn-id: file:///svn/tokudb@1699 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-16 21:49:42 +00:00
Yoni Fogel
fdb91a8351 Changed object-calls to direct function calls to avoid
incorrect locking.
Addresses #7

git-svn-id: file:///svn/tokudb@1698 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-16 21:48:57 +00:00
Rich Prohaska
ad246368df test the big ydb lock with multiple put threads. closes #7
git-svn-id: file:///svn/tokudb@1697 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-16 21:13:14 +00:00
Yoni Fogel
eb7701b0f7 Port to OSX.
#if defined(__APPLE__)
static pthread_mutex_t ydb_big_lock = PTHREAD_MUTEX_INITIALIZER;
#else
static pthread_mutex_t ydb_big_lock = PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP;
#endif

Unsure if this does the same thing for apple.
Addresses #280

git-svn-id: file:///svn/tokudb@1696 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-16 20:14:01 +00:00
Rich Prohaska
d987eff7df increase test coverage. addresses #277
git-svn-id: file:///svn/tokudb@1695 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-16 18:59:36 +00:00
Rich Prohaska
96f91dfefd add db->get_flags tests. addresses #277
git-svn-id: file:///svn/tokudb@1694 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-16 18:20:15 +00:00
Rich Prohaska
95416f09a8 add GCOV_FLAGS var to Makefiles. addresses #277
git-svn-id: file:///svn/tokudb@1693 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-16 17:41:47 +00:00
Bradley C. Kuszmaul
89985a3175 Improve logging. Addresses #27.
git-svn-id: file:///svn/tokudb@1690 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-16 13:50:23 +00:00
Yoni Fogel
55d1be5b65 OSX does not appear to have fmemopen. Making note
git-svn-id: file:///svn/tokudb@1681 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-15 23:45:00 +00:00
Bradley C. Kuszmaul
9566acc430 Log node splits a little better. Addresses #27
git-svn-id: file:///svn/tokudb@1679 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-15 21:50:45 +00:00
Rich Prohaska
0a4c6f53ad free -> toku_free. addresses #275
git-svn-id: file:///svn/tokudb@1678 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-15 21:04:46 +00:00
Bradley C. Kuszmaul
6e5d5485ab Get rid of calls to free. Should use toku_free. Fixes #275.
git-svn-id: file:///svn/tokudb@1677 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-15 20:15:06 +00:00
Rich Prohaska
86f9b2268f fix test_db_thread_secondary. addresses #167
git-svn-id: file:///svn/tokudb@1675 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-15 18:37:10 +00:00
Rich Prohaska
5e13febe7c multithread check DBT.flags
git-svn-id: file:///svn/tokudb@1674 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-15 18:10:57 +00:00
Rich Prohaska
a596956318 need -lpthread to get mutex locks to work right (not recursive). addresses #167
git-svn-id: file:///svn/tokudb@1673 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-15 17:14:23 +00:00
Rich Prohaska
ca7d898e76 test multithread db->pget. addresses #167
git-svn-id: file:///svn/tokudb@1672 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-15 15:50:15 +00:00
Rich Prohaska
1de897e0f9 check that multithread db->get uses MALLOC+REALLOC+USERMEM. closes #167
git-svn-id: file:///svn/tokudb@1671 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-15 14:59:36 +00:00
Rich Prohaska
94be297db1 add big ydb lock. addresses #7
git-svn-id: file:///svn/tokudb@1670 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-15 13:04:10 +00:00
Yoni Fogel
4629d955af Updated description of lock tree
git-svn-id: file:///svn/tokudb@1652 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-14 20:23:29 +00:00
Bradley C. Kuszmaul
1b6c9ebca8 Undo pma movements. Addresses #253.
git-svn-id: file:///svn/tokudb@1630 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-13 05:52:43 +00:00
Bradley C. Kuszmaul
6ec256f68b Extend the scope of the abort1 test
git-svn-id: file:///svn/tokudb@1629 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-13 03:53:10 +00:00
Bradley C. Kuszmaul
982644cc0e test_abort1.tdb runs doesn't leak memory. Addresses #253.
git-svn-id: file:///svn/tokudb@1625 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-12 13:25:36 +00:00
Bradley C. Kuszmaul
d06d558776 Get abort to run a little bit. Addresses #253.
git-svn-id: file:///svn/tokudb@1608 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-11 22:24:43 +00:00
Rich Prohaska
4b52108a21 making cursors sticky is difficult. need the stateless cursor implementation. addresses #259
git-svn-id: file:///svn/tokudb@1604 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-11 16:24:43 +00:00
Rich Prohaska
3c630d8476 test next/prev_dup/nodup. closes #259
git-svn-id: file:///svn/tokudb@1602 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-11 15:21:53 +00:00
Rich Prohaska
a9e1d29612 add Db::fd closes #231
git-svn-id: file:///svn/tokudb@1601 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-11 14:38:49 +00:00
Bradley C. Kuszmaul
4de66511b4 Write an abort test. Addresses #253.
git-svn-id: file:///svn/tokudb@1590 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-11 03:44:21 +00:00
Rich Prohaska
16bcec861e implement and test cursor->count. closes #258
git-svn-id: file:///svn/tokudb@1587 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-10 19:42:08 +00:00
Rich Prohaska
4374eb974f add cursor next_dup, next_nodup, prev_dup, and prev_nodup. addresses #259
git-svn-id: file:///svn/tokudb@1585 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-10 16:10:06 +00:00
Bradley C. Kuszmaul
37762ee7ff Stubs exist for all the rollback operations. Addresses #253.
git-svn-id: file:///svn/tokudb@1584 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-10 13:41:58 +00:00
Bradley C. Kuszmaul
06dfd4f0a4 Work on transactions rollback. Also Fixes #254. Addresess #253.
git-svn-id: file:///svn/tokudb@1572 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-09 19:58:46 +00:00
Bradley C. Kuszmaul
b938b597c4 If fsync fails on a log commit, panic the DB. (We don't know if the transaction committed or failed without doing recovery.)
Start work on saving the undo records in main memory for rollback.
Addresses #27 (recovery) 
Addresses #253 (rollback)


git-svn-id: file:///svn/tokudb@1561 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-08 22:18:42 +00:00
Rich Prohaska
54bf735ad2 fix cxx/tests build problems. addresses #246
git-svn-id: file:///svn/tokudb@1556 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-08 17:51:24 +00:00
Rich Prohaska
9bf84aa53b make do_error_all_cases static
git-svn-id: file:///svn/tokudb@1550 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-08 12:27:49 +00:00
Bradley C. Kuszmaul
3d64977e23 Whoops the errors weren't quite right. Addresses #246.
git-svn-id: file:///svn/tokudb@1540 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-07 19:58:34 +00:00