Commit graph

86 commits

Author SHA1 Message Date
Bradley C. Kuszmaul
ecd0b0a971 Start adding the lists. Addresses #749.
git-svn-id: file:///svn/tokudb@3647 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-25 14:22:05 +00:00
Rich Prohaska
cc0fc35141 bradley fixed the child transaction commit with a rollback log in an external file. closes #730
git-svn-id: file:///svn/tokudb@3566 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-22 17:09:24 +00:00
Rich Prohaska
ddd8dff149 32 bit port
git-svn-id: file:///svn/tokudb@3532 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-21 12:09:12 +00:00
Bradley C. Kuszmaul
8813e3eb3a Store the rollbacks on disk. Fixes #711. Addresses #698 (maybe fixes it).
git-svn-id: file:///svn/tokudb@3528 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-21 04:22:45 +00:00
Bradley C. Kuszmaul
8511ea7372 Log db close so that recovery will work right if the same db is opened and closed repeatedly.
Also the file numbers can thus be reused.
Don't pass the BRT into the flush commands, since the BRT may no longer be present.
Put a counter in to see how many rollback records are present.  (Addresses #698.)
Increment the file version to 4.
Fixes #545, #703.

Note: All the tests pass except
 * Many cxx tests are getting valgrind errors.  (Addresses #716.  Possibly causes #716.)
 * {{{test_log9.recover}}} fails with "Binary files ... differ".  These will presumably be fixed by #711 or #714.  (Addresses #711, #714.)
 * {{{test_log10.recover}}} fails.   There are two failures:
  1. A valgrind problem (see #718.)  (Addresses #718.  Possibly causes #718.)
  1. The "Binary files ... differ" issue.


git-svn-id: file:///svn/tokudb@3486 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-17 03:11:55 +00:00
Bradley C. Kuszmaul
6298988642 Merge the tokudb.558 branch back to to the main branch with:
{{{
svn merge -r3272:3320 https://svn.tokutek.com/tokudb/tokudb.558
}}}
No conflicts.


git-svn-id: file:///svn/tokudb@3322 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-07 01:30:25 +00:00
Bradley C. Kuszmaul
83d416fa09 Merge the 558 branch back to the main with
{{{
svn merge -r3061:3225 https://svn.tokutek.com/tokudb/tokudb.558
}}}

Fixes #630.
Addresses #558.


git-svn-id: file:///svn/tokudb@3226 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-02 23:40:36 +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
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
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
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
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
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
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
7ebf6bf352 Logging improvements. Mostly fixes #27. Addresses #455, #27.
git-svn-id: file:///svn/tokudb@2471 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-29 20:47:11 +00:00
Bradley C. Kuszmaul
2eaeb874ed Separate the code for generating rollbacks and recover log entries. Addresses #27.
git-svn-id: file:///svn/tokudb@2420 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-26 15:51:15 +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
f29f26f2fd close #429
git-svn-id: file:///svn/tokudb@2368 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-21 14:32:58 +00:00
Rich Prohaska
bca10bc03a fix the test_db_txn_lock test. close #422
git-svn-id: file:///svn/tokudb@2343 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-19 12:46:49 +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
Bradley C. Kuszmaul
2cbb1dbad0 On sync, if there is a parent, put the rollback info into the parent. Addresses #27.
git-svn-id: file:///svn/tokudb@2200 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 20:03:53 +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
393dc9799e fix the build. ydb does not belong in newbrt.
git-svn-id: file:///svn/tokudb@2141 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-07 01:26:35 +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
Bradley C. Kuszmaul
1ee574216a start making db-benchmark-test recoverable. Addresses #27.
git-svn-id: file:///svn/tokudb@1893 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-25 21:50:07 +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
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
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
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
Bradley C. Kuszmaul
2d734fa8b1 Reorganize how rollback and recovery are organized into files. Fixes #253.
git-svn-id: file:///svn/tokudb@1589 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-11 03:09:14 +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
Bradley C. Kuszmaul
3439a6a2b8 Quiet down some of the newbrt tests. Addresses #13.
git-svn-id: file:///svn/tokudb@1330 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-22 20:56:20 +00:00
Bradley C. Kuszmaul
161e70ed01 Get rid of various memory leaks in the cxx (and test cxx exceptions) Addresses #215.
git-svn-id: file:///svn/tokudb@1327 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-22 18:40:22 +00:00
Bradley C. Kuszmaul
8c37306c4e pma move logging works better
git-svn-id: file:///svn/tokudb@918 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-04 16:16:30 +00:00
Bradley C. Kuszmaul
4fd00d7311 Log some pma movements. Addresses #27.
git-svn-id: file:///svn/tokudb@911 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-04 10:02:59 +00:00
Bradley C. Kuszmaul
df410defa7 Rename the last bunch of symbols to toku_symbols. Closes #8.
git-svn-id: file:///svn/tokudb@829 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 18:14:40 +00:00
Bradley C. Kuszmaul
1a155723d6 Add copyrights using #ident on the top of newbrt sources. Addresses #54.
git-svn-id: file:///svn/tokudb@817 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 14:18:54 +00:00
Bradley C. Kuszmaul
e4dcc3e9f8 A bunch of symbols that don't start with toku_ are made static or start with toku_. Addresses #8.
git-svn-id: file:///svn/tokudb@801 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-28 19:09:24 +00:00
Bradley C. Kuszmaul
a9bae208c4 src/tests/test_log3.recover now works (can recover after inserting one thing into a BRT. Addresses #27. Closes #43.
git-svn-id: file:///svn/tokudb@767 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-27 10:48:31 +00:00
Bradley C. Kuszmaul
9da9621873 Stop passing DB* everywhere. Instead store it in the BRT and PMA structs. Fixes #39.
git-svn-id: file:///svn/tokudb@761 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-26 21:51:36 +00:00
Bradley C. Kuszmaul
7bb03b5161 Still not right. Addresses #27
git-svn-id: file:///svn/tokudb@760 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-26 20:09:53 +00:00