Yoni Fogel
35090f156a
Addresses #1691 Fix bug where abort(truncate) could crash us.
...
Remove transactions' need to count references to cachefiles (they already have references to brts)
Errors in rolling back certain functions were ignored (r = blah; return something_else);
They are now reported, so diskfull had to be updated to expect ENOSPC under certain circumstances.
git-svn-id: file:///svn/toku/tokudb@11371 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:50 -04:00
Rich Prohaska
81d6b8f213
another root fifo test case. addresses #1691
...
git-svn-id: file:///svn/toku/tokudb@11370 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:50 -04:00
Yoni Fogel
bba8a8a3c7
Addresses #1691 Txn that created or locked when empty is now per dictionary (in header instead of brt)
...
We clear it when the transaction closes (this means we cannot change it when it is already set till that transaction finishes).
This fixes a crash in windows in root_fifo_2.tdb
git-svn-id: file:///svn/toku/tokudb@11365 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:50 -04:00
Rich Prohaska
05a88a4784
add --checkpoint-period to db-benchmark-test. closes #1702
...
git-svn-id: file:///svn/toku/tokudb@11361 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:50 -04:00
Rich Prohaska
0e465396a8
fixup root_fifo tests. addresses #1691
...
git-svn-id: file:///svn/toku/tokudb@11360 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:50 -04:00
Yoni Fogel
140f8d751d
Streamline makefile for windows
...
git-svn-id: file:///svn/toku/tokudb@11359 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:50 -04:00
Barry Perlman
9d934a9e44
Addresses #1510 Added tests that open/insert/close unrelated dictionary during checkpoint.
...
git-svn-id: file:///svn/toku/tokudb@11346 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:50 -04:00
Barry Perlman
a6aae346c4
Addresses #1510 Add test that dictionary being checkpointed can be closed during a checkpoint.
...
git-svn-id: file:///svn/toku/tokudb@11345 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:50 -04:00
Barry Perlman
4f91cd57cd
Addresses #1510 Add more checkpoint testing.
...
Verify that inserts done during checkpoint do not appear
in checkpoint snapshot but do appear in dictionary after
checkpoint is complete.
git-svn-id: file:///svn/toku/tokudb@11344 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:50 -04:00
Barry Perlman
d560f9c9a4
Addresses #1697 Incorrect value was used to set new file size
...
in logic that shrinks files (to free disk space) when possible.
git-svn-id: file:///svn/toku/tokudb@11340 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:50 -04:00
Yoni Fogel
7060dff3b5
Windows port
...
git-svn-id: file:///svn/toku/tokudb@11339 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:50 -04:00
Yoni Fogel
fad8c20000
Addresses #1640 Bugfixes in rwlock (windows) implementation.
...
git-svn-id: file:///svn/toku/tokudb@11338 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:50 -04:00
Yoni Fogel
91fd49318c
Windows ports Addresses #1665
...
git-svn-id: file:///svn/toku/tokudb@11337 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:50 -04:00
Yoni Fogel
fe30f59982
Fix typo = -> ==
...
git-svn-id: file:///svn/toku/tokudb@11336 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:50 -04:00
Yoni Fogel
86df71b858
Fix Makefile for new tdb-only tests
...
git-svn-id: file:///svn/toku/tokudb@11335 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Yoni Fogel
74efd7aa38
Addresses #1665 Windows port of minicron
...
git-svn-id: file:///svn/toku/tokudb@11334 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Rich Prohaska
4d2ba39e35
add some tests for the removal of the root fifo. addresses #1691
...
git-svn-id: file:///svn/toku/tokudb@11326 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Rich Prohaska
d828d60b87
add db_env_set_checkpoint_callback to the tokuglobals. closes #1695
...
git-svn-id: file:///svn/toku/tokudb@11323 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Barry Perlman
4784ac1f0b
Hold checkpoint_safe lock when setting callback, clear callback at end of test.
...
git-svn-id: file:///svn/toku/tokudb@11320 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Barry Perlman
51ba43f193
Added test to scribble over a database while it is being checkpointed. (Uses checkpoint callback mechanism to guarantee timing.)
...
git-svn-id: file:///svn/toku/tokudb@11316 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Barry Perlman
de9f15e8fc
Added test for checkpoint callback.
...
git-svn-id: file:///svn/toku/tokudb@11315 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Barry Perlman
86f1706897
Added mechanism for using checkpoint callback, for testing only.
...
git-svn-id: file:///svn/toku/tokudb@11314 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Barry Perlman
f270c379c3
Added mechanism for using checkpoint callback, for testing only.
...
git-svn-id: file:///svn/toku/tokudb@11313 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Barry Perlman
5cd246bed3
Fix Makefile for new tdb-only tests
...
git-svn-id: file:///svn/toku/tokudb@11312 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Yoni Fogel
ecbb6d4ce4
Addresses #1694 Moved some (reused) items from test_db_descriptor.c to test.h
...
Added first checkpoint test
git-svn-id: file:///svn/toku/tokudb@11311 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Yoni Fogel
72469007bf
Fix typo in error message
...
git-svn-id: file:///svn/toku/tokudb@11310 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Yoni Fogel
358afe6814
Addresses #1692 Fixes the crash.
...
A memory leak is exposed by src/tests/root_fifo_1.c
It gets cleaned up when the transaction commits, but our VM could grow unbounded meanwhile
git-svn-id: file:///svn/toku/tokudb@11309 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Rich Prohaska
f7ed22c3a8
another root fifo test
...
git-svn-id: file:///svn/toku/tokudb@11308 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Rich Prohaska
07b019abae
a root fifo test
...
git-svn-id: file:///svn/toku/tokudb@11307 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Yoni Fogel
115a711093
Closes #1681 , Closes #1682 two-header choosing logic is more robust
...
version now comes before 'size' in header
Some cleanup/defined new error codes instead of '-1'
git-svn-id: file:///svn/toku/tokudb@11304 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Yoni Fogel
c743484ba1
Addresses #1665 minicron-test is quiet unless verbose is on
...
git-svn-id: file:///svn/toku/tokudb@11302 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -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
Yoni Fogel
82a33bb35c
Addresses #1683 Assert shutdown is not called twice on the same minicron
...
git-svn-id: file:///svn/toku/tokudb@11297 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Barry Perlman
79a2393ae5
Addresses #1510 Added callback to toku_checkpoint(), primarily intended for use in testing.
...
git-svn-id: file:///svn/toku/tokudb@11286 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Barry Perlman
fba0209490
Fixes #1683 Created separate toku_cachetable_minicron_shutdown() to be called when no locks are held. Note, toku_cachetable_close() still calls minicron_shutdown() if it was not already shut down to avoid rewriting tests.
...
git-svn-id: file:///svn/toku/tokudb@11285 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Yoni Fogel
aa12e43b83
Addresses #1683 Destroy lock when closing down.
...
git-svn-id: file:///svn/toku/tokudb@11282 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Yoni Fogel
e7c60ec3ed
Addresses #1683 Minor cleanup.
...
git-svn-id: file:///svn/toku/tokudb@11281 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:49 -04:00
Yoni Fogel
a9d1268ecd
Closes #1680 Moved assertion that cachefile is not in a checkpoint to when a cachefile actually closes
...
instead of just reducing reference count.
git-svn-id: file:///svn/toku/tokudb@11268 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:48 -04:00
Bradley C. Kuszmaul
ee25988186
Refs #1679 .
...
git-svn-id: file:///svn/toku/tokudb@11266 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:48 -04:00
Bradley C. Kuszmaul
d6ab1513e8
Merge the tokudb.1665 branch into the main line. Fixes #1665 .
...
{{{
svn merge -r 11185:11261 https://svn.tokutek.com/tokudb/toku/tokudb.1665
}}}
git-svn-id: file:///svn/toku/tokudb@11264 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:48 -04:00
Yoni Fogel
faa3df9e03
Addresses #1670 fix bug in descriptor versino upgrades.
...
If descriptor contents stay the same but version goes up, record new version (instead of ignore it).
git-svn-id: file:///svn/toku/tokudb@11263 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:48 -04:00
Rich Prohaska
2911855051
use __restrict on linux to accomodate c++ programs. closes #1678
...
git-svn-id: file:///svn/toku/tokudb@11262 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:48 -04:00
Bradley C. Kuszmaul
0982c11fbf
Remove spurious cxx test output. Fixes #1675 .
...
git-svn-id: file:///svn/toku/tokudb@11230 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:48 -04:00
Bradley C. Kuszmaul
17e5214663
Refs #1529 .
...
git-svn-id: file:///svn/toku/tokudb@11223 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:48 -04:00
Bradley C. Kuszmaul
6855f750d5
Refs #1529 .
...
git-svn-id: file:///svn/toku/tokudb@11222 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:48 -04:00
Bradley C. Kuszmaul
1ed3f26d65
Add #ident Id info to all the newbrt/*.c and newbrt/*.h files. Refs #1529 .
...
git-svn-id: file:///svn/toku/tokudb@11221 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:48 -04:00
Bradley C. Kuszmaul
10fd4a3d1c
Missed one. Refs #1673 .
...
git-svn-id: file:///svn/toku/tokudb@11219 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:48 -04:00
Bradley C. Kuszmaul
1c2996546d
Merge in [11215], Refs #1672 . Consolidate tdiff. Fixes #1673 .
...
git-svn-id: file:///svn/toku/tokudb@11217 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:48 -04:00
Yoni Fogel
48245c848f
Addresses #1670
...
Serialize descriptor with each brtnode (leaf and nonleaf)
Deserialize descriptor with each brtnode (to be thrown away).
Don't malloc+memdup the descriptor for brtnodes, since that would waste time.
git-svn-id: file:///svn/toku/tokudb@11200 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:48 -04:00
Yoni Fogel
1b96373aca
Addresses #1670 Standardized descriptor (de)serialization.
...
Added versioning to descriptor.
Changing a descriptor REQUIRES the version to increase.
Version 0 is reserved for a non-descriptor db. (cannot be set).
Not yet added to brtnodes.
Still possible to change descriptor with an open brt (which would not be upgraded).
git-svn-id: file:///svn/toku/tokudb@11198 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:48 -04:00