Commit graph

73 commits

Author SHA1 Message Date
Bradley C. Kuszmaul
4257a03411 Double check that uses of snprintf inside brt code are OK. Refs #1508.
git-svn-id: file:///svn/toku/tokudb@9717 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:42 -04:00
Bradley C. Kuszmaul
ac746cc08c Candidate fix for #1447. Addresses #1447.
git-svn-id: file:///svn/toku/tokudb@9251 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:40 -04:00
Yoni Fogel
84e3f1be9e Addresses #1443
Re-introduce the behavior that rollback_fcreate removes references to fd from lock tree
before deleting the file

This fixes regressions for windows in transaction abort tests

git-svn-id: file:///svn/toku/tokudb@9239 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:40 -04:00
Yoni Fogel
83eee5663a Addresses #1396
Merge tokudb.1396 back into main

git-svn-id: file:///svn/toku/tokudb@9110 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:39 -04:00
Bradley C. Kuszmaul
1f796663cd Check in the code for compressing the rolltmp file.
This was a tricky merge.  In the 1332a directory I did:
{{{
svn merge https://svn.tokutek.com/tokudb/toku/tokudb.1032b+1332@8415 https://svn.tokutek.com/tokudb/toku/tokudb.1032b+1332@8416
}}}
Then I was able to resolve the conflicts.

Then in the main line I did:
{{{
svn merge -r9042:9046 https://svn.tokutek.com/tokudb/toku/tokudb.1332a
}}}

Fixes #1332.


git-svn-id: file:///svn/toku/tokudb@9047 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:38 -04:00
Bradley C. Kuszmaul
85f355d631 Improve error messages and error handling when writes fail.
* Fixes #78 ({{{lg_bsize}}} works)
 * Fixes #1323 (write errors)
Did
{{{
svn merge -r8967:9031 https://svn.tokutek.com/tokudb/toku/tokudb.1323a
}}}

(And I'll delete the 1323 branches in a moment.)


git-svn-id: file:///svn/toku/tokudb@9032 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:38 -04:00
Bradley C. Kuszmaul
16bb53619e Merge {{{tokudb.1381}}} onto the main line.
Fixes #1381.  Addresses #1393 which was also fixed in this branch.

{{{
svn merge -r 8803:8831 https://svn.tokutek.com/tokudb/toku/tokudb.1381
}}}
and delete the 1381 branch.


git-svn-id: file:///svn/toku/tokudb@8832 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:38 -04:00
Bradley C. Kuszmaul
ffd7d051a8 Merge #1311 (responsiveness during commit and abort) back to the main line.
{{{
svn merge -r 8703:8781 https://svn.tokutek.com/tokudb/toku/tokudb.1311
}}}
and delete the tokudb.1311 branch.

Addresses #1311.


git-svn-id: file:///svn/toku/tokudb@8782 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:38 -04:00
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
Bradley C. Kuszmaul
c40557746c Fixes #1367.
git-svn-id: file:///svn/toku/tokudb.1032b+1343@8578 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:34 -04:00
Yoni Fogel
a9c69fd3fe Manual glue for svn-git migration for r8452 due to multiple merge + diffs in the same patch.
Original message:
Create a branch to make Doug Lea's malloc work. The big problem is having another malloc() in the system breaks things. Address #1343, #1032.
2013-04-16 23:57:33 -04:00
Rich Prohaska
6ebe124875 imp toku_os_ closes #1253
git-svn-id: file:///svn/toku/tokudb.1032b@7837 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:28 -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
730e17faaf merge 1032 into 1032b. addresses #1032
git-svn-id: file:///svn/toku/tokudb.1032b@7781 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
0ed47ea357 CIL gets upset if includes are not in the same order, because int64_t gets typedefed to different things depending on what you include. So do all the includes in a standard way. Addresses #1185.
git-svn-id: file:///svn/tokudb.1131b+1080a+1185@6439 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:20 -04: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
97a2188053 send commits for delete operations. addresses #976
git-svn-id: file:///svn/tokudb@4875 c7de825b-a66e-492c-adef-691d508d4ae1
2008-07-01 19:52:35 +00:00
Bradley C. Kuszmaul
33d04ef55f Integrate the omtcursors into the BRT. So far only DB_NEXT is implemented. Addresses #855, #856.
git-svn-id: file:///svn/tokudb@4325 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-02 20:52:12 +00:00
Vincenzo Liberatore
bf759aa8bb Closes #855 Merged back into trunk
git-svn-id: file:///svn/tokudb@4308 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-30 20:41:12 +00:00
Bradley C. Kuszmaul
c199a47fae Dramatic speedups: For {{{db-benchmark-test -x}}} (4 interations)
||                                    ||      DB size ||  logsize ||  rate    ||
|| Before (with transactions)         ||      .33GB   ||   3.0GB  ||  17477/s ||
|| No Transactions (with this fix)    ||      .43GB   ||   0GB    || 104124/s ||
|| After removing undo info (#775)    ||      .33GB   ||   1.4GB  ||  25696/s ||
|| After optimizing commit (#725)     ||      .43GB   ||   0.6GB  ||  39909/s ||

The file size is a larger, but the logs are a lot smaller.

Addresses #725, #775.

Manipulations:
{{{
$ (cd tokudb; svn merge -r3763:3778 https://svn.tokutek.com/tokudb/tokudb.725)
$ svn delete tokudb.725
}}}


git-svn-id: file:///svn/tokudb@3779 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-03 12:43:25 +00:00
Bradley C. Kuszmaul
461b05f4b0 All commands now push into tree instead of root if possible. Fixes #735.
git-svn-id: file:///svn/tokudb@3670 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-27 15:12:25 +00:00
Bradley C. Kuszmaul
7523273fb8 On commit push into tree instead of root if possible. Addresses #735.
git-svn-id: file:///svn/tokudb@3668 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-27 12:34:50 +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
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
b58a413bce {{{
svn merge -r3352:3375 https://svn.tokutek.com/tokudb/tokudb.558a
}}}
with no conflicts.

Fixes #672, #558, #680.


git-svn-id: file:///svn/tokudb@3376 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-09 02:45:27 +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
bc4b389304 More getting brt-test to compile. Addresses #558.
git-svn-id: file:///svn/tokudb@3154 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-28 20:49:50 +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
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
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
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
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
957b081486 delete aborts work right now. Addresses #27.
git-svn-id: file:///svn/tokudb@2437 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-27 15:58:10 +00:00
Bradley C. Kuszmaul
cb204011d6 Improvements to rollback. Addresses #27.
git-svn-id: file:///svn/tokudb@2434 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-27 09:05:58 +00:00
Bradley C. Kuszmaul
b0e3bf13ba halfway broken rollback for delete. Addresses #27.
git-svn-id: file:///svn/tokudb@2431 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-27 07:14:03 +00:00
Bradley C. Kuszmaul
6105ff5838 Rollback during abort. Fixes #448.
git-svn-id: file:///svn/tokudb@2423 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-26 17:47:40 +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
Rich Prohaska
d68e94a52e fix the extra node ref. address #431
git-svn-id: file:///svn/tokudb@2416 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-26 12:17:22 +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
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
10062269c7 Make each rollback code take a list of arguments rather than a single logentry. Makes it easier to notice that I've got unused variables. Addresses #27.
git-svn-id: file:///svn/tokudb@2206 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 22:16:02 +00:00
Bradley C. Kuszmaul
09a3da9a49 Make all.recover work again. Addresses #27.
git-svn-id: file:///svn/tokudb@2168 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 04:34:12 +00:00
Bradley C. Kuszmaul
eeaef7284a Add XID (Addresses #242), and also fix the problem where deletes were sneaking around inserts (Fixes #332.)
git-svn-id: file:///svn/tokudb@2098 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-05 18:25:23 +00:00
Rich Prohaska
6dbdfb836c addresses #126
git-svn-id: file:///svn/tokudb@2006 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-01 01:38:11 +00:00