Commit graph

471 commits

Author SHA1 Message Date
Bradley C. Kuszmaul
0c1af47865 Add the first two tests for {{{DB_ENV->log_archive}}}. Fix up some memory leaks. Add {{{LSN*}}} to all the {{{toku_log_*}}} functions so that {{{toku_logger_txn_begin}}} can use the LSN as a txnid. Addresses #75, #83, #392.
git-svn-id: file:///svn/tokudb@3004 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-21 21:02:30 +00:00
Bradley C. Kuszmaul
cbcf5bf5e7 {{{DB_ENV->log_archive}}} understands checkpoints, but not live transactions. Addresses #75, #83, #392.
git-svn-id: file:///svn/tokudb@3003 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-21 20:43:39 +00:00
Bradley C. Kuszmaul
70bb010995 make {{{DB_ENV->log_archive}}} return something (but it's not quite right). Clean up the serialization of the brt header. Fix up {{{DB_ENV->txn_checkpoint}}} (but it's not quite right). Addresses #75, #83, #392.
git-svn-id: file:///svn/tokudb@3000 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-21 19:40:32 +00:00
Bradley C. Kuszmaul
2d7c5ba201 Fix MAX_PATHLEN_TO_ROOT bug. Fixes #570.
git-svn-id: file:///svn/tokudb@2991 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-21 12:47:55 +00:00
Bradley C. Kuszmaul
401eb1d0bc test_abort2 works up until a lock tree problem. I think the test and abort mechanisms are right now. I'll close #556 but file a new bug (#569). Fixes #556. Addresses #569.
git-svn-id: file:///svn/tokudb@2982 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-20 22:01:57 +00:00
Bradley C. Kuszmaul
95398c5397 Rollback is better, but still broken. Addresses #556.
git-svn-id: file:///svn/tokudb@2960 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 22:42:46 +00:00
Bradley C. Kuszmaul
538a507a30 Make rollback do the right thing in some cases fo internal nodes. Addresses #556.
git-svn-id: file:///svn/tokudb@2955 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 19:23:45 +00:00
Bradley C. Kuszmaul
7dcf06384a {{{test_log10.recover}}} now works. Fixes #548.
The final fix for this bug involves writing zeros into the unused bytes of the disk when serializing nodes.  
This is important for two reasons:
 1. It makes the files the same the bit-level.  (The problem showed up because a node of size near 1MB was written, and then the node split, causing the node to shrink, and when the node was written again, some left over bits from the previous node were still on disk.  Then the file compare failed after recovery.)
 1. It causes the file system to actually allocate the space for a node, so that when a node grows, it will all be contiguous on disk.

It has the disadvantage of writing more to disk than we did before, possibly reducing performance.  It probably doesn't matter much, however. 


git-svn-id: file:///svn/tokudb@2916 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-18 12:08:56 +00:00
Bradley C. Kuszmaul
fba345a3e9 Call {{{toku_malloc_cleanup}}} in {{{tdb_recover}}}. Fixes #552.
git-svn-id: file:///svn/tokudb@2914 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-18 11:01:44 +00:00
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
f4045b7919 Remove printfs. Addresses #548.
git-svn-id: file:///svn/tokudb@2900 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-17 19:32:28 +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
2fc3ca7863 Get rid of array overflow in recovery. Addresses #548.
git-svn-id: file:///svn/tokudb@2893 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-17 14:24:01 +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
6d4ed37565 Work on getting test_log8 to recover. Addresse #544.
git-svn-id: file:///svn/tokudb@2873 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-16 22:22:26 +00:00
Bradley C. Kuszmaul
814b5638da Fix {{{tdb_recover}}} to use the right directories. Fixes #543.
git-svn-id: file:///svn/tokudb@2868 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-16 20:57:27 +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
d3a49aaa24 Improve printfs in memory.h. Addresses #538.
git-svn-id: file:///svn/tokudb@2853 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-15 18:58:52 +00:00
Rich Prohaska
a9e8183dd6 valgrind found an uninitialized variable
git-svn-id: file:///svn/tokudb@2845 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-15 13:11:49 +00:00
Bradley C. Kuszmaul
4d369d8572 Segrate rollback and recover functions. Write a brt-level test for the cursor static variable problem. Addresses #536, #538.
git-svn-id: file:///svn/tokudb@2829 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-14 19:14:31 +00:00
Bradley C. Kuszmaul
4df01c3141 Make test-recover3.tdb Work. Fixes #537. roll.c coverage is now up to 77.5% (from 52.4%). Addresses #536.
git-svn-id: file:///svn/tokudb@2819 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-14 12:28:49 +00:00
Bradley C. Kuszmaul
3767af1bfe Up roll.c coverage to 52.4% from 46.4%. Addresses #536.
git-svn-id: file:///svn/tokudb@2814 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-14 11:02:28 +00:00
Bradley C. Kuszmaul
f347a1c9e7 Fix {{{toku_logger_fsync}}}. Fixes #529.
git-svn-id: file:///svn/tokudb@2797 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-13 21:29:04 +00:00
Bradley C. Kuszmaul
515d526a50 Make test_log5.recover work again. Fixes #527.
git-svn-id: file:///svn/tokudb@2796 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-13 20:55:08 +00:00
Bradley C. Kuszmaul
68e8036c75 Make recovery work when called from {{{DB_ENV->open}}}. Fixes #483.
git-svn-id: file:///svn/tokudb@2768 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-12 19:40:38 +00:00
Yoni Fogel
2471b8e7fe Removed warnings
git-svn-id: file:///svn/tokudb@2767 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-12 18:37:29 +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
Yoni Fogel
ee2351986d Removed warnings.
git-svn-id: file:///svn/tokudb@2762 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-12 17:48:54 +00:00
Yoni Fogel
7299745f97 Removed warnings.
git-svn-id: file:///svn/tokudb@2761 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-12 17:48:24 +00:00
Bradley C. Kuszmaul
7c4eabe86f Create log-test5.c
git-svn-id: file:///svn/tokudb@2743 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-11 19:55:04 +00:00
Bradley C. Kuszmaul
e672f87aa9 Add log-test4.c. Addresses #484.
git-svn-id: file:///svn/tokudb@2742 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-11 18:58:36 +00:00
Bradley C. Kuszmaul
7469a733d2 Create log-test3.c
git-svn-id: file:///svn/tokudb@2741 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-11 18:55:42 +00:00
Bradley C. Kuszmaul
92b5b72fe8 Update log-test to work better and test some logging as unit tests. Addresses #484.
git-svn-id: file:///svn/tokudb@2740 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-11 18:51:36 +00:00
Bradley C. Kuszmaul
c7461dd3a9 Update log-test to work better and test some logging as unit tests. Addresses #484.
git-svn-id: file:///svn/tokudb@2739 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-11 18:51:26 +00:00
Bradley C. Kuszmaul
30689f39e8 Add log-test to the regression tests
git-svn-id: file:///svn/tokudb@2733 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-11 17:23:14 +00:00
Bradley C. Kuszmaul
7997c793d1 Implement {{{db_env_set_func_fsync}}} and write a test that can discern the use of group commit. Fixes #499, #496.
git-svn-id: file:///svn/tokudb@2655 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-09 02:39:37 +00:00
Bradley C. Kuszmaul
04a61d98d5 set_lg_max is ipmlemented, tested, and documented. Fixes #79.
git-svn-id: file:///svn/tokudb@2645 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-08 13:02:32 +00:00
Bradley C. Kuszmaul
33805e6f99 Generate many logs the way it is supposed to. 100MB files. Fixes #485.
git-svn-id: file:///svn/tokudb@2620 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-07 19:23:43 +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
34c9448871 brt2 work. Addresses #472.
git-svn-id: file:///svn/tokudb@2601 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-06 23:38:26 +00:00
Bradley C. Kuszmaul
520a93a3e6 off-end-of-memory error found by valgrind. Addresses #126
git-svn-id: file:///svn/tokudb@2599 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-06 22:48:07 +00:00
Bradley C. Kuszmaul
fad4cf7bbe Get rid of 'time' in newbrt tests.
git-svn-id: file:///svn/tokudb@2597 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-06 22:01:21 +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
25cb6d4b0b Break out test4 from brt-test. brt-test runs in 13 seconds, brt-test4 in 9 seconds, brt-test-cursor in 4 seconds, so we have halved the critical path. Fixes #475.
git-svn-id: file:///svn/tokudb@2581 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-06 16:35:18 +00:00
Bradley C. Kuszmaul
771c48e963 Split off brt-test-cursor. Parallelizes about 10% of the brt-test. Addresses #475.
git-svn-id: file:///svn/tokudb@2580 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-06 16:28:30 +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
4e04fed3e6 Reduce symbol visibility. Fixes #467.
git-svn-id: file:///svn/tokudb@2541 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-05 11:54:58 +00:00
Bradley C. Kuszmaul
a29e5b60d6 I had broken the compile. Fixed. Addresses #27.
git-svn-id: file:///svn/tokudb@2540 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-05 09:52:35 +00:00
Rich Prohaska
759f3785a8 malloc temps in the deserialize_from function to fit within the mysql thread stack. close #464
git-svn-id: file:///svn/tokudb@2526 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-04 21:31:01 +00:00