Commit graph

1555 commits

Author SHA1 Message Date
Bradley C. Kuszmaul
943946edd4 Another test case for transaction abort. Addresses #11.
git-svn-id: file:///svn/tokudb@3038 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-24 13:55:52 +00:00
Bradley C. Kuszmaul
b8942e64d9 Fix {{{test_log8.bdb}}}, {{{test_log9.bdb}}}, {{{test_log10.bdb}}}. Fixes #584.
git-svn-id: file:///svn/tokudb@3036 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-24 13:45:29 +00:00
Bradley C. Kuszmaul
efa4dfb879 Don't use {{{TOKUDB_OUT_OF_LOCKS}}} outside of the {{{#ifdef TOKUDB}}}. Fixes #573.
git-svn-id: file:///svn/tokudb@3010 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-22 00:08:15 +00:00
Bradley C. Kuszmaul
e509ed0891 Fix valgrind problem in {{{test_abort2.tdb}}}. Addresses #556.
git-svn-id: file:///svn/tokudb@3008 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-21 22:48:38 +00:00
Bradley C. Kuszmaul
8d8060519f Clean up test_archive2. Addresses #75, #392.
git-svn-id: file:///svn/tokudb@3007 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-21 21:19:07 +00:00
Bradley C. Kuszmaul
6a838c09d9 Finish {{{DB_ENV->log_archive}}}, honoring the oldest live txn. Addresses #83. Fixes #75, #392.
git-svn-id: file:///svn/tokudb@3006 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-21 21:13:58 +00:00
Bradley C. Kuszmaul
98a9cfee7d Finish {{{DB_ENV->log_archive}}}, honoring the oldest live txn. Addresses #83. Fixes #75, #392.
git-svn-id: file:///svn/tokudb@3005 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-21 21:13:50 +00:00
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
Yoni Fogel
75229f904e Updated test to use new
error code for running out of locks

git-svn-id: file:///svn/tokudb@2994 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-21 17:42:20 +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
Yoni Fogel
0880a59279 Addresses #557
Addresses #554
When lock trees close before transactions do (that touch them), we can crash
or have memory corruption.

Now, when lock trees close, they alert all transactions that they have disappeared.

git-svn-id: file:///svn/tokudb@2974 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-20 15:14:46 +00:00
Rich Prohaska
ae797a69f5 simple test case for commit after db close. adresses #554
git-svn-id: file:///svn/tokudb@2973 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-20 14:17:18 +00:00
Rich Prohaska
dfc61222d0 add man/texi to the build list. closes #563
git-svn-id: file:///svn/tokudb@2964 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 23:56:35 +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
Yoni Fogel
6153661e2c addresses #554
while investigating 554, came across this issue of not checking for proper value
This MAY fix 554, but we doubt it.

git-svn-id: file:///svn/tokudb@2953 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 18:01:40 +00:00
Yoni Fogel
c3024db098 Closes #553
Lock escalation causes all lock trees (all dbs in an environment)
to escalate their locks.
This is useful, since we can have one lock tree/db holding 99% of the locks
and then we run out of locks on a different lock tree.

git-svn-id: file:///svn/tokudb@2952 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 17:44:10 +00:00
Yoni Fogel
0608c924dd Addresses #553
Fixed memory leak during closing of lock tree managers.

git-svn-id: file:///svn/tokudb@2951 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 17:27:06 +00:00
Yoni Fogel
9e20ec534d Addresses #553
Fixes memory leak (just in test) of locktree managers.

git-svn-id: file:///svn/tokudb@2950 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 17:26:35 +00:00
Yoni Fogel
0f3d1b0f07 Addresses #553
Lock tree manager keeps track of all the lock trees so we can loop through them.

git-svn-id: file:///svn/tokudb@2949 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 17:23:08 +00:00
Yoni Fogel
58515a507b Closes 551
'Lock tree manager' object created to hold data shared by all lock trees
i.e. Current number of locks (per env) and max locks (per env)
Uses functions to change max_locks.
Added tests for lock tree manager.


git-svn-id: file:///svn/tokudb@2948 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 17:07:22 +00:00
Bradley C. Kuszmaul
8a520dd06e Fix {{{db.h_4_6}}}. Fixes #560.
git-svn-id: file:///svn/tokudb@2946 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 14:59:40 +00:00
Bradley C. Kuszmaul
e313932be0 Fix #559.
git-svn-id: file:///svn/tokudb@2945 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 14:53:56 +00:00
Zardosht Kasheff
e2ecb68737 added more useful error code for when we run out of locks
git-svn-id: file:///svn/tokudb@2944 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 14:46:46 +00:00
Yoni Fogel
09894eb3f9 Added tokudb specific error codes
git-svn-id: file:///svn/tokudb@2943 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 14:39:27 +00:00
Zardosht Kasheff
6a3cabd62c add TOKUDB error
git-svn-id: file:///svn/tokudb@2942 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 14:33:39 +00:00
Bradley C. Kuszmaul
c8d01cded2 Create test for #556. Addresses #556.
git-svn-id: file:///svn/tokudb@2941 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 14:16:41 +00:00
Zardosht Kasheff
fdd36956fd port makefile to OSX
git-svn-id: file:///svn/tokudb@2940 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-19 14:13:51 +00:00
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