Commit graph

511 commits

Author SHA1 Message Date
Bradley C. Kuszmaul
0c071258d7 Use a fast version of brt_is_empty. Refs #2919. [t:2919]
git-svn-id: file:///svn/toku/tokudb@23694 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:22 -04:00
Rich Prohaska
d1efe9da42 #2919 refs[t:2919] speed up brt_is_empty by applying a noop instead of an optimize message to the leaf nodes
git-svn-id: file:///svn/toku/tokudb@23677 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:22 -04:00
Zardosht Kasheff
c385edaa8f [t:2811], change stats to use le_keylen instead of le_latest_keylen
git-svn-id: file:///svn/toku/tokudb@23612 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:22 -04:00
Zardosht Kasheff
cc91ea8ca4 [t:2811], merge to main \!\!\!
git-svn-id: file:///svn/toku/tokudb@23495 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:22 -04:00
Bradley C. Kuszmaul
06d1c0e1eb Get rid of {{{TAGMALLOC}}}. Fixes #2912. close[t:2912]
git-svn-id: file:///svn/toku/tokudb@23493 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:22 -04:00
Yoni Fogel
0b0c76392a closes[t:1398] [t:2861] Remove more heaviside code (include straddle hacks) from newbrt
git-svn-id: file:///svn/toku/tokudb@23060 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:22 -04:00
Bradley C. Kuszmaul
1bfd207e32 Merge the fixes for #2862, #2861, and #2269 onto main. Fixes #2269, #2861, #2862. close[t:2269] close[t:2861] close[t:2862]
{{{
svn merge -r 23006:23042 https://svn.tokutek.com/tokudb/toku/tokudb.2862b
}}}
.


git-svn-id: file:///svn/toku/tokudb@23046 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:21 -04:00
Bradley C. Kuszmaul
684da3b6ba Merge changes to remove heaviside and straddle from the ydb layer. Fixes #2865. [t:2865].
{{{
svn merge -c22808 https://svn.tokutek.com/tokudb/toku/tokudb.2861
}}}
.


git-svn-id: file:///svn/toku/tokudb@22809 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:21 -04:00
Yoni Fogel
5134631d15 closes[t:2692] Fix two races that helgrind reports.
Technically neither one causes any problems.

git-svn-id: file:///svn/toku/tokudb@20881 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:18 -04:00
Yoni Fogel
5cd73a5828 [t:2641] Fix build (false positive uninitialized variables warning)
git-svn-id: file:///svn/toku/tokudb@20866 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:18 -04:00
Yoni Fogel
a9c554b353 [t:2641] Merge DB_READCOMMITTED bugfix (r20839) to main.
git-svn-id: file:///svn/toku/tokudb@20863 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:18 -04:00
Yoni Fogel
c9b2b066dd [t:2561] Merge tokudb.2561b to main. Disabled auto-upgrade and auto-upgrade tests
git-svn-id: file:///svn/toku/tokudb@20778 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:17 -04:00
Rich Prohaska
16cbf13ca2 closes[t:2445] fsync dirs after file creation
git-svn-id: file:///svn/toku/tokudb@20735 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:16 -04:00
Bradley C. Kuszmaul
a6e22aadac Merge in the 2623 branch to main. Closes #2623. close[t:2623]
{{{
svn merge -r 20428:20432 https://svn.tokutek.com/tokudb/toku/tokudb.2623
}}}
.


git-svn-id: file:///svn/toku/tokudb@20433 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:14 -04:00
Bradley C. Kuszmaul
661106bce3 Merge some changes back to main line (Refs #2623, #2631). [t:2623] [t:2631]
{{{
svn merge -r 20381:20412 https://svn.tokutek.com/tokudb/toku/tokudb.2623
}}}
.


git-svn-id: file:///svn/toku/tokudb@20413 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:13 -04:00
Barry Perlman
9b57707611 Closes #2498 [t:2498] Made DICTIONARY_ID 64 bits.
git-svn-id: file:///svn/toku/tokudb@20383 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:13 -04:00
Bradley C. Kuszmaul
28cc5d1ed9 Merge the changes from 2499d onto the main line. Fixes #2499. close[t:2499].
{{{
svn merge -r 19523:19895 https://svn.tokutek.com/tokudb/toku/tokudb.2499d
}}}
.


git-svn-id: file:///svn/toku/tokudb@19902 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:09 -04:00
Yoni Fogel
f935786f79 [t:2494] Merge remaining changes (minor optimizations) to main from read committed branch
git-svn-id: file:///svn/toku/tokudb@19628 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:07 -04:00
Yoni Fogel
8c34dda452 closes[t:2440] Merge #2440 to main.
closes[t:2512] merge #2512 to main
Delete dev branch

git-svn-id: file:///svn/toku/tokudb@19439 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:06 -04:00
Yoni Fogel
1bf7a7a403 closes[t:2449] [t:2484] Merge #2449 changes to main.
Rollback logs are now checkpointed.  There are no rolltmp files.


git-svn-id: file:///svn/toku/tokudb@19167 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:05 -04:00
Yoni Fogel
667e46d60c closes[t:2483] Fix recovery bug in loader.
checkpoint_lsn written to headers made by loader are now the fsynced 'load' log entry's lsn instead of MAX_UINT64

git-svn-id: file:///svn/toku/tokudb@19136 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:05 -04:00
Zardosht Kasheff
a87006b10c [t:2494], merge read committed to main
git-svn-id: file:///svn/toku/tokudb@19073 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:05 -04:00
Rich Prohaska
95035e9dde fix some icc on linux errors in the fractal tree refs[t:2500]
git-svn-id: file:///svn/toku/tokudb@18997 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:05 -04:00
Yoni Fogel
0db1dce5de [t:2480] Bugfix with setting descriptor during redirect.
git-svn-id: file:///svn/toku/tokudb@18808 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:04 -04:00
Yoni Fogel
d4bdc29194 [t:2216] Bugfix with load:
If a transaction does a load(oldname,newname), and commits, the xcommit log entry MUST
be fsynced, even if the user said we can turn off fsyncs.

This is similar to an fdelete done by a transaction.

git-svn-id: file:///svn/toku/tokudb@18789 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:04 -04:00
Yoni Fogel
416e8c43db [t:2249] Fix memory leak introduced in r18617 (merge of 2249)
git-svn-id: file:///svn/toku/tokudb@18618 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:03 -04:00
Yoni Fogel
b3f5306b41 [t:2249] Merge #2249 to main.
'load' entry and rollback/recovery,
single filename for brtloader and rest of brt
test-fsync

git-svn-id: file:///svn/toku/tokudb@18617 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:03 -04:00
Yoni Fogel
c6510b33fe closes[t:2463] Merge #2463 changes (r18552,18555) to main to fix race condition
with CACHEFILE->fd

git-svn-id: file:///svn/toku/tokudb@18612 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:02 -04:00
Bradley C. Kuszmaul
296fca6bed Contrary to r18222, the new group commit code was not on the main truck.
{{{
svn merge -r17893:18056 https://svn.tokutek.com/tokudb/toku/tokudb.2370c
}}}

Refs #2370, #2385.  [t:2370] [t:2385].


git-svn-id: file:///svn/toku/tokudb@18259 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:02 -04:00
Bradley C. Kuszmaul
178820a688 Merge changes from 2216a to main (except possibly for the windows subdirectory, which Yoni will do separately).
2216a is no longer valid.
Refs #2216. [t:2216].
{{{
svn merge -r17301:18179 https://svn.tokutek.com/tokudb/toku/tokudb.2216a/src/tests
}}}



git-svn-id: file:///svn/toku/tokudb@18181 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:01 -04:00
Yoni Fogel
83f0f54ea4 closes[t:2408] Merge branch #2408 back to main. Delete dev branch.
git-svn-id: file:///svn/toku/tokudb@18163 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:01 -04:00
Rich Prohaska
1c7b2bce90 merge parallel block compressor from 3.0.4 to main closes[t:2371]
git-svn-id: file:///svn/toku/tokudb@18038 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:00 -04:00
Yoni Fogel
adf3e7ae95 [t:2350] Added DB_NOOVERWRITE_NO_ERROR flag for DB->put.
Will return EINVAL for ENV->put_multiple.

Has same semantics as INSERT IGNORE in mysql.
(equivalently) Has same semantics as DB_NOOVERWRITE except that it returns 0 if there is a duplicate key error
instead of DB_KEYEXISTS

git-svn-id: file:///svn/toku/tokudb@17682 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:00 -04:00
Bradley C. Kuszmaul
56d2c6fdf8 Merge 2216 onto main (from 16706-17293) as
{{{
svn merge -r16706:17293 https://svn.tokutek.com/tokudb/toku/tokudb.2216
}}}

Refs #2216. [t:2216]


git-svn-id: file:///svn/toku/tokudb@17299 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:59 -04:00
Yoni Fogel
838e0e5b1c [t:2318] Merge #2318 back to main up to r17166
git-svn-id: file:///svn/toku/tokudb@17178 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:59 -04:00
Yoni Fogel
9557f27e82 Addresses #2249 [t:2249] Merge DB_ENV->put_multiple branch back onto main.
Fixed some makefile issues, ported recovery tests to use toku_hard_crash_on_purpose(), fixed db-benchmark-test to use default name
for 0th db

git-svn-id: file:///svn/toku/tokudb@16936 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:58 -04:00
Rich Prohaska
0ff48bb664 imp DB_TXN_SYNC ref[t:2190]
git-svn-id: file:///svn/toku/tokudb@15936 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:53 -04:00
Barry Perlman
e1877dbb59 Closes #2187 refs[t:2187] Call toku_checkpoint_destroy() from toku_brt_destroy().
git-svn-id: file:///svn/toku/tokudb@15931 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:53 -04:00
Rich Prohaska
f9ac445e55 delete logging cruft closes[t:2189]
git-svn-id: file:///svn/toku/tokudb@15929 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:53 -04:00
Yoni Fogel
223fc2395a Addresses #2164 refs[t:2164] Take brtheader lock when accessing zombie/live lists during fdelete on commit.
git-svn-id: file:///svn/toku/tokudb@15878 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:53 -04:00
Yoni Fogel
c3a51b5f34 Addresses #2164 refs[t:2164] Remove race condition from accessing live/zombie lists.
git-svn-id: file:///svn/toku/tokudb@15877 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:53 -04:00
Yoni Fogel
7d6f6fef69 Closes #2180 closes[t:2180] Recovery forces 'fcreate' in rollback log (when replaying fcreate log entry)
git-svn-id: file:///svn/toku/tokudb@15841 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:52 -04:00
Yoni Fogel
c943ab3b1c Addresses #2168 refs[t:2168] Skip fsync for transactions that have done no (modify) work.
i.e. only queries

git-svn-id: file:///svn/toku/tokudb.2037b@15766 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:07 -04:00
Yoni Fogel
18c2c68f7c Addresses #2164 refs[t:2164] Zombie locking contract now enforced in rename/remove
Checkpoint holds entire brt open (as zombie if necessary) instead of just holding open the cachefile.

git-svn-id: file:///svn/toku/tokudb.2037b@15740 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00
Yoni Fogel
86a917a99d Closes #2160 closes[t:2160] Implement forward and backward recovery for fdelete.
fopen forward recovery: file missing (ENOENT) is not considered an error.

git-svn-id: file:///svn/toku/tokudb.2037b@15693 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00
Yoni Fogel
a522ceda16 Closes #2153 refs[t:2153] fopen logged only once (unless closed and reopened). Removed logger from cachefile_close,
removed txnid from logging of fopen.

git-svn-id: file:///svn/toku/tokudb.2037b@15691 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00
Yoni Fogel
030df27e4d Addresses #2090 refs[t:2090] Logging for file create is done before actually creating file on disk.
We reserve a filenum before logging, and then use the reserved filenum when we actually open the cachefile.

git-svn-id: file:///svn/toku/tokudb.2037b@15645 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00
Yoni Fogel
88d66274a1 Closes #2128 closes[t:2128] List structure renamed to toku_list, same as header, and header moved
> to toku_include/.
> This is done to avoid poisoning namespace, and to be easily included by handlerton.

git-svn-id: file:///svn/toku/tokudb@15579 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:05 -04:00
Yoni Fogel
580f5caafb Addresses #2037 refs[t:2037] Merged #2037 back into main
git-svn-id: file:///svn/toku/tokudb@15562 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:04 -04:00
Rich Prohaska
6822031243 fix some linux build problems with icc 11 close[t:2088]
git-svn-id: file:///svn/toku/tokudb@15149 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:04 -04:00