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
Yoni Fogel
d2576d5f71
Closes #2057 closes[t:2057] Add warnings about code that needs to remain in certain order to prevent recovery errors,
...
Fixed bug where lsn in header could be wrong (or crash during recovery).
git-svn-id: file:///svn/toku/tokudb@14856 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:03 -04:00
Rich Prohaska
46ae126764
panic brt's if recovery fails close[t:2035]
...
git-svn-id: file:///svn/toku/tokudb@14783 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:03 -04:00
Yoni Fogel
1f0a5815b1
Closes #1862 closes[t:1862] LSNs are logged/chosen during the actual close, if closed during recovery, the LSN is passed into close.
...
git-svn-id: file:///svn/toku/tokudb@14686 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:02 -04:00
Yoni Fogel
465065c60c
Addresses #1737 refs[t:1737] Mega abort/mega commit messages coded
...
These messages are broadcast to an entire dictionary, aborting/committing a particular transaction only.
git-svn-id: file:///svn/toku/tokudb@14571 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:02 -04:00
Rich Prohaska
9d4f1ee78e
fix some recovery tests close[t:2005] close[t:2010]
...
git-svn-id: file:///svn/toku/tokudb@14546 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:02 -04:00
Yoni Fogel
2fefaf6428
Closes #2003 closes [t:2003] add 'table lock on empty' log entry, and recovery logic for it.
...
git-svn-id: file:///svn/toku/tokudb@14489 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:01 -04:00
Yoni Fogel
1f72e6db67
Addresses #1936 refs[t:1936] Removed log_lsn/disk_lsn from nodes, added original version and version read from disk
...
Backwards compatibility for version 10 upgraded to support change (read lsns into void, set original/read_from_disk versions to 10 on read)
git-svn-id: file:///svn/toku/tokudb@14457 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:01 -04:00
Barry Perlman
ee339d03aa
Addresses #1987 , #1936 refs[t:1987] refs[t:1936] Insert broadcast commit on upgrade from version 10 to 11, record original version in new header field. Also fixed incorrect message type for broadcast commit.
...
git-svn-id: file:///svn/toku/tokudb@14430 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:01 -04:00
Rich Prohaska
c629cb29bf
recovery bind's to filenum's [t:1998]
...
git-svn-id: file:///svn/toku/tokudb@14425 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:01 -04:00
Rich Prohaska
8e214a919d
filter some operations during recovery close[t:1993]
...
git-svn-id: file:///svn/toku/tokudb@14421 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:01 -04:00
Barry Perlman
0860425ef6
Addresses #1987 refs[t:1987] API and implementation of broadcast commit (all xids) message.
...
Cleaned up BRT_CMD vs BRT_MSG, removed logger from query path.
git-svn-id: file:///svn/toku/tokudb@14376 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:00 -04:00
Barry Perlman
d69c552f03
Addresses #1987 refs[t:1987] Fully replace (rename) BRT_CMD with BRT_MSG (same struct) for consistency
...
git-svn-id: file:///svn/toku/tokudb@14372 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:00 -04:00
Rich Prohaska
68dc93d09b
fix some linux icc issues close[t:1975]
...
git-svn-id: file:///svn/toku/tokudb@14305 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:00 -04:00
Yoni Fogel
535754ec12
Closes #1973 closes[t:1973] Log entry for DELETE_ANY no longer wastes memory on 'value'
...
git-svn-id: file:///svn/toku/tokudb@14292 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:00 -04:00
Bradley C. Kuszmaul
ca1ed58974
The good stuff from #1884 up to changeset:14213. Refs #1884 . [t:1884].
...
* Block allocation is now first-fit.
* There is a better test for the block allocator.
* brt_stat64 returns data in a struct instead of a bunch of arguments.
* Nodes are set clean after serialization.
git-svn-id: file:///svn/toku/tokudb@14214 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:59 -04:00
Rich Prohaska
26c68b80d9
add treeflags to the fcreate log entry close[t:1965]
...
git-svn-id: file:///svn/toku/tokudb@14200 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:59 -04:00