Commit graph

1008 commits

Author SHA1 Message Date
Rich Prohaska
52de2a3a7e test case for the invalidate recursion. addresses #1622
git-svn-id: file:///svn/toku/tokudb@10858 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:47 -04:00
Bradley C. Kuszmaul
9dc6fcc385 Candidate fix for #1632. Refs #1632.
git-svn-id: file:///svn/toku/tokudb@10848 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:47 -04:00
Bradley C. Kuszmaul
0630b6922c {{{db->stat64}}} now has all functionality required for #447.
Merge [10806] into tokudb.  Refs #1629, #447.
{{{
svn merge -r10805:10806 https://svn.tokutek.com/tokudb/toku/tokudb.1629
}}}


git-svn-id: file:///svn/toku/tokudb@10807 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:47 -04:00
Bradley C. Kuszmaul
da0efde586 Merge in 1591 and fix conflicts. Fixes #1591.
{{{
svn merge -r10512:10803 https://svn.tokutek.com/tokudb/toku/tokudb.1591
}}}


git-svn-id: file:///svn/toku/tokudb@10804 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:47 -04:00
Yoni Fogel
0d081b83da Addresses #1626 Add test1626 to list of tests in Makefile
git-svn-id: file:///svn/toku/tokudb@10778 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:46 -04:00
Yoni Fogel
caff96a622 Fixes #1626 Flags array is updated when removing a subdb. Added test that verifies fix
git-svn-id: file:///svn/toku/tokudb@10777 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:46 -04:00
Yoni Fogel
cab4fe72c8 Addresses #1617 Add byte-order verification to header. version/size of header is always stored in network order
version of log is always stored in network order
cleaned up toku_htod

git-svn-id: file:///svn/toku/tokudb@10723 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:46 -04:00
Yoni Fogel
b2991231d6 Addresses #1611 Log reading lsn now reads it as disk order instead of hardcoded network order.
Previous commit [10714] should say addresses #1611 instead of #10694

git-svn-id: file:///svn/toku/tokudb@10715 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:46 -04:00
Yoni Fogel
2a36852736 Addresses #10694 Modified recovery to use toku_dtoh32 instead of manual intel byteswap
Recovery was assuming network byte order on disk, intel byte order in memory, and hardcoding a ntohl (not even calling ntohl).
This fixes the recovery tests with intel byte order on disk

git-svn-id: file:///svn/toku/tokudb@10714 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:46 -04:00
Yoni Fogel
4860352fb8 Addresses #1611 toku_htod32 and toku_dtoh32 replace htonl and ntohl (for internal use).
d stands for disk-byte-order (as opposed to n for network-byte-order)
Disk-byte-order set as Intel byte order for now

git-svn-id: file:///svn/toku/tokudb@10694 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:46 -04:00
Rich Prohaska
75adfb68c7 build with icl on windows. closes #1608
git-svn-id: file:///svn/toku/tokudb@10663 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:46 -04:00
Rich Prohaska
f87a582938 fix a 32/64 bit compile issue. addresses #1489
git-svn-id: file:///svn/toku/tokudb@10644 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:46 -04:00
Rich Prohaska
9d20502817 merge 1489 to main. addresses #1489
git-svn-id: file:///svn/toku/tokudb@10639 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:46 -04:00
Yoni Fogel
2df4d345e6 Addresses #1590 copying out lsn is non-ignorable overhead. Logging functions now copy out lsn
git-svn-id: file:///svn/toku/tokudb@10522 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:46 -04:00
Yoni Fogel
f84c352b63 Addresses #1590 Remove most of the logging overhead when we don't write log files.
git-svn-id: file:///svn/toku/tokudb@10507 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:46 -04:00
Yoni Fogel
29854b7c7e Addresses #1577 Fix calculation of total memory size of a memarena
Use size of memarena struct instead of memarena pointer.
Include size of the 'other_bufs' array in size calculation.

git-svn-id: file:///svn/toku/tokudb@10500 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:46 -04:00
Yoni Fogel
b97ed02dfe Addresses #1577 Don't forget about buffers in memarena when one buffer gets full
git-svn-id: file:///svn/toku/tokudb@10499 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:45 -04:00
Yoni Fogel
68a6285528 Addresses #1531 tdb-recover calls brt_init/destroy as necessary
git-svn-id: file:///svn/toku/tokudb@10493 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:45 -04:00
Yoni Fogel
3cec87fc6a Addresses #1531 linux port (fix compile) of [10491]
git-svn-id: file:///svn/toku/tokudb@10492 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:45 -04:00
Yoni Fogel
c191b67324 Addresses #1531 Ported stat/fstat. toku_stat, toku_fstat (struct is toku_struct_stat), poisoned the use of the functions
git-svn-id: file:///svn/toku/tokudb@10491 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:45 -04:00
Rich Prohaska
8df1c07ddb speed up leafentry_disksize. addresses #1585
git-svn-id: file:///svn/toku/tokudb@10482 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:45 -04:00
Yoni Fogel
52819f0e4d Fix regression where we would not pass some memarenas to a parent transactions. Fixes #1577
git-svn-id: file:///svn/toku/tokudb@10456 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:45 -04:00
Yoni Fogel
7ccbae3c9f Closes #1582 Dirty bit allows 10 characters for process/thread id.
git-svn-id: file:///svn/toku/tokudb@10424 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:45 -04:00
Bradley C. Kuszmaul
682405a0f6 Fixes #1580. logformat now only runs once.
git-svn-id: file:///svn/toku/tokudb@10417 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:45 -04:00
Bradley C. Kuszmaul
426f087123 Make a test for #1572. This test causes the assertion reported by kayak to fail in the old code, but doesn't fail in the new code.
{{{
log.c:1125 toku_txn_note_brt: Assertion `(TOKUTXN)txnv==txn' failed
}}}
Fixes #1572.


git-svn-id: file:///svn/toku/tokudb@10416 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:45 -04:00
Bradley C. Kuszmaul
22e4312701 test1572 doesn't really test #1572 yet, but it did point out #1577. Now we are more careful about memory management in the rollback logs, so that we don't blow out memory. Fixes #1577. Refs #1572.
git-svn-id: file:///svn/toku/tokudb@10397 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:45 -04:00
Yoni Fogel
2ad6f1330c Addresses #1576 Remove 'return a-b' comparison trick from default key compare function
git-svn-id: file:///svn/toku/tokudb@10394 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:45 -04:00
Yoni Fogel
603221c685 Addresses #1576 Removed (return a-b) comparison trick in tests, added comments about the issue
git-svn-id: file:///svn/toku/tokudb@10392 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:45 -04:00
Yoni Fogel
784f4eb22c Closes #1575 Added toku_omt_create_steal_sorted_array
git-svn-id: file:///svn/toku/tokudb@10378 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:45 -04:00
Yoni Fogel
bad2519b8a Closes #1572 find_xid now defines a total order on TXNIDs
git-svn-id: file:///svn/toku/tokudb@10374 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:45 -04:00
Yoni Fogel
42f2f8d1a3 Merged windows compile error fix from #1510
git-svn-id: file:///svn/toku/tokudb@10346 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:44 -04:00
Bradley C. Kuszmaul
9bdd6eaf62 All the old recovery tests work (#1364), and are merged onto the main line.
Refs #1510, Closes #1364.
This work was done on the 1510 branch, which we will create again.


git-svn-id: file:///svn/toku/tokudb@10313 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:44 -04:00
Bradley C. Kuszmaul
e4ee82ef92 Another fix for #1472 (if error_string is NULL we segfaulted.) Refs #1472.
git-svn-id: file:///svn/toku/tokudb@10310 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:44 -04:00
Bradley C. Kuszmaul
28e6ad3ecc Merge fix for #1472 from the 1472 branch, and delete the 1472 branch. Fixes #1472.
Note that svn seems to be putting a lot of bookkeeping info in {{{svn:mergeinfo}}}, but it seems harmless.
{{{
svn merge -r10281:10294 https://svn.tokutek.com/tokudb/toku/tokudb.1472
}}}


git-svn-id: file:///svn/toku/tokudb@10296 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:44 -04:00
Rich Prohaska
302f13a2a6 merge -r 10283:10284 tokudb.1559 tokudb. closes #1559
git-svn-id: file:///svn/toku/tokudb@10293 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:44 -04:00
Yoni Fogel
4200d18075 Addresses #1557 Made local functions static to remove icl warnigns
git-svn-id: file:///svn/toku/tokudb@10262 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:44 -04:00
Yoni Fogel
d9988c26b7 Closes #1557 Blocktable now has 1 lock per brt
git-svn-id: file:///svn/toku/tokudb@10254 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:44 -04:00
Yoni Fogel
7cae47dff4 Fixes #1542 h->dirty protected by the translation table lock
git-svn-id: file:///svn/toku/tokudb@10162 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:44 -04:00
Rich Prohaska
73286984c0 grab the write lock when a pair is selected for eviction from the cache table rather than grabbing it in the writer thread. this solves the keyrange-dupsort-unflat deadlock. closes #1536
git-svn-id: file:///svn/toku/tokudb@10150 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:44 -04:00
Rich Prohaska
70249e065f check the return value from toku-serialize_brtnode_to
git-svn-id: file:///svn/toku/tokudb@10134 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:44 -04:00
Rich Prohaska
2259c3e2f7 binary search the pivot keys in non-leaf nodes. addresses #1488
git-svn-id: file:///svn/toku/tokudb@10096 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:44 -04:00
Rich Prohaska
4f96393239 move the pwrite4g test to the portabilty layer. closes #1537
git-svn-id: file:///svn/toku/tokudb@10069 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:44 -04:00
Yoni Fogel
1e1031f1ce Addresses #1531 fix newbrt/ make checko2 in windows
git-svn-id: file:///svn/toku/tokudb@9961 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:43 -04:00
Rich Prohaska
827eefc89d merge pwrite4g.c from the 1519 branch. addresses #1519
git-svn-id: file:///svn/toku/tokudb@9798 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:43 -04:00
Yoni Fogel
e50cfa1034 Addresses #1519 poison off_t in windows
git-svn-id: file:///svn/toku/tokudb@9783 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:42 -04:00
Bradley C. Kuszmaul
55b3f5eb3a Test for toku_os_pwrite to see if it can write beyond 4GB. Addresses #1519.
git-svn-id: file:///svn/toku/tokudb@9777 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:42 -04:00
Yoni Fogel
7ddf7eda2d Addresses #1378 Closes #1514 Any error (non zero, non DB_NOTFOUND) return from a search in a child results
in early ending of the search

git-svn-id: file:///svn/toku/tokudb@9741 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:42 -04:00
Rich Prohaska
62b3c90af4 epic table scans are much faster with prefetch 2 ahead. closes #1513
git-svn-id: file:///svn/toku/tokudb@9727 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:42 -04:00
Bradley C. Kuszmaul
df17da8bd9 Log the enqroot properly. Refs #1510.
git-svn-id: file:///svn/toku/tokudb@9722 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:42 -04:00
Bradley C. Kuszmaul
5d9be4ddf1 Merge the simplified logging back to the main line, and get rid of the tokudb.1493a branch. Closes #1493.
git-svn-id: file:///svn/toku/tokudb@9719 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:57:42 -04:00