Commit graph

929 commits

Author SHA1 Message Date
Yoni Fogel
e711fbada5 Modified header
git-svn-id: file:///svn/tokudb@1858 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-24 21:17:36 +00:00
Yoni Fogel
d24d0e3d04 Addresses #293
git-svn-id: file:///svn/tokudb@1857 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-24 21:17:19 +00:00
Rich Prohaska
ee0bfdf548 fix 32 bit linux build. closes #297
git-svn-id: file:///svn/tokudb@1856 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-24 20:31:16 +00:00
Yoni Fogel
98d31e20e4 Modified comment in header
git-svn-id: file:///svn/tokudb@1855 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-24 19:29:53 +00:00
Yoni Fogel
86fcd60f31 Addresses #293
Read lock appears to be finished for now.

git-svn-id: file:///svn/tokudb@1854 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-24 19:29:35 +00:00
Rich Prohaska
369da65117 add check target. addresses #299
git-svn-id: file:///svn/tokudb@1845 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-24 15:39:26 +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
fc5314ec6d Make the LSN be properly defined in the in-memory logentry so rollback will work right. Fixes #304.
git-svn-id: file:///svn/tokudb@1843 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-24 15:02:46 +00:00
Bradley C. Kuszmaul
970234a759 Fix db-benchmark-test. Fixes #300.
git-svn-id: file:///svn/tokudb@1841 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-24 13:51:34 +00:00
Yoni Fogel
779e7f3fc4 Addresses #293
Checkpoint in lock tree implementation.
Write locks and point locks appear to be done,
bugs fixed in comparison function.

Need to do a bunch of worst case error handling still.

git-svn-id: file:///svn/tokudb@1830 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-24 01:00:40 +00:00
Yoni Fogel
0af793b40b Addresses #293
Checkpoint in implementation.
Vincenzo left for the night.

git-svn-id: file:///svn/tokudb@1829 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-23 22:17:40 +00:00
Rich Prohaska
97620c5288 check default parameters and -x. addresses #299
git-svn-id: file:///svn/tokudb@1827 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-23 21:30:20 +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
Yoni Fogel
2a2304f353 Addresses #284
Add accessor function for allow_overlaps in range trees.

git-svn-id: file:///svn/tokudb@1824 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-23 18:49:34 +00:00
Yoni Fogel
16a9e6592b Closes #297
toku_malloc/calloc/realloc/memdup now use size_t instead of
nonportable int types.

git-svn-id: file:///svn/tokudb@1823 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-23 18:35:54 +00:00
Bradley C. Kuszmaul
28428074a1 Log the pivots correctly. Addresses #27.
git-svn-id: file:///svn/tokudb@1822 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-23 18:29:06 +00:00
Yoni Fogel
e5f752c311 Addresses #284
Added user malloc/free/realloc functions to the range tree.

git-svn-id: file:///svn/tokudb@1821 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-23 18:25:56 +00:00
Bradley C. Kuszmaul
407c0ebebf Log the fingerprints correctly. Addresses #27.
git-svn-id: file:///svn/tokudb@1820 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-23 18:06:23 +00:00
Yoni Fogel
09bbe6ddd6 Addresses #293
Checkpoint in lock tree implementation

git-svn-id: file:///svn/tokudb@1806 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-22 21:46:59 +00:00
Bradley C. Kuszmaul
e4b5463050 Make the dumper print more (maybe all stuff)
git-svn-id: file:///svn/tokudb@1803 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-22 19:30:02 +00:00
Vincenzo Liberatore
3c39874f91 Addresses 289
Added doxygen file and the generated doxygen documentation for range trees

git-svn-id: file:///svn/tokudb@1801 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-22 19:17:14 +00:00
Bradley C. Kuszmaul
156d6520e8 Make benchmark-test a little quieter by default, and make -v make it a little louder again. Addresses #13.
git-svn-id: file:///svn/tokudb@1800 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-22 18:37:07 +00:00
Bradley C. Kuszmaul
51d865dceb Log the distribute for a split in the other order. Addresses #27.
git-svn-id: file:///svn/tokudb@1799 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-22 18:33:51 +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
c319506339 add DB_TXN_NOWAIT to fix builds
git-svn-id: file:///svn/tokudb@1796 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-22 15:42:54 +00:00
Rich Prohaska
989bdd3f7e DB_LOCK_NOTGRANTED addresses #290
git-svn-id: file:///svn/tokudb@1787 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-22 01:21:28 +00:00
Yoni Fogel
85f4664359 Addresses #292
Addresses #293

Checkpoint in header and implementation of lock tree.

git-svn-id: file:///svn/tokudb@1786 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-22 00:35:06 +00:00
Yoni Fogel
c2fa081cae Removed old version of lock tree
from ydb-internal.h



git-svn-id: file:///svn/tokudb@1785 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-22 00:32:56 +00:00
Yoni Fogel
6354d097d9 Addresses #284
Added comment about static buffers being fine if they are of sufficient size
i.e. for limited queries.

git-svn-id: file:///svn/tokudb@1784 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-22 00:32:10 +00:00
Yoni Fogel
bf30a38401 Added DB_LOCK_NOTGRANTED
Addresses #290

git-svn-id: file:///svn/tokudb@1783 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-22 00:01:01 +00:00
Yoni Fogel
9858fb38ef Added DB_LOCK_NOTGRANTED
Addresses #290

git-svn-id: file:///svn/tokudb@1782 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-21 23:59:04 +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
Yoni Fogel
3d6589dc5e Addresses #284
Coded toku_rt_decrease capacity to reclaim memory if size of range tree becomes
too small for local array.

git-svn-id: file:///svn/tokudb@1779 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-21 20:17:46 +00:00
Yoni Fogel
4f767ef48a Closes 284
Linear time range tree implementation complete and passes all tests.

git-svn-id: file:///svn/tokudb@1778 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-21 20:14:22 +00:00
Yoni Fogel
5dfdc1bc98 Closes #288
Fixed minor bugs in tests.

git-svn-id: file:///svn/tokudb@1777 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-21 20:12:41 +00:00
Yoni Fogel
0cf40db292 Addresses #284
Checkpoint in implementing linear.c

git-svn-id: file:///svn/tokudb@1776 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-21 19:38:09 +00:00
Yoni Fogel
b32ac2cb37 Addresses #288
test Cases for pred/succ
 * Empty tree
  * Pred return nothing.
  * Succ return nothing.
 * 1 element tree.
  * Pred
  * Before
  * left
  * middle
  * right
  * after.
 * Succ
  * Before
  * left
  * middle
  * right
  * after
 * 2 element tree.
  * Pred, Succ
   * In empty space
    * Nothing to the left/Right (pred/succ) respectively.
    * something to the left/right (pred/succ) respectively.
   * On left endpoint.
    * Nothing to the left/Right (pred/succ) respectively.
    * something to the left/right (pred/succ) respectively.
   * On right endpoint.
    * Nothing to the left/Right (pred/succ) respectively.
    * something to the left/right (pred/succ) respectively.
   * In middle of range.
    * Nothing to the left/Right (pred/succ) respectively.
    * something to the left/right (pred/succ) respectively.


git-svn-id: file:///svn/tokudb@1774 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-21 16:08:41 +00:00
Yoni Fogel
8db3779f11 Addresses #287
Bugfix in error cases of range trees.

git-svn-id: file:///svn/tokudb@1773 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-21 16:08:26 +00:00
Rich Prohaska
f62ff656d5 make test-coverage addresses #277
git-svn-id: file:///svn/tokudb@1772 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-21 15:46:12 +00:00
Rich Prohaska
374474293a build the coverage tool addresses #277
git-svn-id: file:///svn/tokudb@1771 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-21 15:24:59 +00:00
Yoni Fogel
6d1c862561 Addresses #288
Fixes bugs in tests where find parameters did not have data == NULL

git-svn-id: file:///svn/tokudb@1770 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-21 15:20:21 +00:00
Yoni Fogel
0ac037f296 Addresses #288
* Query Tests:
  * Tree is empty (return none).
  * Tree contains only elements to the left.
  * Tree contains only elements to the right.
  * Tree contains only elements to the left and to the right.
  * Tree contains overlaps and elements to the left.
  * Tree contains overlaps and elements to the right.
  * Tree contains overlaps and elements to the left and to the right.


git-svn-id: file:///svn/tokudb@1769 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-21 15:15:32 +00:00
Yoni Fogel
3dfc59f193 Addresses #288
* Query Tests:
  * Tree is empty (return none).
  * Tree contains only elements to the left.
  * Tree contains only elements to the right.
  * Tree contains only elements to the left and to the right.
  * Tree contains overlaps and elements to the left.
  * Tree contains overlaps and elements to the right.
  * Tree contains overlaps and elements to the left and to the right.


git-svn-id: file:///svn/tokudb@1768 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-21 15:15:08 +00:00
Rich Prohaska
155a75874a add test-coverage target addresses #277
git-svn-id: file:///svn/tokudb@1767 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-21 14:03:46 +00:00
Yoni Fogel
9d76a97baa Addresses #288
Test of     /*
        Limited/Unlimited Queries

        Limit of k does not produce all, but limit of 0 does.         Single point overlaps
    */


git-svn-id: file:///svn/tokudb@1757 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-20 01:54:43 +00:00
Yoni Fogel
e5f4d2acfb Addresses #287
Updated header and makefile for rangetree.h

git-svn-id: file:///svn/tokudb@1746 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-19 00:22:25 +00:00
Yoni Fogel
0430769843 Addresses #288
Added the following tests:

 * Single point overlaps
  * Tree: {|0-1|}, query of |1-2| returns |0-1|
  * Tree: {|1-2|}, query of |0-1| returns |1-2|
  * Tree: {|1-2|}, insert of of |0-1| success == allow_overlaps
  * Tree: {|0-1|}, insert of of |1-2| success == allow_overlaps
 * Complete overlaps
  * Tree: {|0-3|}, query of |1-2| returns |0-3|
  * Tree: {|1-2|}, query of |0-3| returns |1-2|
  * Tree: {|1-2|}, insert of of |0-3| success == allow_overlaps
  * Tree: {|0-3|}, insert of of |1-2| success == allow_overlaps
 * Exact overlaps
  * Tree: {|0-3|}, query of |0-3| returns |0-3|
  * Tree: {|0-3|}, insert of of |0-3| success == allow_overlaps

Also freed buf and NULLed the pointer to help find memory leaks.

git-svn-id: file:///svn/tokudb@1745 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-19 00:14:16 +00:00
Yoni Fogel
0244928d0c Addresses #288
More range tree tests.

git-svn-id: file:///svn/tokudb@1744 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-18 23:42:27 +00:00
Yoni Fogel
8042a1d132 Addresses #288
Additional tests for range trees.

git-svn-id: file:///svn/tokudb@1743 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-18 22:27:23 +00:00
Yoni Fogel
2b94f88627 Addresses #287 Moved documentation from toku_rt_delete
back to toku_rt_insert.
The error code was for insert, not delete.

git-svn-id: file:///svn/tokudb@1742 c7de825b-a66e-492c-adef-691d508d4ae1
2008-01-18 22:15:53 +00:00