Commit graph

1324 commits

Author SHA1 Message Date
Bradley C. Kuszmaul
3e2fff79d6 Create test_log6a_abort.c. Returns {{{ENOMEM}}} from {{{r = toku_lt_acquire_write_lock(db->i->lt, toku_txn_ancestor(txn...)...)}}} in ydb.c:2126. Addresss #536. Maybe also Addresses #501. (?).
git-svn-id: file:///svn/tokudb@2932 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 00:00:59 +00:00
Yoni Fogel
564569d0bc addresses #553
create iterator for lth

git-svn-id: file:///svn/tokudb@2930 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-18 22:15:01 +00:00
Yoni Fogel
ef195b7b07 Rolled back some debugging code.
git-svn-id: file:///svn/tokudb@2929 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-18 21:56:26 +00:00
Yoni Fogel
593867fc65 add debugging help
git-svn-id: file:///svn/tokudb@2925 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-18 19:22:07 +00:00
Yoni Fogel
215366bd1d break up if clause into extra lines
git-svn-id: file:///svn/tokudb@2923 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-18 18:32:31 +00:00
Yoni Fogel
7cb30a607e closes #523
always have lock escalation to be turned on

git-svn-id: file:///svn/tokudb@2919 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-18 15:07:32 +00:00
Bradley C. Kuszmaul
87d1153377 Rollback tests. Addresses #536.
git-svn-id: file:///svn/tokudb@2918 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-18 14:05:34 +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
7a4157a440 Fix memory leak in {{{test_error.c}}}. Fixes #550.
git-svn-id: file:///svn/tokudb@2912 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-18 09:27:17 +00:00
Yoni Fogel
fa5f276d1b Addresses #523
Fixes a bug with escalation caught by valgrind.


git-svn-id: file:///svn/tokudb@2904 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-17 21:26:45 +00:00
Yoni Fogel
33715e6478 closes #549
git-svn-id: file:///svn/tokudb@2903 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-17 20:58:32 +00:00
Yoni Fogel
18a7b8dfe0 addresses #523
implemented lock escalation MINUS flagging of messy transactions
implemented tests for lock escalation

git-svn-id: file:///svn/tokudb@2902 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-17 20:39:01 +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
Rich Prohaska
7659730252 test_txn_cursor_last.bdb blocks the main thread. lets not run it
git-svn-id: file:///svn/tokudb@2895 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-17 14:34:00 +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
979ae62544 Create {{{test_log10.c}}}. Addresses #548.
git-svn-id: file:///svn/tokudb@2892 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-17 14:23:22 +00:00
Bradley C. Kuszmaul
afcd389e52 test_thread_insert doesn't leak memory any more. The leak is in {{{pthread_exit()}}}. If you return from the initial function, the leak isn't there. Fixes #303.
git-svn-id: file:///svn/tokudb@2884 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-17 04:12:06 +00:00
Bradley C. Kuszmaul
c6f44bd826 Make {{{test_error.tdb}}} happy. Fixes #445.
git-svn-id: file:///svn/tokudb@2883 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-17 03:30:40 +00:00
Bradley C. Kuszmaul
b2e25b58d3 Cleanup makefile a little.
git-svn-id: file:///svn/tokudb@2882 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-17 02:59:19 +00:00
Bradley C. Kuszmaul
ac690d7851 Add {{{test_log9}}} to tests. It breaks. Addresses #547.
git-svn-id: file:///svn/tokudb@2881 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-17 02:45:35 +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
Rich Prohaska
c24c5f9951 test case for mysql auto increment problem. addresses #541
git-svn-id: file:///svn/tokudb@2877 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-17 00:36:39 +00:00
Yoni Fogel
3bd8d5ec0f Addresses #523
Reordered escalation.
First escalate writes, and only if that succeeds, we escalate the reads.
Now, if we fail during the reads we are still consistent, whereas before
we would need to panic.

git-svn-id: file:///svn/tokudb@2876 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-17 00:21:30 +00:00
Yoni Fogel
84fd413645 Addresses #523
Implemented testing if escalating a range from borderwrite is trivial.

git-svn-id: file:///svn/tokudb@2875 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-17 00:20:13 +00:00
Yoni Fogel
30aad7a9b8 Addresses #523
Started coding lock escalation.
Have several function stubs that need to be implemented.

git-svn-id: file:///svn/tokudb@2874 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-16 23:58:41 +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
cf4f4b2356 More test coverage. This {{{test_log8}}} breaks recovery. Addresses #536, #544.
git-svn-id: file:///svn/tokudb@2871 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-16 21:29:09 +00:00
Bradley C. Kuszmaul
128938e2e7 More recovery test coverage. Addresses #536.
git-svn-id: file:///svn/tokudb@2870 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-16 21:19:27 +00:00
Bradley C. Kuszmaul
3f14fe6e82 More recovery test coverage. Addresses #536.
git-svn-id: file:///svn/tokudb@2869 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-16 21:18:59 +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
be9e60427f Don't complain about {{{db_env_set_func_fsync}}}. Addresses #8, #499.
git-svn-id: file:///svn/tokudb@2866 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-16 14:05:35 +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
80588b7151 One of the valgrind errors is from forgetting to {{{closedir()}}}. Addresses #542.
git-svn-id: file:///svn/tokudb@2864 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-16 12:03:46 +00:00
Bradley C. Kuszmaul
19e6297346 Test the other cursor operations against the multithread DBT cursor problem. Fixes #538.
git-svn-id: file:///svn/tokudb@2855 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-15 19:32:08 +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
1d9ab114a8 BDB and TDB have different behaviour WRT static buffers managed by the DB code. we add an
assert for the BDB behaviour.



git-svn-id: file:///svn/tokudb@2847 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-15 13:18:53 +00:00
Rich Prohaska
d72cf0b56e make test_cursor_2 work on tdb by setting DB_PRIVATE
git-svn-id: file:///svn/tokudb@2846 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-15 13:15:28 +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
Yoni Fogel
4f9b5633d0 addresses #523
create (but not yet implement) functions for lock escalation

git-svn-id: file:///svn/tokudb@2836 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-14 20:37:04 +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
86bd15c721 make {{{test_cursor_2}}} use an environment with {{{DB_THREAD}}} set, since that the MySQL usage. Addresses #538.
git-svn-id: file:///svn/tokudb@2828 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-14 18:48:26 +00:00
Zardosht Kasheff
7e678e9c36 addresses #523
write iterator for linear range tree

git-svn-id: file:///svn/tokudb@2826 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-14 17:09:50 +00:00
Yoni Fogel
134ff0fa4a Addresses #523
Uses range iterator (of range trees) to simplify code in lock tree.

This allowed us to deleting 'emergency' version of a function that was not well tested.

git-svn-id: file:///svn/tokudb@2825 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-14 15:05:30 +00:00
Rich Prohaska
bddb4f4e71 test case. address #538
git-svn-id: file:///svn/tokudb@2821 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-14 14:03:26 +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
56eaba9c3d Make test-recover3.bdb run by making xactions smaller. Addresses #537.
git-svn-id: file:///svn/tokudb@2817 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-14 11:18:03 +00:00