Commit graph

286 commits

Author SHA1 Message Date
Bradley C. Kuszmaul
6d19bad142 Fixes many problems in {{{test_log10}}}. There's a memory leak and the recovered files still differ, however. Addresses #548.
git-svn-id: file:///svn/tokudb@2913 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-18 10:19:41 +00:00
Bradley C. Kuszmaul
522627d9ba Log deq, but still not quite passing the test. Addresses #548.
git-svn-id: file:///svn/tokudb@2898 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-17 18:56:12 +00:00
Bradley C. Kuszmaul
60b6abe1c7 {{{test_log8}}} recovers now. Fixes #544.
git-svn-id: file:///svn/tokudb@2880 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-17 02:40:59 +00:00
Bradley C. Kuszmaul
771125a0cd Finish making the valgrind error go away in test_logmax. Fixes #542.
git-svn-id: file:///svn/tokudb@2865 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-16 14:01:20 +00:00
Bradley C. Kuszmaul
99b75cabcd Deal with the multithreaded cursor DBT memory allocaiton problem. Addresses #538. (I'm going to write a few more tests before calling it fixed.)
git-svn-id: file:///svn/tokudb@2854 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-15 19:06:39 +00:00
Bradley C. Kuszmaul
0f29f9abe7 Group commit working in tokulogger. Need to release some locks in ydb. Addresses #484.
git-svn-id: file:///svn/tokudb@2763 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-12 17:55:11 +00:00
Bradley C. Kuszmaul
e037aa5cae Get DUPSORT dbs with logging to work without assertion failures. Recovery stlll is broken, however. Addresses #482. Fixes #442.
git-svn-id: file:///svn/tokudb@2602 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-07 02:06:15 +00:00
Bradley C. Kuszmaul
241c5392df Break up brt-test some more. Addresses #475. Also make the fanout flexible. Fixes #126.
git-svn-id: file:///svn/tokudb@2593 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-06 21:46:57 +00:00
Bradley C. Kuszmaul
5c52e7c64a Separate some of the test helpers from brt.c to brt-test-helpers.c. Addresses #472.
git-svn-id: file:///svn/tokudb@2556 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-05 18:34:32 +00:00
Bradley C. Kuszmaul
dd4a6feabe Improvements to rollback. Addresses #27.
git-svn-id: file:///svn/tokudb@2435 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-27 11:05:19 +00:00
Bradley C. Kuszmaul
cb204011d6 Improvements to rollback. Addresses #27.
git-svn-id: file:///svn/tokudb@2434 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-27 09:05:58 +00:00
Bradley C. Kuszmaul
b0e3bf13ba halfway broken rollback for delete. Addresses #27.
git-svn-id: file:///svn/tokudb@2431 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-27 07:14:03 +00:00
Bradley C. Kuszmaul
6105ff5838 Rollback during abort. Fixes #448.
git-svn-id: file:///svn/tokudb@2423 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-26 17:47:40 +00:00
Bradley C. Kuszmaul
712fcc5da1 Many things:
Make txn->abort work without bombing out for {{{test_txn_abort5}}} one case. Fixes #431.
 Start writing {{{test_txn_abort6}}}.   Addresses #443.
 Try to write a test for #399 and #400, but haven't managed to reproduce the problem.  Addresses #399, #400.
 Write a test for #332.  Addresses #332.


git-svn-id: file:///svn/tokudb@2406 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-25 22:46:48 +00:00
Rich Prohaska
4565645290 turn assert into an error return. close #407
git-svn-id: file:///svn/tokudb@2307 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-15 19:44:48 +00:00
Bradley C. Kuszmaul
a1dfeebb13 Rollback is working a little better. Addresses #27.
git-svn-id: file:///svn/tokudb@2294 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-14 19:23:25 +00:00
Rich Prohaska
c88948e8ca fix for crash at netapp. addresses #399
git-svn-id: file:///svn/tokudb@2285 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-14 00:02:59 +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
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
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
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
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
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
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
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
Bradley C. Kuszmaul
e76cdc2b0a Delete command must be duplicated. Fixes #201.
git-svn-id: file:///svn/tokudb@2132 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-06 19:27:25 +00:00
Rich Prohaska
d778463602 set -O2. fix 64bit build
git-svn-id: file:///svn/tokudb@2107 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-06 01:55:16 +00:00
Bradley C. Kuszmaul
eeaef7284a Add XID (Addresses #242), and also fix the problem where deletes were sneaking around inserts (Fixes #332.)
git-svn-id: file:///svn/tokudb@2098 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-05 18:25:23 +00:00
Bradley C. Kuszmaul
016a5b8fea Change BRT_CMD to be a pointer instead (struct brt_cmd *) instead of a struct (struct brt_cmd). Addresses #242.
git-svn-id: file:///svn/tokudb@2072 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-04 15:04:22 +00:00
Rich Prohaska
d6249b2679 implement DB_CURRENT_BINDING, an operation that returns the current cursor kv binding even if deleted. closes #274
git-svn-id: file:///svn/tokudb@2063 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-03 18:26:01 +00:00
Bradley C. Kuszmaul
885e0bbb2e Put all the child info into one struct. Addresses #126.
git-svn-id: file:///svn/tokudb@2002 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-31 22:05:43 +00:00
Rich Prohaska
9ab36d5f25 get brt-test working or fix the nonleaf_split fifo_init bug
git-svn-id: file:///svn/tokudb@1989 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-31 14:58:14 +00:00
Bradley C. Kuszmaul
3266e6d20c db-benchmark-test now recovers OK. Addresses #27.
git-svn-id: file:///svn/tokudb@1988 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-31 14:52:52 +00:00
Rich Prohaska
40bf7ef8b2 assert test for brt-test crash
git-svn-id: file:///svn/tokudb@1985 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-31 13:40:47 +00:00
Bradley C. Kuszmaul
1dc9085fab Improve logging on node splits. Addresses #27.
git-svn-id: file:///svn/tokudb@1970 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-30 21:23:01 +00:00
Bradley C. Kuszmaul
fa5638a0f8 Improving logging for db-benchmark-test. Addresses #27.
git-svn-id: file:///svn/tokudb@1951 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-29 21:43:08 +00:00
Rich Prohaska
a5a62d6696 txn parameter added to some brt functions. closes #316
git-svn-id: file:///svn/tokudb@1941 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-28 20:49:10 +00:00
Rich Prohaska
cbc159bf72 add the txn parameter to the brt_search function. addresses #316
git-svn-id: file:///svn/tokudb@1940 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-28 18:39:57 +00:00
Rich Prohaska
f1f9661f2a remove cursor count from the brt node. closes #310
git-svn-id: file:///svn/tokudb@1914 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-26 23:11:38 +00:00
Rich Prohaska
d2d80add96 first cut or new cursors merge to trunk. addresses #250
git-svn-id: file:///svn/tokudb@1881 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-25 15:43:37 +00:00
Bradley C. Kuszmaul
9fe0391206 Add copyright 2008. Fixes #283.
git-svn-id: file:///svn/tokudb@1844 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-24 15:10:32 +00:00
Bradley C. Kuszmaul
970234a759 Fix db-benchmark-test. Fixes #300.
git-svn-id: file:///svn/tokudb@1841 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-24 13:51:34 +00:00
Bradley C. Kuszmaul
271137c959 test_log5 recovers correctly now. Addresses #27.
git-svn-id: file:///svn/tokudb@1826 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-23 19:44:13 +00:00
Bradley C. Kuszmaul
28428074a1 Log the pivots correctly. Addresses #27.
git-svn-id: file:///svn/tokudb@1822 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-23 18:29:06 +00:00
Bradley C. Kuszmaul
407c0ebebf Log the fingerprints correctly. Addresses #27.
git-svn-id: file:///svn/tokudb@1820 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-23 18:06:23 +00:00
Bradley C. Kuszmaul
015bc27f2f Don't be wasteful when splitting brt leaves. Fixes #294.
This makes big difference for space (46% smaller) and a small time difference (5% faster), as measured by benchmark-test.

Before:
{{{
$ ./benchmark-test
nodesize=1048576
keysize=8
valsize=8
Serial and random insertions of 1048576 per batch
serial  8.753964s   119783/s    random  5.640094s   185915/s    cumulative 14.394118s   145695/s
serial  9.381472s   111771/s    random  7.325284s   143145/s    cumulative 31.100944s   134861/s
serial  9.859233s   106355/s    random  6.734307s   155707/s    cumulative 47.694553s   131911/s
serial 11.069200s    94729/s    random  6.885863s   152280/s    cumulative 65.649695s   127778/s
Shutdown  4.636875s
Total time 70.286611s for 8388608 insertions =   119349/s
$ ls -l sinsert.brt
-rwxrwxr-x 1 bradley bradley 730344924 Jan 22 11:47 sinsert.brt
}}}

After:
{{{
$ ./benchmark-test
nodesize=1048576
keysize=8
valsize=8
Serial and random insertions of 1048576 per batch
serial  8.521855s   123046/s    random  5.730942s   182967/s    cumulative 14.252861s   147139/s
serial  9.106047s   115152/s    random  7.001765s   149759/s    cumulative 30.360740s   138149/s
serial  9.543696s   109871/s    random  6.651000s   157657/s    cumulative 46.555503s   135139/s
serial 10.627035s    98671/s    random  6.555884s   159944/s    cumulative 63.738491s   131610/s
Shutdown  2.818513s
Total time 66.557042s for 8388608 insertions =   126036/s
$ ls -l sinsert.brt
-rwxrwxr-x 1 bradley bradley 396894480 Jan 22 11:45 sinsert.brt
}}}



git-svn-id: file:///svn/tokudb@1798 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-22 16:27:54 +00:00
Bradley C. Kuszmaul
8e8588a9e4 Log block allocation. Addresses #27.
git-svn-id: file:///svn/tokudb@1737 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-18 21:28:27 +00:00
Bradley C. Kuszmaul
278653d431 rollback for 5 now runs (but the files are wrong). Started working on a brtdump that will help debug this stuff. Right away I see important file differences after recover (the unused memory and unnamed root are wrong). Addresses #27.
git-svn-id: file:///svn/tokudb@1731 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-18 16:01:25 +00:00