Commit graph

58 commits

Author SHA1 Message Date
Bradley C. Kuszmaul
0dfc3aa50d Some fixes for recovery (#1364). Also some temporary fixes for #1277. Addresses #1364, #1277.
Delete the 1364 branch, so I can restart it.
On the 1343 branch, I did:
{{{
svn merge -r 8586:8595 https://svn.tokutek.com/tokudb/toku/tokudb.1032b+1343+1364
}}}


git-svn-id: file:///svn/toku/tokudb.1032b+1343@8596 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:35 -04:00
Yoni Fogel
3663cbb8db Closes #1339
Logger now unlocks all mutexes and destroys the two mutexes it contains.

Protected by a logger-close mutex to prevent anything from happening between the unlock and destroy.

git-svn-id: file:///svn/toku/tokudb.1032b@8397 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:32 -04:00
Rich Prohaska
4f46b25a02 rename to toku_portability.h addresses #1269
git-svn-id: file:///svn/toku/tokudb.1032b@7952 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:29 -04:00
Rich Prohaska
84a5198b84 merge 1032 into 1032b. addresses #1032
git-svn-id: file:///svn/toku/tokudb.1032b@7782 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:27 -04:00
Rich Prohaska
fbfd0476ba more merging of 1032 to 1032b. addresses #1032
git-svn-id: file:///svn/toku/tokudb.1032b@7779 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:27 -04:00
Bradley C. Kuszmaul
5398661a9e Make it work better with icc. Addresses #1185.
git-svn-id: file:///svn/tokudb.1131b+1080a+1185+nostatementexprs@6467 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:21 -04:00
Bradley C. Kuszmaul
cd8840f04d Get rid of icc warnings (with port-win warnings.) Addresss #1185.
git-svn-id: file:///svn/tokudb.1131b+1080a+1185+nostatementexprs@6466 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:21 -04:00
Bradley C. Kuszmaul
616abc829e Incorporate blocknum code from 1080a. Runs a little, need a big run on coyote. Addresses #1000, #1080, #1131.
git-svn-id: file:///svn/tokudb.1131b+1080a@6025 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:18 -04:00
Bradley C. Kuszmaul
9b7fdbcfd0 Convert from crc to x1764. Fixes #1021.
git-svn-id: file:///svn/tokudb@5363 c7de825b-a66e-492c-adef-691d508d4ae1
2008-07-27 22:16:49 +00:00
Bradley C. Kuszmaul
5c3ec7de12 Revert the murmur checksum. Addresses #1021.
{{{
svn merge https://svn.tokutek.com/tokudb/tokudb.1021@5184 https://svn.tokutek.com/tokudb/tokudb.1021@5107  
}}}
and fix a simple conflict.


git-svn-id: file:///svn/tokudb@5275 c7de825b-a66e-492c-adef-691d508d4ae1
2008-07-23 03:47:05 +00:00
Bradley C. Kuszmaul
66cd2fdd01 Merge is tokudb.1021 changes. Addresses #1021.
{{{
svn merge -r5107:5184 https://svn.tokutek.com/tokudb/tokudb.1021
}}}


git-svn-id: file:///svn/tokudb@5214 c7de825b-a66e-492c-adef-691d508d4ae1
2008-07-20 14:08:55 +00:00
Bradley C. Kuszmaul
fd6a6d1447 Merge in the tokudb.1017 patches to the main branch. Fixes #1017.
{{{
$ (cd tokudb;svn merge -r5048:5080 https://svn.tokutek.com/tokudb/tokudb.1017 )
$ svn delete tokudb.1017
}}}


git-svn-id: file:///svn/tokudb@5081 c7de825b-a66e-492c-adef-691d508d4ae1
2008-07-11 22:00:06 +00:00
Bradley C. Kuszmaul
674f22ce5e Buffer the reading of the rollback file. Gains 5% on large transactions. Fixes #1002.
git-svn-id: file:///svn/tokudb@5005 c7de825b-a66e-492c-adef-691d508d4ae1
2008-07-09 12:00:26 +00:00
Rich Prohaska
da3b69356c merge branch 838 to main. addresses #838
git-svn-id: file:///svn/tokudb@4493 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-12 13:53:39 +00:00
Rich Prohaska
9d057ea81b enable/disable writing tokulogs. addresses#807
git-svn-id: file:///svn/tokudb@4017 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-19 16:42:38 +00:00
Bradley C. Kuszmaul
d5f2eec078 Add the list of txns. Addresses #735. Fixes #749.
git-svn-id: file:///svn/tokudb@3659 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-26 03:16:30 +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
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
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
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
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
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
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
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
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
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
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
Yoni Fogel
401c82a7c7 Explicitly cast val.len
to size_t (unsigned) to remove a warning.

git-svn-id: file:///svn/tokudb@2014 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-01 13:47:22 +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
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
4de66511b4 Write an abort test. Addresses #253.
git-svn-id: file:///svn/tokudb@1590 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-11 03:44:21 +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
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
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
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
80154022be The recovered file is exactly the same as the original file for test_log2.tdb.
(The wrong LSN was being saved in the file.  The recovered version was right.)
Addresses #27.
(Also, it was broken, and that appears to be fixed.)


git-svn-id: file:///svn/tokudb@730 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-24 03:50:28 +00:00
Bradley C. Kuszmaul
e17f972093 Implement recover. This version can scan the log, but doesn't actually recover. Addresses #27
git-svn-id: file:///svn/tokudb@727 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-23 18:27:50 +00:00
Bradley C. Kuszmaul
85336f49f3 Get rid of the manual commit code. Addresses #32
git-svn-id: file:///svn/tokudb@726 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-23 17:41:02 +00:00
Bradley C. Kuszmaul
e50a0fb140 New logformat code can now dump our base test. Addresses #11.
git-svn-id: file:///svn/tokudb@725 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-23 17:16:26 +00:00
Bradley C. Kuszmaul
c6c1af847d fopen dumps OK, brtheader fails. Addresses #11
git-svn-id: file:///svn/tokudb@719 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-22 21:11:21 +00:00
Bradley C. Kuszmaul
a579c5958c everything compiles and the tests still run.... Addresses #11
git-svn-id: file:///svn/tokudb@716 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-22 20:30:38 +00:00
Bradley C. Kuszmaul
23b50b671d log_code.c compiles to log_code.o. Addresses #11
git-svn-id: file:///svn/tokudb@715 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-22 18:45:22 +00:00
Bradley C. Kuszmaul
aab4d54f85 Log brtnode (but dumper cannot understand it yet.) Addresses #11
git-svn-id: file:///svn/tokudb@705 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-21 19:06:32 +00:00