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
Dave Wells
0009757a37
merge changes to cachetable.c from tokudb.2445 [t:2444]
...
git-svn-id: file:///svn/toku/tokudb@18399 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
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
Rich Prohaska
dd4d1192ff
add checkpoint work in the cachetable to the wait time in get and pin. merge from 3.0.4 closes[t:2348]
...
git-svn-id: file:///svn/toku/tokudb@17819 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
Bradley C. Kuszmaul
f27cc8fa09
Fixes #2323 by getting rid of gcc warnings. closes[t:2323]
...
git-svn-id: file:///svn/toku/tokudb@17147 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:59 -04:00
Barry Perlman
887a53259d
Addresses #2090 refs[t:2090] Bugfix in cachetable_reserve_filenum(), added test program to exercise filenum reservation/release.
...
git-svn-id: file:///svn/toku/tokudb@15963 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:54 -04:00
Rich Prohaska
e8a671d611
imp toku_file_fsync in the port layer closes[t:1748]
...
git-svn-id: file:///svn/toku/tokudb@15805 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:52 -04:00
Yoni Fogel
357ebc950d
Addresses #2172 refs[t:2172] Bugfix of commit r15040 (Addresses #2037 refs[t:2037])
...
Was not holding cachetable lock to access rwlock (whose mutex was cachetable lock).
This caused a race condition that you would sometimes grab the cachetable lock on exiting the lock but didn't have it before.
We believe this caused the deadlock
git-svn-id: file:///svn/toku/tokudb@15802 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:52 -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
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
a293c6dac5
Addresses #2090 refs[t:2090] Bugfix in reserving filenums during recovery.
...
Use filenum provided.
git-svn-id: file:///svn/toku/tokudb.2037b@15646 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
Barry Perlman
97fa5e2467
Addresses #2075 , #2094 refs[t:2075] refs[t:2094]
...
Merge 2.2.0 scheduling statistics to 3.0.0 (#2075 ).
Restore #2094 fix to 3.0.0 (cachefiles_lock).
Command line for merge (executed in tokudb.2037b, ../tokudb.2.2.0 is local sandbox image of 2.2.0 release): svn merge -r14900:HEAD ../tokudb.2.2.0
git-svn-id: file:///svn/toku/tokudb.2037b@15629 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00
Rich Prohaska
6f6974aae9
port fairsched from 2.2.0 to main (for linux only) refs[t:2083]
...
git-svn-id: file:///svn/toku/tokudb@15573 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:04 -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
Barry Perlman
c8b8e42194
Addresses 1792 refs[t:1792] Add more info to show engine status
...
git-svn-id: file:///svn/toku/tokudb@14804 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:03 -04:00
Rich Prohaska
8e8c68250c
add some perf counters to the cachetable [t:1792]
...
git-svn-id: file:///svn/toku/tokudb@14801 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:03 -04:00
Barry Perlman
4ed4cdb854
Addresses 1792 refs[t:1792] Further implementation of show engine status
...
git-svn-id: file:///svn/toku/tokudb@14742 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
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
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
Barry Perlman
554596ce59
Addresses #1993 refs[t:1993] Added second callback to checkpoint.
...
git-svn-id: file:///svn/toku/tokudb@14369 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
Yoni Fogel
6e14e934fa
Addresses #1963 , #1866 refs[t:1963] refs[t:1866] Minor optimizations to maybe_get_and_pin_clean, associate with shortcut query
...
git-svn-id: file:///svn/toku/tokudb@14169 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:59 -04:00
Barry Perlman
52b0848db8
Addresses #1963 refs[t:1963] (expected to be) minor optimizations to maybe_get_and_pin
...
git-svn-id: file:///svn/toku/tokudb@14131 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:59 -04:00
Rich Prohaska
3ab3cbbfcc
some progress on recovery close[t:1835]
...
git-svn-id: file:///svn/toku/tokudb@14112 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:59 -04:00
Rich Prohaska
584c66dca2
add a timestamp to the checkpoint begin and end log entries close[t:1855]
...
git-svn-id: file:///svn/toku/tokudb@13992 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:58 -04:00
Yoni Fogel
681c5dd336
Addresses #1866 List of live transactions (in logger) is now an omt instead of a linked list.
...
refs [t:1866]
git-svn-id: file:///svn/toku/tokudb@13604 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:56 -04:00
Bradley C. Kuszmaul
719786c001
Fixes #1848 (add parent txn to xstillopen).
...
git-svn-id: file:///svn/toku/tokudb@13131 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:55 -04:00
Bradley C. Kuszmaul
59c5ea00e0
Merge 1781 back to main line. Closes #1781 (since #1781 involves creating a test.) There is a bug exposed by the x2.tdb test, but actually making the x2 test run right is a separate issue (Refs #1823 ).
...
{{{
svn merge -r 12282:12548 https://svn.tokutek.com/tokudb/toku/tokudb.1781
}}}
git-svn-id: file:///svn/toku/tokudb@12860 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:54 -04:00
Rich Prohaska
a255cd1672
build with icc on linux
...
git-svn-id: file:///svn/toku/tokudb@12742 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:54 -04:00
Yoni Fogel
bc9fd74c80
Merge 2.0.0 back into main
...
svn merge --accept=postpone -r 12123:12373 ../../mysql.branches/2.0.0/tokudb/
git-svn-id: file:///svn/toku/tokudb@12375 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:53 -04:00
Bradley C. Kuszmaul
6c211758b1
Merge 1767 into main line (including 1768 and 1627 fixes) and delete 1767 branch. Fixes #1767 . Refs #1768 , 1627.
...
git-svn-id: file:///svn/toku/tokudb@12140 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:53 -04:00
Yoni Fogel
845f7c37bb
Addresses #1765 , #1730 , #1733 , Merge 12079:12119 from 2.0.0 into main
...
git-svn-id: file:///svn/toku/tokudb@12121 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:53 -04:00
Yoni Fogel
049c7625a3
Addresses #1765 Merge [12079] into main (pthreads-win32 for windows)
...
git-svn-id: file:///svn/toku/tokudb@12081 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:53 -04:00
Barry Perlman
7568a5a895
Addresses #1745 Merge fix from 2.0.0 branch into main with command svn merge -c 11736 ../../mysql.branches/2.0.0/tokudb (inside toku/tokudb)
...
git-svn-id: file:///svn/toku/tokudb@11756 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:52 -04:00
Rich Prohaska
c21fa48316
merge more of 1735 to main. addresses #1735
...
git-svn-id: file:///svn/toku/tokudb@11732 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:52 -04:00
Barry Perlman
2197511394
Add some debug info
...
git-svn-id: file:///svn/toku/tokudb@11715 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:52 -04:00
Barry Perlman
ff57e4c617
Fixes #1735 Merge from tokudb.1735 to main with command:
...
svn merge -r11656:HEAD ../tokudb.1735 (executed in main sandbox)
git-svn-id: file:///svn/toku/tokudb@11714 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:52 -04:00
Barry Perlman
9beaf96697
Improved comments only
...
git-svn-id: file:///svn/toku/tokudb@11700 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:52 -04:00
Barry Perlman
0124e8fe7d
Addresses #1736 , #1398 Move extern declaration of STRADDLE_HACK_INSIDE_CALLBACK from cachetable.c to cachetable.h to allow build on Windows.
...
git-svn-id: file:///svn/toku/tokudb@11660 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:51 -04:00
Barry Perlman
646141a74c
Addresses #1736 , #1398 When inside straddle_hack callback don't use normal rwlock_read_lock for get_and_pin, but simply increment reader count instead. This prevents deadlock where callback waits for end_checkpoint to release write lock, but while end_checkpoint waits for callback to release read lock.
...
git-svn-id: file:///svn/toku/tokudb@11658 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:51 -04:00
Yoni Fogel
61a2a36b8c
Addresses #1730 Put in attempted fix for race condition.
...
Closign and opening a cachefile is now threadsafe (race condition when trying to open during a close).
If race condition hits, it will stall the open till the close is done.
All opens are now single threaded. This can be improved if it causes a bottleneck.
Added comments for possible future race conditions after lock refinement.
git-svn-id: file:///svn/toku/tokudb@11644 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:51 -04:00
Yoni Fogel
482ff6bd1b
Removed debug entry
...
git-svn-id: file:///svn/toku/tokudb@11569 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:51 -04:00
Yoni Fogel
46d1cde8f5
Addresses #1691 Further fixes to a race condition where refcounts in a cachefile were not protected by any lock.
...
See [11371] removed most of the causes of this (by limiting the places where refcount was edited).
Now (cachefile) refcounts are protected by the cachetable_lock.
git-svn-id: file:///svn/toku/tokudb@11408 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:50 -04:00
Yoni Fogel
c2d7fd1f8a
Fixes #1686 Added ydb-level functions to get/set interval for automatic recurring checkpointing.
...
git-svn-id: file:///svn/toku/tokudb@11298 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00