Commit graph

2698 commits

Author SHA1 Message Date
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
Rich Prohaska
c9ed5c989f remove varray closes[t:2186]
git-svn-id: file:///svn/toku/tokudb@15923 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:53 -04:00
Rich Prohaska
4c337193b6 rename __rolltmp to __tokudb_rolltmp closes[t:2184]
git-svn-id: file:///svn/toku/tokudb@15884 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:53 -04:00
Barry Perlman
0af18bc8ff Addresses #2165 refs[t:2165] Test that env->dbremove() and env->dbrename() return correct error code when given a zombie db.
git-svn-id: file:///svn/toku/tokudb@15879 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
1087f50bdd addresses #2169 refs[t:2169] Set tests as XFAIL till this ticket is done
git-svn-id: file:///svn/toku/tokudb@15876 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:53 -04:00
Rich Prohaska
b89eb6ef9e speed up recovery by using a large cache table closes[t:2183]
git-svn-id: file:///svn/toku/tokudb@15875 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:53 -04:00
Rich Prohaska
6196e6efca cleanup recovery fprintf strings refs[t:2177]
git-svn-id: file:///svn/toku/tokudb@15870 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:53 -04:00
Yoni Fogel
441c408d30 Addresses #652 refs[t:652] fixed recover test (changed expectation)
git-svn-id: file:///svn/toku/tokudb@15857 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:53 -04:00
Barry Perlman
c1293b73a8 Addresses #652 refs[t:652] Improve error reporting, symbol names
git-svn-id: file:///svn/toku/tokudb@15853 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:53 -04:00
Yoni Fogel
86013379fe Addresses #2164 refs[t:2164] Zombie locking rename does not check newname
only way for that to be open is if it was deleted, and checkpoint holds it open (which is not an issue to prevent rename).

Also, when renamed, the list of zombie dbs is updated with the new dname.

git-svn-id: file:///svn/toku/tokudb@15852 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:53 -04:00
Yoni Fogel
01331f39e4 Remove bdb build issues
git-svn-id: file:///svn/toku/tokudb@15850 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:52 -04:00
Yoni Fogel
972e1f6cf2 addresses #2155 refs[t:2155] Reverse part of r15848.
We run 'backward' recovery and 'forward recovery' on the item we turn around on, so do not set 'forward saw checkpoint begin' state
till we're in forward recovery.

git-svn-id: file:///svn/toku/tokudb@15849 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:52 -04:00
Yoni Fogel
3ab29cbd36 Addresses #2155 refs[t:2155] Renamed variables,
Added missing state transaction (turn around on checkpoint begin with no transactions)
Added error checking for unlink (anything but 0/ENOENT is real error)

Changes due to code review with Barry

git-svn-id: file:///svn/toku/tokudb@15848 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:52 -04:00
Rich Prohaska
9bc0fed827 port to windows refs[t:2170]
git-svn-id: file:///svn/toku/tokudb@15847 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:52 -04:00
Rich Prohaska
0054c5cceb add sensible recovery tracing refs[t:2177]
git-svn-id: file:///svn/toku/tokudb@15845 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:52 -04:00
Yoni Fogel
6b7c5bdfff Closes #2155 closes[t:2155] Forward recovery split
* Before 'checkpoint begin'
  * fcreate
   * Will not create (treated as fopen)
   * Will not delete file
   * Will force rollback entry of fcreate (if file exists)
 * After checkpoint begin
  * fcreate
   * Will create
   * Will first delete file
   * Will force rollback entry of fcreate (if file exists)



git-svn-id: file:///svn/toku/tokudb@15844 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:52 -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
Barry Perlman
bb8cf498bd Addresses #652, #2170, #2178 refs[t:652,2170,2178] Merge from 3.0.0-logging branch with command: svn merge -r15784:HEAD https://svn.tokutek.com/tokudb/mysql.branches/3.0.0-logging/tokudb .
git-svn-id: file:///svn/toku/tokudb@15839 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:52 -04:00
Rich Prohaska
77175fc1b0 test recovery of table locks refs[t:2006]
git-svn-id: file:///svn/toku/tokudb@15830 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:52 -04:00
Rich Prohaska
aae91f17ac fix some bdb tests closes[t:2175]
git-svn-id: file:///svn/toku/tokudb@15826 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:52 -04:00
Rich Prohaska
7ac59d04df add fsync time to the fair scheduler closes[t:2170]
git-svn-id: file:///svn/toku/tokudb@15815 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:52 -04:00
Rich Prohaska
07c509c3c4 fix the build of db-benchmark-test-cxx closes[t:2174]
git-svn-id: file:///svn/toku/tokudb@15814 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:52 -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
Barry Perlman
5cae0d0bbd Closes #2171 refs[t:2171] Add version info to persistent environment, create hook for environment update.
git-svn-id: file:///svn/toku/tokudb@15795 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:52 -04:00
Rich Prohaska
58cf363b8d speedup the db-benchmark-test buffer generator refs[t:2123]
git-svn-id: file:///svn/toku/tokudb@15775 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
ea21545874 Cleanup
git-svn-id: file:///svn/toku/tokudb.2037b@15764 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:07 -04:00
Rich Prohaska
8ce671ca1f fix the cxx build on the 2037b branch closes[t:2167]
git-svn-id: file:///svn/toku/tokudb.2037b@15759 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -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
a4f65b1154 Comment
git-svn-id: file:///svn/toku/tokudb.2037b@15739 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00
Barry Perlman
5035a3f718 Adresses #2037 refs[t:2037] Verify correct error codes for miscellaneous illegal operations.
git-svn-id: file:///svn/toku/tokudb.2037b@15737 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00
Rich Prohaska
7d0f2d1da3 compile on 32 bit linux refs[t:2124]
git-svn-id: file:///svn/toku/tokudb.2037b@15723 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
b3df0166e4 Closes #2158 closes[t:2158] Backwards recovery of fcreate does fclose (just like backwards fopen)
git-svn-id: file:///svn/toku/tokudb.2037b@15692 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
Barry Perlman
28752b831d Addresses #2037 refs[t:2037] Add test to verify correct use of directory range locks."
git-svn-id: file:///svn/toku/tokudb.2037b@15681 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00
Yoni Fogel
d87b38ebd0 Addresses #2124 refs[t:2124] Windows port of 'crash on diskfull'
git-svn-id: file:///svn/toku/tokudb.2037b@15678 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00
Yoni Fogel
841b72e176 Addresses #2150 refs[t:2150] Fix compile
git-svn-id: file:///svn/toku/tokudb.2037b@15677 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00
Yoni Fogel
a761b42336 Fixes #2124 closes[t:2124] On disk full, we print an error and abort (fail assert).
git-svn-id: file:///svn/toku/tokudb.2037b@15676 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00
Yoni Fogel
94fa27990c Addresses #2120 refs[t:2120] Internally created child transactions now copy parent's isolation level
git-svn-id: file:///svn/toku/tokudb.2037b@15675 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00
Yoni Fogel
273b614b1c Addresses #2150 refs[t:2150] Fix windows version of ydb lock.
Ydb lock was not being grabbed due to confusion with conditional compiling.
YDB lock is now taken/released if the fair scheduling code is not active

git-svn-id: file:///svn/toku/tokudb.2037b@15674 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00
Yoni Fogel
02789ec6c7 Closes #2120 closes[t:2120] Enforce that child transactions have same isolation level as parent's txn
git-svn-id: file:///svn/toku/tokudb.2037b@15672 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00
Yoni Fogel
f4227d1e39 addresses #2149 refs[t:2149] Add extra test for open db handles in
ENV->db(rename|remove) to prevent race conditions in the future.

git-svn-id: file:///svn/toku/tokudb.2037b@15658 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00
Yoni Fogel
7c1150b9b6 Addresses #2037 refs[t:2037] Added comments on transactional fileops tests, minor changes from code review.
git-svn-id: file:///svn/toku/tokudb.2037b@15657 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00
Barry Perlman
d817c605df Addresses #2075 refs[t:2075] Give all ydb-level test programs the ability to print engine status (when verbose).
git-svn-id: file:///svn/toku/tokudb.2037b@15654 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00
Barry Perlman
469926e445 Addresses #2037 refs[t:2037] Added test for transactional fileops.
git-svn-id: file:///svn/toku/tokudb.2037b@15647 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:58:06 -04:00