Bradley C. Kuszmaul
6b685145d1
Merge {{{tokudb.906}}} into {{{tokudb}}}. Very few hash calls remain.
...
Did
{{{
svn merge -r4600:4610 https://svn.tokutek.com/tokudb/tokudb.906
}}}
and delete the 906 branch.
Fixes #906 .
git-svn-id: file:///svn/tokudb@4615 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-18 00:30:36 +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
53161133c1
Addresses #923 Better printouts on verbose=1
...
git-svn-id: file:///svn/tokudb@4587 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-17 13:36:42 +00:00
Yoni Fogel
4b35c3f3ef
Addresses #918
...
Allocates room for at least 4 elements every time we convert from tree
to array (and vice versa).
git-svn-id: file:///svn/tokudb@4586 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-17 12:17:48 +00:00
Yoni Fogel
56861ecd78
addresses #918
...
Merged current progress into trunk
git-svn-id: file:///svn/tokudb@4581 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-17 04:29:17 +00:00
Yoni Fogel
131172d61e
Fix issue compiler was warning about in 4577
...
git-svn-id: file:///svn/tokudb@4580 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-17 04:28:33 +00:00
Rich Prohaska
b526f096a5
fix compiler warning
...
git-svn-id: file:///svn/tokudb@4577 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-17 00:49:03 +00:00
Yoni Fogel
1ce2303c6b
Addresses #918
...
Merge 'convert to array on rebalancing root' change
git-svn-id: file:///svn/tokudb@4576 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-17 00:01:35 +00:00
Yoni Fogel
88b08c3daf
Addresses #918
...
Merge initial version of array representation of omts into trunk
git-svn-id: file:///svn/tokudb@4574 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-16 23:50:45 +00:00
Rich Prohaska
d79133ce1f
bias the pivot search in favor of appends to the dictionary. addresses #896
...
git-svn-id: file:///svn/tokudb@4546 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-16 01:26:51 +00:00
Bradley C. Kuszmaul
34572ecb9e
Oops. Addresses #917 .
...
git-svn-id: file:///svn/tokudb@4545 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-15 20:49:15 +00:00
Bradley C. Kuszmaul
64b08678a1
Tigter code when not filling with zeros. Addresses #917 .
...
git-svn-id: file:///svn/tokudb@4544 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-15 20:44:11 +00:00
Bradley C. Kuszmaul
9ebb4b4080
Don't always fill with zeros. Fixes #917 . Gives some speedups on random.
...
git-svn-id: file:///svn/tokudb@4543 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-15 17:09:14 +00:00
Rich Prohaska
5c3b4003e8
strange return in BDB. addresses #838
...
git-svn-id: file:///svn/tokudb@4541 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-15 12:44:45 +00:00
Bradley C. Kuszmaul
10f21e7224
Did a {{{svn merge}}} for {{{tokudb.907}}} and deleted {{{tokudb.907}}}.
...
Fixes #907 .
git-svn-id: file:///svn/tokudb@4524 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-14 01:38:53 +00:00
Bradley C. Kuszmaul
802d83994b
test_838 now passes. Addresses #838
...
git-svn-id: file:///svn/tokudb@4521 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-13 18:27:22 +00:00
Rich Prohaska
f3eefae802
fix the nightly regressions. port the 838 test to BDB. addresses #838
...
git-svn-id: file:///svn/tokudb@4514 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-13 11:18:34 +00:00
Yoni Fogel
b4b9748da8
Addresses #912
...
Use ybt->size field if ybt->ulen field is unset (for DB_DBT_REALLOC).
git-svn-id: file:///svn/tokudb@4505 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-12 23:13:04 +00:00
Yoni Fogel
acf688ef2e
Closes #912
...
toku_db_set_* (the dbt setting functions)
no longer require atomicity for ENOMEM cases.
Also, in the case of realloc, we only alloc new memory if
the new size is larger than the old size, or the new size is less than
half of the old size.
Code has some simplifications due to lesser atomicity requirements.
Modified src/tests/test_db_dbt_mem_behavior.c to take into account
that DB_DBT_REALLOC now uses the ulen field.
git-svn-id: file:///svn/tokudb@4504 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-12 23:07:04 +00:00
Yoni Fogel
fe3cd46d32
Closes #914
...
git-svn-id: file:///svn/tokudb@4502 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-12 20:46:09 +00:00
Yoni Fogel
19b775ea35
Addresses #838
...
Added test_838 to tests that should fail.
git-svn-id: file:///svn/tokudb@4501 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-12 20:37:26 +00:00
Bradley C. Kuszmaul
a4f4d06ff9
Merge the streamlining changes from #911 . Fixes #911 .
...
git-svn-id: file:///svn/tokudb@4500 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-12 20:32:22 +00:00
Rich Prohaska
da3b69356c
merge branch 838 to main. addresses #838
...
git-svn-id: file:///svn/tokudb@4493 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-12 13:53:39 +00:00
Yoni Fogel
df7304b264
Closes #908
...
Implements DB->pre_acquire_table_lock
Also optimized lock tree for table write locks
git-svn-id: file:///svn/tokudb@4480 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-11 20:09:47 +00:00
Yoni Fogel
83bd37f5bc
Addresses #908
...
Add DB->pre_acquire_table_lock to headers
git-svn-id: file:///svn/tokudb@4479 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-11 19:38:51 +00:00
Bradley C. Kuszmaul
8102ccf804
Fixup command line parsing
...
git-svn-id: file:///svn/tokudb@4473 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-11 18:02:43 +00:00
Yoni Fogel
62fa995705
Closes #904
...
Skip lock tree overhead (marshalling and calling)
when appropriate due to DB_PRELOCKED/DB_PRELOCKED_WRITE
git-svn-id: file:///svn/tokudb@4469 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-11 06:08:13 +00:00
Yoni Fogel
5764fdef8e
Addresses #904
...
Add DB_PRELOCKED_WRITE flag
git-svn-id: file:///svn/tokudb@4462 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-10 19:46:00 +00:00
Bradley C. Kuszmaul
61974814e4
Implement a lighter versio nof {{{DBC->c_getf_next}}}. Addresses #902 .
...
git-svn-id: file:///svn/tokudb@4460 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-10 18:56:10 +00:00
Bradley C. Kuszmaul
2d0adda90c
Use the {{{db->pre_acquire_read_lock}}} method for scanscan.
...
So to use the lightweight cursors with the prelock one does:
{{{
./scanscan-tokudb --prelock --nohwc --lwc
}}}
Addresses #893 .
git-svn-id: file:///svn/tokudb@4454 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-10 16:37:56 +00:00
Yoni Fogel
917a127c2f
Renamed toku_rt_forest to rt_forest
...
git-svn-id: file:///svn/tokudb@4453 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-10 16:06:50 +00:00
Bradley C. Kuszmaul
750998c9da
Implement {{{DBC->c_getf_next}}}, with a simple test. Addresses #902 .
...
git-svn-id: file:///svn/tokudb@4452 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-10 15:39:31 +00:00
Bradley C. Kuszmaul
e0d124119b
Pack the OMT. Fixes #897 .
...
git-svn-id: file:///svn/tokudb@4421 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-08 16:14:31 +00:00
Bradley C. Kuszmaul
b2dd143d95
Clean up scanscan. Addresses #820 .
...
git-svn-id: file:///svn/tokudb@4420 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-08 15:53:50 +00:00
Yoni Fogel
d9e9792d8c
Addresses #893
...
Parameters to pre_lock are supposed to be const DBT*'s instead of DBT*'s.
git-svn-id: file:///svn/tokudb@4403 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-06 18:09:04 +00:00
Yoni Fogel
e22d67bb8e
Addresses #893
...
Implement db->pre_acquire_read_lock(), db->dbt_pos_infty(), and db->dbt_neg_infty()
functions.
Example usage to lock entire table:
db->pre_acquire_read_lock(db, txn, db->dbt_neg_infty(), NULL, db->dbt_pos_infty(), NULL);
(Above is for db with no duplicates, i.e. primary index).
For db with duplicates:
db->pre_acquire_read_lock(db, txn, db->dbt_neg_infty(), db->dbt_neg_infty(), db->dbt_pos_infty(), db->dbt_pos_infty());
Will return same lock error codes as db calls do (when locks fail).
0 = success
DB_LOCK_NOTGRANTED = failed to obtain the lock.
We can theoretically sleep and try again here.
If you want to grab from DBT* A to infinity..
db->pre_acquire_read_lock(db, txn, A, NULL, db->dbt_pos_infty(), NULL);
git-svn-id: file:///svn/tokudb@4402 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-06 17:50:38 +00:00
Yoni Fogel
98feb20905
Addresses #889
...
Leaf boundary test now checks left to right and right to left.
git-svn-id: file:///svn/tokudb@4401 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-06 16:45:38 +00:00
Yoni Fogel
72c0171ab6
Addresses #889
...
Additional tests to verify we handle provdel leaf entries correctly
(when we need to cross between leaf boundaries.
git-svn-id: file:///svn/tokudb@4400 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-06 16:39:38 +00:00
Bradley C. Kuszmaul
33a145cf5d
Don't run manyfiles.bdb. Addresses #891 .
...
git-svn-id: file:///svn/tokudb@4397 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-06 13:07:25 +00:00
Bradley C. Kuszmaul
b3f35f217e
Hash the cachetable too. Fixes #891 .
...
git-svn-id: file:///svn/tokudb@4388 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-05 22:09:59 +00:00
Rich Prohaska
68e6ca2097
need to update the cursor when skipping provisionally deleted leaf entries. addresses #889
...
git-svn-id: file:///svn/tokudb@4367 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-04 22:58:07 +00:00
Bradley C. Kuszmaul
d12442d53e
Implement 2nd scanscan, and allow txns to be turned off.
...
git-svn-id: file:///svn/tokudb@4351 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-03 21:55:47 +00:00
Bradley C. Kuszmaul
efe394f6b7
Finish cleanup. Addresses #855 , #856 .
...
git-svn-id: file:///svn/tokudb@4348 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-03 20:06:03 +00:00
Bradley C. Kuszmaul
d3815694af
Add a bdb-layer test for the regression introduced by [4330]. Addresses #855 , #856 .
...
git-svn-id: file:///svn/tokudb@4347 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-03 20:03:29 +00:00
Yoni Fogel
f9982d4a47
Addresses #855 , #856 .
...
Bugfix in integration of omt cursors.
We were considering provdel leaf entries as not deleted.
git-svn-id: file:///svn/tokudb@4343 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-03 16:45:15 +00:00
Yoni Fogel
43d9a43f20
Addresses #855 , #856 . Reworked ExpectedO(1) cursors to be as close
...
as possible to the O(logn) cursors.
Semantics are now as close as possible, and may be a little faster now.
git-svn-id: file:///svn/tokudb@4339 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-03 04:25:28 +00:00
Yoni Fogel
2e01e6d00d
Addresses #855 , #856 . Invalidates cursor on a failed toku_omt_find
...
git-svn-id: file:///svn/tokudb@4337 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-03 03:42:56 +00:00
Yoni Fogel
540d7247cd
Addresses #855 , #856 . More 0s become NULLs. toku_omt_cursor_prev checks for index = 0
...
so that it can invalidate and return EINVAL (since index is unsigned)
git-svn-id: file:///svn/tokudb@4336 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-03 02:23:39 +00:00
Yoni Fogel
352566ea2f
Addresses #855 , #856 . Standardize index to be unsigned, 32 bits. Used NULL instead of 0
...
git-svn-id: file:///svn/tokudb@4335 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-03 02:10:40 +00:00
Bradley C. Kuszmaul
77639084ce
Get rid of ERANGE in favor of EINVAL. And fix up a couple of test cases. Addresses #855 , #856 .
...
git-svn-id: file:///svn/tokudb@4333 c7de825b-a66e-492c-adef-691d508d4ae1
2008-06-03 01:28:40 +00:00