Commit graph

95 commits

Author SHA1 Message Date
Bradley C. Kuszmaul
1ed3f26d65 Add #ident Id info to all the newbrt/*.c and newbrt/*.h files. Refs #1529.
git-svn-id: file:///svn/toku/tokudb@11221 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:48 -04:00
Yoni Fogel
5c108195c3 Addresses #1603 Root fifo is gone.
git-svn-id: file:///svn/toku/tokudb@11165 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:48 -04:00
Yoni Fogel
8f2b0a7e11 Addresses #1510 Merge of 1510 (so far) back into main
Several fixes are included, particulary db remove after db truncate (with descriptor) does not crash anymore.
svn merge -r 10931:11019 ../tokudb.1510

git-svn-id: file:///svn/toku/tokudb@11020 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:47 -04:00
Yoni Fogel
dab780fdbd Addresses #1510 Merge tokud.main+1510 back into main
svn merge --accept=postpone -r 10895:10898 ../tokudb.main+1510
Previously on tokudb.main+1510:
svn merge --accept=postpone -r 10317:10892 ../tokudb.1510

git-svn-id: file:///svn/toku/tokudb@10899 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:47 -04:00
Yoni Fogel
c191b67324 Addresses #1531 Ported stat/fstat. toku_stat, toku_fstat (struct is toku_struct_stat), poisoned the use of the functions
git-svn-id: file:///svn/toku/tokudb@10491 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:45 -04:00
Yoni Fogel
42f2f8d1a3 Merged windows compile error fix from #1510
git-svn-id: file:///svn/toku/tokudb@10346 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:44 -04:00
Bradley C. Kuszmaul
9bdd6eaf62 All the old recovery tests work (#1364), and are merged onto the main line.
Refs #1510, Closes #1364.
This work was done on the 1510 branch, which we will create again.


git-svn-id: file:///svn/toku/tokudb@10313 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:44 -04:00
Bradley C. Kuszmaul
5d9be4ddf1 Merge the simplified logging back to the main line, and get rid of the tokudb.1493a branch. Closes #1493.
git-svn-id: file:///svn/toku/tokudb@9719 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:42 -04:00
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
Yoni Fogel
3b42b55489 Closes #1378 Merged all changes into main.
git-svn-id: file:///svn/toku/tokudb@9507 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:41 -04:00
Yoni Fogel
d1aab2ef76 Addresses #1463
Abstracted out the block translation table and the block allocator
into BLOCK_TABLE
All use is done by accessors surrounded by locks.


git-svn-id: file:///svn/toku/tokudb@9360 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:41 -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
Bradley C. Kuszmaul
a891e96918 Remove rolltmp files during recovery. Fixes #1324.
git-svn-id: file:///svn/toku/tokudb@9090 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:39 -04:00
Rich Prohaska
45eed6a919 merge tokudb.1183 to main. addresses #1183
git-svn-id: file:///svn/toku/tokudb@9061 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
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
Zardosht Kasheff
ed472f23c8 addresses #1268
fix construct_full_name so that absolute windows paths do not get modified

git-svn-id: file:///svn/toku/tokudb.1032b@8019 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:29 -04:00
Rich Prohaska
987c03b986 merge tokudb revision 7776-7883 to toudb.1032b. closes #1260
git-svn-id: file:///svn/toku/tokudb.1032b@7888 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:29 -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
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
9f7f84e655 Get rid of almost all compiler warnings in newbrt for icc, and also compiles with gcc. Addresses #1185.
git-svn-id: file:///svn/tokudb.1131b+1080a+1185@6383 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:20 -04:00
Bradley C. Kuszmaul
0363b1697a Get rid of almost all compiler warnings in newbrt. Addresses #1185.
git-svn-id: file:///svn/tokudb.1131b+1080a+1185@6381 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:20 -04:00
Bradley C. Kuszmaul
7ba939a031 Manage the header not in the cachetable. This will help with #1054. Addresses #1000, #1054, #1080, #1131.
git-svn-id: file:///svn/tokudb.1131b+1080a@6128 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:18 -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
f714e3e873 Merge in the final hash shortcuts.
{{{
svn merge -r4633:4638 https://svn.tokutek.com/tokudb/tokudb.906
}}}

Addresses #906.


git-svn-id: file:///svn/tokudb@4639 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-18 21:38:01 +00:00
Bradley C. Kuszmaul
4db5b5063c Did
{{{
svn merge -r4556:4568 https://svn.tokutek.com/tokudb/tokudb.906
}}}
to incorporate the hash improvements.

Addresses #906.


git-svn-id: file:///svn/tokudb@4596 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-17 17:05:19 +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
f60c54cad0 Fixes #22, #333 and Addresses #818:
* Create an exact bit (#818) for the sums (but doesn't calculate it.)
 * Add magic to the file header (#22)
 * Add per-subdb dupsort flags. (#333).

Did
{{{
$ cd tokudb
$ svn merge -r3990:4094 https://svn.tokutek.com/tokudb/tokudb.818/
$ cd ..
$ svn delete tokudb.818
}}}


git-svn-id: file:///svn/tokudb@4095 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-22 21:28:00 +00:00
Rich Prohaska
3d0f87f4d8 compile with gcc-4.3 on debian4. addresses #804
git-svn-id: file:///svn/tokudb@3922 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-12 18:39:21 +00:00
Bradley C. Kuszmaul
ee986eb581 Fix a segfault in test_log6.recover. Addresses #740.
git-svn-id: file:///svn/tokudb@3822 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-07 00:40:45 +00:00
Bradley C. Kuszmaul
dd8f0f3386 Hacking makefiles. Addresses #782. Also fixes a valgrind bug in one of the recovery tests.
git-svn-id: file:///svn/tokudb@3814 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-06 13:58:08 +00:00
Bradley C. Kuszmaul
09850cc913 Hacking makefiles. Also make the filenames used by the tests work more reliably. Addresses #782.
git-svn-id: file:///svn/tokudb@3792 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-04 16:56:15 +00:00
Bradley C. Kuszmaul
5f0fab0802 Fix up {{{brt->txns}}} during recovery. Fixes #781.
git-svn-id: file:///svn/tokudb@3780 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-03 17:34:14 +00:00
Bradley C. Kuszmaul
77fe15598c Removed the undo information from the logs (to rely on the checkpoint to save a good copy in the log).
Also, don't record the fingerprint changes, since they can be recalculated independently.  (This is a biggy.  The fingerprints updates were half the log changes.)
We'll have to do something about the fingerprints of internal nodes, so some if may come back in some form.
Speeds up {{{db-benchmark-test-tokudb -x}}} from 17477/s to 25696/s, and reduces the size of the {{{bench.tokudb}}} directory (containing logs and data) from 3.3GB to 1.7GB for a 0.33GB datafile.

Manipulations as follows:
 (cd tokudb;svn merge -r3676:3763 https://svn.tokutek.com/tokudb/tokudb.740 )
 svn delete tokudb.740

Fixes #775.


git-svn-id: file:///svn/tokudb@3764 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-02 14:38:35 +00:00
Bradley C. Kuszmaul
71b56ba1e8 Calculate an estimate of the number of {{{LEAFENTRY}}}s below each node.
Increment {{{layout_version}}} to 6.
brtdump now has a {{{--nodata}}} option (to print only the metadata, but not the data)
Fixes #766.

Merged to main using
{{{
cd tokudb/tokudb
svn merge -r3713:3725 https://svn.tokutek.com/tokudb/tokudb.766
cd ..
svn delete tokudb.766
}}}


git-svn-id: file:///svn/tokudb@3728 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-30 13:23:04 +00:00
Bradley C. Kuszmaul
8489ae2389 Change the {{{LEAFENTRY}}} to {{{OMTVALUE}}} when using the omt, and also change the type of {{{OMTVALUE}}} to {{{void*}}} so we can have two different OMTs coexisting. Fixes #750.
git-svn-id: file:///svn/tokudb@3645 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-25 13:45:55 +00:00
Bradley C. Kuszmaul
0b880e866e Merge onto the main line again.
{{{
svn merge -r3571:3582 https://svn.tokutek.com/tokudb/tokudb.724
}}}


git-svn-id: file:///svn/tokudb@3583 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-23 04:17:28 +00:00
Bradley C. Kuszmaul
33b252772a Merge in the OMT and its integration into the main line.
{{{
$ cd tokudb
$ svn merge -r3533:3571 https://svn.tokutek.com/tokudb/tokudb.724
}}}
 
There remain a few problems with recovery, but the main line has problems with recovery, so let's bite the bullet and move forward.

Fixes #729, #724.


git-svn-id: file:///svn/tokudb@3572 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-22 20:39:50 +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
ce2f9354f3 Use the filenums slower. Fixes #722.
git-svn-id: file:///svn/tokudb@3513 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-18 21:30:39 +00:00
Bradley C. Kuszmaul
6759e38875 Fixes #721.
Improve recovery for at least one case.  Addresses #703.
The logfiles that Rich built seem corrupt, so I cannot make progress on the next case.


git-svn-id: file:///svn/tokudb@3506 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-18 14:45:04 +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
7e5dfd3e5d Write leafentry code, and get things to compile. Addresses #558.
git-svn-id: file:///svn/tokudb@3269 c7de825b-a66e-492c-adef-691d508d4ae1
2008-04-04 18:03:03 +00:00