summaryrefslogtreecommitdiff
path: root/src/btree
Commit message (Collapse)AuthorAgeFilesLines
* SERVER-21553 3.0 backport bug fix.Alex Gorrod2015-12-021-1/+1
| | | | Free the referenced block in the right place :(
* Merge branch 'mongodb-3.0' into server_21553_30backportAlex Gorrod2015-12-021-2/+2
|\
| * Merge pull request #2331 from wiredtiger/WT-2237Alex Gorrod2015-12-021-2/+2
| | | | | | | | | | | | WT-2237 Have threads publish unique transaction IDs so that updates always become visible immediately on commit. (cherry picked from commit 0a52a80a39fc47145fb755d792792ae820b266ed)
* | Merge pull request #2350 from wiredtiger/WT-2251-ref-addr-leakAlex Gorrod2015-12-021-0/+11
| | | | | | | | | | | | | | | | | | | | | | (cherry picked from commit e731ef8ab) Conflicts: src/btree/bt_discard.c src/btree/bt_slvg.c src/btree/bt_split.c src/evict/evict_page.c src/reconcile/rec_write.c
* | SERVER-21568 Fix a use after-freeAlex Gorrod2015-12-022-21/+41
| | | | | | | | | | | | | | (cherry picked from commit 2d01a566) Conflicts: src/btree/bt_split.c
* | SERVER-21553 Free blocks during reverse splits.Alex Gorrod2015-12-024-11/+7
|/ | | | | | | | | | | | (cherry picked from commit bff6525c8) Conflicts: src/btree/bt_discard.c src/btree/bt_slvg.c src/btree/bt_split.c src/evict/evict_page.c src/include/btree.i src/reconcile/rec_write.c
* WT-2195 Fix a hang after giving up on a reverse split.Michael Cahill2015-11-261-5/+15
|
* Merge pull request #2278 from wiredtiger/SERVER-21027-fixMichael Cahill2015-11-241-10/+7
| | | | | | SERVER-21027 Don't leave empty internal pages in the tree (cherry picked from commit ba931c1)
* Merge pull request #2271 from wiredtiger/reverse-split-fixAlex Gorrod2015-11-241-15/+10
| | | | | | SERVER-21027 Fix reverse splits to keep the original child ref locked (cherry picked from commit f4d20a3)
* Merge pull request #2260 from wiredtiger/reverse-splitsAlex Gorrod2015-11-244-11/+57
| | | | | | | | | | | SERVER-21027 Reverse split if there are many deleted pages (cherry picked from commit 35d46c3) Conflicts: src/btree/bt_delete.c src/btree/bt_read.c src/evict/evict_page.c
* SERVER-21063 Avoid creating deep trees for append-only workloads.Michael Cahill2015-10-221-56/+99
| | | | | | Merge pull request #1988 from wiredtiger/split-deepen-for-append (cherry picked from commit a98417879da9eacefecd74242fd3924b46e31183)
* Complete SERVER-16902 backport: in-memory splits during checkpoints.mongodb-3.0.7Michael Cahill2015-10-021-0/+6
| | | | | This change was partially backported already via changes to __wt_page_can_split, make it work for real.
* WT-2112: Boolean conversion pass over include.Michael Cahill2015-09-302-3/+3
| | | | | | Merge pull request #2221 from wiredtiger/more-bool (cherry picked from commit d76280fa1efc6452dd3200f4b0b3639009348118)
* WT-2126: page split lockingMichael Cahill2015-09-291-31/+106
| | | | | | Merge pull request #2210 from wiredtiger/wt2126 (cherry picked from commit 87c52d446eba66ef686b2144afe3d925c95297c1)
* WT-2112 Use bool in more placesMichael Cahill2015-09-295-14/+9
| | | | | | Merge pull request #2216 from wiredtiger/more-bool (cherry picked from commit 53638a10713925406f92d20fa840a94cd2cfa22a)
* WT-2122 Convert more expressions to use boolMichael Cahill2015-09-295-28/+27
| | | | | | Merge pull request #2208 from wiredtiger/more-bool (cherry picked from commit f1837bf787832c818d226df4c662093d124b01f8)
* Merge pull request #2209 from wiredtiger/more-bool-keithMichael Cahill2015-09-2923-264/+283
| | | | | WT-2122 more boolean conversion (cherry picked from commit 91deacba5a77db31216fccfb6bffdbe81375f0b4)
* WT-2093 Use the C99 bool type to clarify when functions return true/falseMichael Cahill2015-09-286-80/+46
| | | | | | Merge pull request #2178 from wiredtiger/use-bool (cherry picked from commit d9391c0df4dc38c8ea571bde4808ced194d7cff0)
* WT-2042 Only try to evict tombstones that are visible to all readers.Keith Bostic2015-09-182-8/+16
| | | | | | Merge pull request #2196 from wiredtiger/WT-2042 (cherry picked from commit 5ab26af636f8c6a5a86200d1c18f249d0749fc9a)
* WT-2105: If a corrupted WT_CELL_VALUE_COPY cell has an offset largerKeith Bostic2015-09-181-3/+3
| | | | | | | than the current cell's offset in the page, we'll read memory outside of the page image. (cherry picked from commit 0e96683fc65845c015ed6ee7249ea1d9c3c9a67e)
* WT-2045 Update a comment to match the failure.Keith Bostic2015-08-251-0/+5
| | | | (cherry picked from commit 7540ec4cb094e49bddf368eb8001c1fd4e47dce1)
* WT-2045: Avoid a potential deadlock in the eviction server.Keith Bostic2015-08-251-3/+12
| | | | | | | | | | | | | | | | | There are two places in the page-read code where a reading thread calls __wt_cache_eviction_check without first checking the WT_READ_NO_EVICT flag, and that can lead to deadlock. The case I have is a configuration with no eviction-worker threads, lots of eviction pressure, and so the application threads are busy doing eviction. The eviction server thread splits a page, is getting a hazard pointer on the parent, and for some reason can't get it immediately. The eviction server thread then gets pressed into doing more eviction, there are no pages on the queue because the application threads have emptied it, and things stall forever while the eviction server looks for pages on the empty eviction queue. (cherry picked from commit 7c8ce54f261faaf643ce5d063f27bb78db0c2cd8)
* Merge pull request #2112 from wiredtiger/wt-2025-inline-atomic-functionsMichael Cahill2015-08-196-20/+21
| | | | | WT-2025: inline atomic functions. (cherry picked from commit ada57c1ed44ab0dd4f904f60a63bbc77333b2baa)
* WT-2025 Assert that cursors are positioned for insertsKeith Bostic2015-08-062-2/+2
| | | | | Merge pull request #2106 from wiredtiger/cursor-positioned (cherry picked from commit c5c9936fb240c5bb4ec925f683476b7f075cfc78)
* Cleanup, fix LSM cursor assertion order.Michael Cahill2015-08-043-6/+6
|
* Merge pull request #2091 from wiredtiger/intl-page-emptyAlex Gorrod2015-08-041-3/+20
| | | | | SERVER-19522 Try to evict internal pages with no useful child pages. (cherry picked from commit fb8739f423a824b76e1a26cbaa28c1edaa2f2f7d)
* Merge pull request #2088 from wiredtiger/rand-strict-aliasDavid Hows2015-08-041-2/+2
| | | | | SERVER-19340 Avoid type aliasing in the random number generator. (cherry picked from commit 3ec45a7204e01a5ac176550fdfef30a7402046e8)
* Merge pull request #2077 from wiredtiger/checkpoint-file-fixesMichael Cahill2015-08-041-2/+2
| | | | | WT-2014 Checkpoint file fixes (cherry picked from commit c8633e610943865fa81fcd1e8242c6c9a80435c4)
* Merge pull request #2069 from wiredtiger/rewrite-err-use-after-freeAlex Gorrod2015-08-041-5/+7
| | | | | WT-1996 If there is an error applying updates during a page rewrite, don't free the first update (cherry picked from commit f8dc12bead0d8b3ea05144599d2ab218e5fbdb9a)
* Merge pull request #2071 from wiredtiger/page-refp-cleanupMichael Cahill2015-08-049-36/+92
| | | | | WT-1969 WT_REF.pindex_hint cleanup (cherry picked from commit 53c7cacbb6db699c7d23ad749359ffffc6ed99d1)
* WT-1969 Improve slot hints when traversing trees.Keith Bostic2015-07-131-0/+12
| | | | | | | | | | | | | The first thing when continuing a walk is look up the parent page's index slot, a fast operation if there's an accurate WT_REF.ref_hint value, otherwise it's an N/2 walk of the parent page's slots. The pindex slot we're looking at is the correct WT_REF.ref_hint value, set it before returning, otherwise traversing a tree with large internal pages, where the children have no WT_REF.ref_hint values, becomes an N-squared traversal of the internal page's index. (cherry picked from commit d693ef1f29c6c2a3486aa3d63a35727bdff96aff)
* WT-1982 Fix a window where reconciliation could go back in transaction time.Alex Gorrod2015-07-021-0/+12
| | | | (cherry picked from commit cd1704d6c4d84c5db8ae6b471c658945ffa226f9)
* Cherry pick naming fixups.Michael Cahill2015-06-291-2/+2
|
* WT-1907 Add a "soft update" of the oldest ID from application threads in ↵Michael Cahill2015-06-291-0/+3
| | | | | | case eviction isn't running (e.g., during forced eviction checks). (cherry picked from commit d93900e4da05ce100a9b3acf9a931415491ed31c)
* WT-1907 Improve performance of transaction refreshMichael Cahill2015-06-291-1/+1
| | | | (cherry picked from commit 5f8d5b4a84e36ae366fbee9a2026995af58e07a9)
* WT-1969 allow the root page to deepen regardless of how pages split.Keith Bostic2015-06-291-14/+2
| | | | (cherry picked from commit caa895321adb5df5e7a94763935ba9f6013185e6)
* SERVER-18829 Have pages start in the middle of the LRU queue for eviction.Alex Gorrod2015-06-291-1/+1
| | | | (cherry picked from commit d57dc26729bbc59c5bc3928aa90bb2ac3cd15d6d)
* WT-1959 Add the "strict" configuration option to WT_SESSION.verify, default ↵Keith Bostic2015-06-291-2/+2
| | | | | | false, don't error if we leak blocks unless strict is configured. (cherry picked from commit b3e3f19a08bbd8897dc0ba3f54b217292e35ea6b)
* Merge pull request #2001 from wiredtiger/compact-early-exitAlex Gorrod2015-05-291-1/+1
| | | | | Compact early exit (cherry picked from commit 1aa7725e24265ecc4cf86051227c64325ce53115)
* Merge pull request #1946 from wiredtiger/checkpoint-rewriteAlex Gorrod2015-05-254-2/+6
| | | | | Fix checkpoint visiting a page that was rewritten in memory (cherry picked from commit f3e73908a9e19a64648f509c5e0417b05853bca2)
* Merge pull request #1931 from wiredtiger/avoid-obsolete-checksAlex Gorrod2015-05-251-2/+12
| | | | | Avoid obsolete update checks during long-running transactions (cherry picked from commit 7677519536c9db9d7b86a8adca1a70a07d2e9747)
* If a file is marked cache-resident, it can never be evicted,Keith Bostic2015-04-271-2/+5
| | | | this fixes SERVER-18192.
* Rename WT_BTREE_NO_HAZARD to be WT_BTREE_IN_MEMORY, to better reflectKeith Bostic2015-04-271-3/+3
| | | | that it means permanently cache-resident.
* Always clear WT_BTREE_NO_HAZARD when cache_resident is not configured,Keith Bostic2015-04-271-1/+1
| | | | | | | | | otherwise we can (1) create a file with cache_resident configured (setting both no-eviction and no-hazard), (2) drop the file, then (3) re-create the file without cache_resident configured (clearing only no-eviction), and the result will be a file that can be evicted and where we aren't maintaining hazard pointers, and nothing good is going to happen after that.
* const: At condition ret == -1, the value of ret must be equal to -1.Keith Bostic2015-04-251-2/+1
| | | | | CID 72082 (#1 of 1): Redundant test (DEADCODE) dead_error_condition: The condition ret == -1 must be true.
* Merge branch 'develop' into checkpoint-closing-filesMichael Cahill2015-03-264-15/+16
|\ | | | | | | | | Conflicts: src/conn/conn_sweep.c
| * Merge pull request #1821 from markbenvenuto/windows_thread_fixAlex Gorrod2015-03-261-8/+9
| |\ | | | | | | Use beginthreadex, and ensure we use the correct C calling conventions in all callbacks
| | * Use beginthreadex, and ensure we use the correct C calling conventions in ↵Mark Benvenuto2015-03-251-8/+9
| | | | | | | | | | | | all callbacks
| * | whitespaceKeith Bostic2015-03-251-2/+1
| |/
| * Add a single set of fhandle flags for open and close. #1785Susan LoVerso2015-03-242-5/+6
| |