Commit graph

37 commits

Author SHA1 Message Date
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
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
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
241c5392df Break up brt-test some more. Addresses #475. Also make the fanout flexible. Fixes #126.
git-svn-id: file:///svn/tokudb@2593 c7de825b-a66e-492c-adef-691d508d4ae1
2008-03-06 21:46:57 +00:00
Bradley C. Kuszmaul
4abb5ba31d Use toku_assert instead of assert. Addresses #354.
git-svn-id: file:///svn/tokudb@2167 c7de825b-a66e-492c-adef-691d508d4ae1
2008-02-08 03:17:38 +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
Bradley C. Kuszmaul
885e0bbb2e Put all the child info into one struct. Addresses #126.
git-svn-id: file:///svn/tokudb@2002 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-31 22:05:43 +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
Rich Prohaska
8bed771536 replace hashtables with fifos. addresses #249
git-svn-id: file:///svn/tokudb@1600 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-11 14:03:33 +00:00
Rich Prohaska
3a29cecefb remove pivot flags. addresses #250
git-svn-id: file:///svn/tokudb@1560 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-08 21:43:11 +00:00
Bradley C. Kuszmaul
e4f197a8bc set layout_version to 1 (for 0.4.0). Addresses #118. Fixes #248.
git-svn-id: file:///svn/tokudb@1536 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-07 19:02:27 +00:00
Rich Prohaska
964dca79ef fix the valgrind uninitialized value problem. closes #143
git-svn-id: file:///svn/tokudb@1001 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 15:22:11 +00:00
Bradley C. Kuszmaul
6ab4529c91 Switch over the fingerprints to be in the subfield
git-svn-id: file:///svn/tokudb@977 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-06 19:16:18 +00:00
Bradley C. Kuszmaul
d1569489ca Get rid of childkeylens. Addresses #126.
git-svn-id: file:///svn/tokudb@964 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-06 14:30:33 +00:00
Bradley C. Kuszmaul
4dfccf0d81 Get rid of a few more cases where childkeylens are used. Addresses #126.
git-svn-id: file:///svn/tokudb@962 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-06 14:20:47 +00:00
Bradley C. Kuszmaul
eeb476bdc4 Oops, caused a crash. Addresses #27.
git-svn-id: file:///svn/tokudb@956 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-06 11:59:35 +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
0a6d3a6cc6 Rename a bunch of symbols to toku_symbols. Addresses #8.
git-svn-id: file:///svn/tokudb@826 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 15:34:49 +00:00
Bradley C. Kuszmaul
9f54dcef61 Rename a bunch of symbols to toku_symbols. Addresses #8.
git-svn-id: file:///svn/tokudb@823 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 15:09:14 +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
Rich Prohaska
8ff534e152 use kv-pair's to contain the pivot key and data. closes #37
git-svn-id: file:///svn/tokudb@770 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-27 18:16:45 +00:00
Rich Prohaska
2a8344c090 add tree flags to the node to drive serialization of pivots. addresses #5
git-svn-id: file:///svn/tokudb@769 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-27 15:22:56 +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
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
5784ee45fb Log header
git-svn-id: file:///svn/tokudb@699 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-21 13:07:49 +00:00
Bradley C. Kuszmaul
ff277a4b43 Make all external symbols in brt-serialize.o start with toku_. Addresses #8
git-svn-id: file:///svn/tokudb@675 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-19 23:54:17 +00:00
Rich Prohaska
dfd26d869c serialize pivotflags
git-svn-id: file:///svn/tokudb@608 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-17 13:23:32 +00:00
Rich Prohaska
5b24c06e48 fix bug 3: use the application's compare function in the pma rather than the default compare function
git-svn-id: file:///svn/tokudb@604 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-16 22:06:27 +00:00
Bradley C. Kuszmaul
48f0ad74b5 Up
git-svn-id: file:///svn/tokudb@519 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-14 17:58:38 +00:00
Bradley C. Kuszmaul
710cf343a3 Merge logging
git-svn-id: file:///svn/tokudb@371 c7de825b-a66e-492c-adef-691d508d4ae1
2007-09-28 17:11:22 +00:00
Bradley C. Kuszmaul
2f66d9a1c7 Fix the serialize-test: It was doing read then write, instead of write then read
git-svn-id: file:///svn/tokudb@298 c7de825b-a66e-492c-adef-691d508d4ae1
2007-09-12 18:19:20 +00:00
Rich Prohaska
c10712dee6 Change to implement delete by key. A BRT_DELETE command is injected into the
tree.  It replaces any INSERT or DELETE command with the same key at all
interior nodes.  It is translated into a PMA delete operation at a leaf
node.  

The database file format was changed for the contents of interior node
buffers to include a 1 byte type field.  There are currently 2 types:
BRT_INSERT and BRT_DELETE.




git-svn-id: file:///svn/tokudb@278 c7de825b-a66e-492c-adef-691d508d4ae1
2007-09-06 21:36:45 +00:00
Bradley C. Kuszmaul
2fcb4bfaaf Separate rbuf and wbuf so that log.c can use it. Check in a perliminary version of log.c
git-svn-id: file:///svn/tokudb@162 c7de825b-a66e-492c-adef-691d508d4ae1
2007-08-21 23:32:17 +00:00
Bradley C. Kuszmaul
3bba4f46d9 Make a malloc that reuses things (if you tell it the size of the free'd thing)
git-svn-id: file:///svn/tokudb@94 c7de825b-a66e-492c-adef-691d508d4ae1
2007-08-07 23:38:05 +00:00
Bradley C. Kuszmaul
97d2b0d8aa Get rid of a bunch of valgrind warnings (none of which are real errors, probably)
git-svn-id: file:///svn/tokudb@76 c7de825b-a66e-492c-adef-691d508d4ae1
2007-08-01 02:37:21 +00:00
Bradley C. Kuszmaul
e6e8a2aebc Rename hash functions to avoid conflict with mysql
git-svn-id: file:///svn/tokudb@38 c7de825b-a66e-492c-adef-691d508d4ae1
2007-07-24 15:08:05 +00:00
Bradley C. Kuszmaul
2f8ec84fb8 Rename
git-svn-id: file:///svn/tokudb@4 c7de825b-a66e-492c-adef-691d508d4ae1
2007-07-13 19:37:47 +00:00