Commit graph

59 commits

Author SHA1 Message Date
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
271137c959 test_log5 recovers correctly now. Addresses #27.
git-svn-id: file:///svn/tokudb@1826 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-23 19:44:13 +00:00
Bradley C. Kuszmaul
015bc27f2f Don't be wasteful when splitting brt leaves. Fixes #294.
This makes big difference for space (46% smaller) and a small time difference (5% faster), as measured by benchmark-test.

Before:
{{{
$ ./benchmark-test
nodesize=1048576
keysize=8
valsize=8
Serial and random insertions of 1048576 per batch
serial  8.753964s   119783/s    random  5.640094s   185915/s    cumulative 14.394118s   145695/s
serial  9.381472s   111771/s    random  7.325284s   143145/s    cumulative 31.100944s   134861/s
serial  9.859233s   106355/s    random  6.734307s   155707/s    cumulative 47.694553s   131911/s
serial 11.069200s    94729/s    random  6.885863s   152280/s    cumulative 65.649695s   127778/s
Shutdown  4.636875s
Total time 70.286611s for 8388608 insertions =   119349/s
$ ls -l sinsert.brt
-rwxrwxr-x 1 bradley bradley 730344924 Jan 22 11:47 sinsert.brt
}}}

After:
{{{
$ ./benchmark-test
nodesize=1048576
keysize=8
valsize=8
Serial and random insertions of 1048576 per batch
serial  8.521855s   123046/s    random  5.730942s   182967/s    cumulative 14.252861s   147139/s
serial  9.106047s   115152/s    random  7.001765s   149759/s    cumulative 30.360740s   138149/s
serial  9.543696s   109871/s    random  6.651000s   157657/s    cumulative 46.555503s   135139/s
serial 10.627035s    98671/s    random  6.555884s   159944/s    cumulative 63.738491s   131610/s
Shutdown  2.818513s
Total time 66.557042s for 8388608 insertions =   126036/s
$ ls -l sinsert.brt
-rwxrwxr-x 1 bradley bradley 396894480 Jan 22 11:45 sinsert.brt
}}}



git-svn-id: file:///svn/tokudb@1798 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-22 16:27:54 +00:00
Rich Prohaska
69b27cccb8 simplify the pma searches. addresses #250
git-svn-id: file:///svn/tokudb@1780 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-21 21:03:23 +00:00
Bradley C. Kuszmaul
d0e64cf702 Log and recover for note splits works a little better. Addresses #27
git-svn-id: file:///svn/tokudb@1691 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-16 14:13:21 +00:00
Rich Prohaska
e7e5c4154a simplify the cursor delete since the pivot flags are gone. addresses #250
git-svn-id: file:///svn/tokudb@1588 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-10 20:07:42 +00:00
Rich Prohaska
12c0d21999 fixup the pma split key test
git-svn-id: file:///svn/tokudb@1571 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-09 14:52:07 +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
Rich Prohaska
fba743d22e remove the unsorted duplicates code from the pma. addresses #247
git-svn-id: file:///svn/tokudb@1537 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-07 19:06:05 +00:00
Rich Prohaska
aed37ec51c first cut of delboth addresses #182
git-svn-id: file:///svn/tokudb@1478 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-02 20:33:51 +00:00
Bradley C. Kuszmaul
8c4ffadd98 Quiet down the newbrt tests. Addresses #13.
git-svn-id: file:///svn/tokudb@1333 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-22 23:12:40 +00:00
Rich Prohaska
9290db6fcc unified the cursor search for cursor set, get_both, set_range, and get_both_range. still need to prune the search for some of these operations.
addresses  #186


git-svn-id: file:///svn/tokudb@1149 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-17 01:03:35 +00:00
Rich Prohaska
8af05f08d6 set pma dupsort insert dup dup behaviour to replace. addresses #178
git-svn-id: file:///svn/tokudb@1132 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-14 13:18:47 +00:00
Rich Prohaska
8667527f2d fix the test order. addresses #159
git-svn-id: file:///svn/tokudb@1124 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-13 22:25:24 +00:00
Rich Prohaska
8d098df137 cursor->del clears pivots if last match. closes #159
git-svn-id: file:///svn/tokudb@1114 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-13 14:53:18 +00:00
Bradley C. Kuszmaul
6a3b4d643b Recompute the fingerprint for DBC->c_del(). Fixes #154.
git-svn-id: file:///svn/tokudb@1017 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-07 22:27:52 +00:00
Rich Prohaska
d1a42e495b fix DB_NEXT_DUP when the cursor points to a deleted kv pair. closes #121
git-svn-id: file:///svn/tokudb@950 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-06 00:32:44 +00:00
Bradley C. Kuszmaul
a542433295 Make some of the PMA fields be unsigned.
Remove some leading __ (double underbars) from some symbols.  (Addresses #8.)
Improve the verification of node sizes (because recovery is having trouble with this.  Addresses #27.)


git-svn-id: file:///svn/tokudb@944 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-05 19:41:39 +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
22d8e86bc9 Fix the DBT problem for duplicate keys. Fixes #101.
git-svn-id: file:///svn/tokudb@857 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-30 15:17:37 +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
062ad802b1 Rename a bunch of symbols to toku_symbols. Addresses #8.
git-svn-id: file:///svn/tokudb@825 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 15:22:23 +00:00
Bradley C. Kuszmaul
77ab644ef6 Rename a bunch of symbols to toku_symbols. Addresses #8.
git-svn-id: file:///svn/tokudb@824 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-29 15:17:46 +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
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
fd2e07c904 Make all external symbols in pma.o start with toku_. Addresses #8
git-svn-id: file:///svn/tokudb@677 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-20 00:32:25 +00:00
Bradley C. Kuszmaul
252ec01833 Make all external symbols in key.o start with toku_. Addresses #8
git-svn-id: file:///svn/tokudb@676 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-20 00:02:51 +00:00
Rich Prohaska
caad214427 use TOKU_DB_DUPSORT internally
git-svn-id: file:///svn/tokudb@664 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-19 20:22:56 +00:00
Rich Prohaska
1620ec5815 remove app_private; merge in dup pma;
git-svn-id: file:///svn/tokudb@567 c7de825b-a66e-492c-adef-691d508d4ae1
2007-11-15 14:44:05 +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
Rich Prohaska
c69bbcf7ff pma uses a memory pool
git-svn-id: file:///svn/tokudb@436 c7de825b-a66e-492c-adef-691d508d4ae1
2007-10-10 19:33:31 +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
Rich Prohaska
4564dd3b9a brt cursor get both feature
git-svn-id: file:///svn/tokudb@301 c7de825b-a66e-492c-adef-691d508d4ae1
2007-09-12 20:30:36 +00:00
Rich Prohaska
c71ab0c05c fix the cursor first last deleted pair problem
git-svn-id: file:///svn/tokudb@288 c7de825b-a66e-492c-adef-691d508d4ae1
2007-09-11 14:53:21 +00:00
Rich Prohaska
7ac29707b1 cursor set key and set range
git-svn-id: file:///svn/tokudb@284 c7de825b-a66e-492c-adef-691d508d4ae1
2007-09-10 17:53:30 +00:00
Rich Prohaska
5bbddb61f5 change test name to already_there
git-svn-id: file:///svn/tokudb@280 c7de825b-a66e-492c-adef-691d508d4ae1
2007-09-07 13:34:17 +00:00
Bradley C. Kuszmaul
de47452c10 use the new db.h
git-svn-id: file:///svn/tokudb@276 c7de825b-a66e-492c-adef-691d508d4ae1
2007-09-06 20:13:56 +00:00
Rich Prohaska
87a0cffe5d fix pma double delete and test pma double insert
git-svn-id: file:///svn/tokudb@272 c7de825b-a66e-492c-adef-691d508d4ae1
2007-09-06 17:29:45 +00:00
Rich Prohaska
808951d65d pma delete under cursor changes
git-svn-id: file:///svn/tokudb@236 c7de825b-a66e-492c-adef-691d508d4ae1
2007-09-04 13:51:12 +00:00
Rich Prohaska
acd68baef4 implement the rebalance and shrink after pma deletion
git-svn-id: file:///svn/tokudb@220 c7de825b-a66e-492c-adef-691d508d4ae1
2007-08-30 15:15:14 +00:00
Rich Prohaska
cda74f7896 short cut pma_free
add some debug asserts to pma_free



git-svn-id: file:///svn/tokudb@147 c7de825b-a66e-492c-adef-691d508d4ae1
2007-08-16 13:10:29 +00:00
Bradley C. Kuszmaul
cc7a1e665c Actually use maybe-faster-malloc
git-svn-id: file:///svn/tokudb@132 c7de825b-a66e-492c-adef-691d508d4ae1
2007-08-14 14:11:55 +00:00
Bradley C. Kuszmaul
ef0260e57c insert_or_replace in one step
git-svn-id: file:///svn/tokudb@111 c7de825b-a66e-492c-adef-691d508d4ae1
2007-08-13 18:01:09 +00:00
Rich Prohaska
381c56c9f9 use pma split in the brt split leaf
git-svn-id: file:///svn/tokudb@103 c7de825b-a66e-492c-adef-691d508d4ae1
2007-08-09 18:54:58 +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
Rich Prohaska
e323d20acc oops, run all of the pma tests
git-svn-id: file:///svn/tokudb@90 c7de825b-a66e-492c-adef-691d508d4ae1
2007-08-06 19:54:08 +00:00
Rich Prohaska
6a8eb4ed2a update pma cursors whenever the kv pairs are moved in the pma index.
add pma_bulk_insert functionality.



git-svn-id: file:///svn/tokudb@89 c7de825b-a66e-492c-adef-691d508d4ae1
2007-08-06 19:43:27 +00:00
Rich Prohaska
e3c9ea0202 change the pma index from an array of pairs to an array of pointers
to the key and value.  this change was made to address the slow 
insert performance on an amd64 machine.



git-svn-id: file:///svn/tokudb@87 c7de825b-a66e-492c-adef-691d508d4ae1
2007-08-03 17:21:20 +00:00
Bradley C. Kuszmaul
14f557112f Catch a test that happened to work
git-svn-id: file:///svn/tokudb@75 c7de825b-a66e-492c-adef-691d508d4ae1
2007-07-31 21:59:33 +00:00
Rich Prohaska
7896ccf789 change the name of internal functions
git-svn-id: file:///svn/tokudb@67 c7de825b-a66e-492c-adef-691d508d4ae1
2007-07-30 18:35:40 +00:00