summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #2289 from wiredtiger/wt-1315-join-cursorMichael Cahill2015-11-1942-183/+2975
|\ | | | | WT-1315 Cursor join implementation
| * Merge branch 'develop' into wt-1315-join-cursorMichael Cahill2015-11-1911-126/+178
| |\ | |/ |/|
* | Merge pull request #2307 from wiredtiger/trunc-statsAlex Gorrod2015-11-1910-107/+153
|\ \ | | | | | | WT-2218 Add truncate stats
| * | WT-2218 Add fast-path delete stat.Susan LoVerso2015-11-185-31/+48
| | |
| * | Merge branch 'develop' into trunc-statsSusan LoVerso2015-11-1852-1108/+1660
| |\ \ | | | | | | | | | | | | | | | | Conflicts: src/include/wiredtiger.in
| * | | WT-2218 Add connection level stat for number of deleted pages.Susan LoVerso2015-11-175-23/+31
| | | |
| * | | WT-2218 Add truncate statsSusan LoVerso2015-11-168-107/+128
| | | |
* | | | Merge pull request #2314 from wiredtiger/WT-2224Michael Cahill2015-11-191-19/+25
|\ \ \ \ | |_|/ / |/| | | WT-2224 Track which deleted refs are discarded by a split.
| * | | WT-2224 Cleanup and fix.Michael Cahill2015-11-181-23/+16
| | | |
| * | | WT-2224 Track which deleted refs are discarded by a split.Michael Cahill2015-11-181-10/+23
|/ / /
| | * WT-1315 Fix a few script warnings about unused functions / macros.Michael Cahill2015-11-193-1/+4
| | |
| | * WT-1315 Change a few more size_t variables to u_int.Michael Cahill2015-11-191-6/+7
| | |
| | * Make test work with Python 2.6.Michael Cahill2015-11-181-2/+2
| | |
| | * Fix another warning:Michael Cahill2015-11-181-4/+4
| | | | | | | | | | | | | | | | | | ../src/session/session_api.c:654:12: error: declaration of 'index' shadows a global declaration [-Werror=shadow] (Note: these were not picked up earlier because Jenkins scheduled builds on a server with a different version of GCC).
| | * Another warning:Michael Cahill2015-11-181-0/+1
| | | | | | | | | | | | ../src/cursor/cur_join.c:1024:11: error: 'ins' may be used uninitialized in this function [-Werror=uninitialized]
| | * Fix another warning:Michael Cahill2015-11-181-0/+2
| | | | | | | | | | | | ../src/cursor/cur_join.c:1022:11: error: 'ins' may be used uninitialized in this function [-Werror=uninitialized]
| | * Fix -Wshadow warnings:Michael Cahill2015-11-182-8/+8
| | | | | | | | | | | | | | | | | | | | | ../src/cursor/cur_join.c: In function '__curjoin_entry_member': ../src/cursor/cur_join.c:623:12: error: declaration of 'index' shadows a global declaration [-Werror=shadow] ../src/cursor/cur_join.c: In function '__wt_curjoin_join': ../src/cursor/cur_join.c:891:15: error: declaration of 'index' shadows a global declaration [-Werror=shadow]
| | * Merge branch 'develop' into wt-1315-join-cursorMichael Cahill2015-11-1843-1041/+1513
| | |\ | |_|/ |/| | | | | Also fix some type conversion warnings.
* | | Merge pull request #2308 from wiredtiger/wt-2220-wt_timediffAlex Gorrod2015-11-1827-58/+67
|\ \ \ | | | | | | | | WT-2220 Split WT_TIMEDIFF macro into unit specific macros.
| * \ \ Merge branch 'develop' into wt-2220-wt_timediffKeith Bostic2015-11-1710-41/+136
| |\ \ \
| * | | | WT-2220: WT_TIMEDIFF_US doesn't appear in core WiredTiger, don'tKeith Bostic2015-11-171-2/+3
| | | | | | | | | | | | | | | | | | | | complain it's not used (it is used in wtperf).
| * | | | Merge pull request #2312 from wiredtiger/wt-2220-sueAlex Gorrod2015-11-1821-38/+42
| |\ \ \ \
| | * | | | WT-2220 Create WT_TIMEDIFF_US and fix use of constants.Susan LoVerso2015-11-1721-38/+42
| |/ / / /
| * | | | WT-2220 Split WT_TIMEDIFF macro into unit specific macros.Alex Gorrod2015-11-1710-22/+26
| | | | | | | | | | | | | | | | | | | | We regularly divide the results, encapsulate that better.
* | | | | Merge pull request #2272 from wiredtiger/wt-2182-split-up-the-tree-2Michael Cahill2015-11-1812-959/+1421
|\ \ \ \ \ | |_|/ / / |/| | | | WT-2182: when internal pages grow large enough, split them into their parents
| * | | | Merge branch 'develop' into wt-2182-split-up-the-tree-2Keith Bostic2015-11-171-2/+2
| |\ \ \ \ | |/ / / / |/| | | |
* | | | | WhitespaceSusan LoVerso2015-11-171-2/+2
| | | | |
| * | | | WT-2182: don't leave child refs locked; when we hit the result_entriesKeith Bostic2015-11-171-5/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | == 0 case in __split_parent, we will give up on the split but return 0. The cleanup path in __split_parent used to flip the child ref to WT_REF_DELETED but this branch has removed that code, and I don't think the code here can know whether the ref was unlocked. Change __split_parent to return EBUSY, but without the verbose error messages, in this case.
| * | | | Merge branch 'develop' into wt-2182-split-up-the-tree-2Keith Bostic2015-11-1716-86/+167
| |\ \ \ \ | |/ / / / |/| | | |
| * | | | Minor comment change.Alex Gorrod2015-11-171-1/+4
| | | | |
| * | | | WT-2182: Add upgrading documentation re: statistics changeAlex Gorrod2015-11-171-0/+7
| | | | |
| * | | | Merge branch 'develop' into wt-2182-split-up-the-tree-2Keith Bostic2015-11-1616-143/+283
| |\ \ \ \ | | | |/ / | | |/| |
| * | | | Merge pull request #2304 from wiredtiger/wt-2182-keithAlex Gorrod2015-11-163-129/+162
| |\ \ \ \ | | | | | | | | | | | | WT-2182: fixes for splitting up the tree.
| | * \ \ \ Merge branch 'wt-2182-split-up-the-tree-2' into wt-2182-keithKeith Bostic2015-11-141-2/+2
| | |\ \ \ \ | | |/ / / / | |/| | | |
| * | | | | WT-2182: reset both skiplow and skiphigh if we're restarting the searchKeith Bostic2015-11-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | from the root of the tree. Don't bother initializing cmp, it's never used unless it's been set (and if it triggers some compiler warning, I'll add a comment).
| | * | | | Merge branch 'wt-2182-split-up-the-tree-2' into wt-2182-keithKeith Bostic2015-11-142-2/+2
| | |\ \ \ \ | | |/ / / / | |/| | | |
| * | | | | Merge branch 'develop' into wt-2182-split-up-the-tree-2Keith Bostic2015-11-142-2/+2
| |\ \ \ \ \
| | | * | | | WT-2182: we can't let newly created internal pages split until we'veKeith Bostic2015-11-133-44/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fixed up the moved WT_REF parent references. The problem is racing with other splits trying to do the same thing, we could fight over the update to the WT_REF. Add a new flag to the page that blocks splits. We can't depend on the newly created internal page's WT_REF being in a WT_REF_MEM state, there's nothing eviction from trying to evict those pages (even if they can't succeed). Change the code that fixes up the moved WT_REFs to get the page and a hazard pointer. Since we have a new page flag that blocks splits, also use the page flag to block eviction instead of setting WT_PAGE_MODIFY.mod_split_txn to UINT64_MAX (it's WT_TXN_ABORTED, which is probably a bad idea).
| | | * | | | Fix a comment.Keith Bostic2015-11-131-1/+1
| | | | | | |
| | | * | | | Use a better name for the "no-evict" function.Keith Bostic2015-11-131-4/+4
| | | | | | |
| | | * | | | I think there's a race in setting the mod_split_txn field as each newKeith Bostic2015-11-131-16/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | child page is created: the problem is a thread of control being created after we set a created child page's mod_split_txn field, but before we've swapped the page's new page-index structure into place: that thread could be reading the old page-index structure, and it has a transactional ID after the one set to protect the child page's WT_REF structure. Instead, set the child page's mod_split_txn to a never-visible value when the child page is created, and reset it to a newly allocated transaction ID when fixing up the child pages after the split has happened.
| | | * | | | Clean up a comment, basically, we now create new internal pages in casesKeith Bostic2015-11-131-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | other than deepening the tree.
| | | * | | | WT-2182: factor out the code to clean up moved WT_REF structures, afterKeith Bostic2015-11-131-103/+79
| | | | | | | | | | | | | | | | | | | | | | | | | | | | the split, into its own function.
| | | * | | | Merge branch 'wt-2182-split-up-the-tree-2' into wt-2182-keithKeith Bostic2015-11-131-1/+1
| | | |\ \ \ \ | | |_|/ / / / | |/| | | | |
| * | | | | | whitespaceKeith Bostic2015-11-131-1/+1
| | | | | | |
| | | * | | | Make the fix-up loop in __split_internal match the main loop that createsKeith Bostic2015-11-131-2/+2
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | the child pages: the first entry can be ignored. (This isn't a performance change, but it's cleaner if the two loops match.)
| * | | | | And, remove the test code.Keith Bostic2015-11-131-3/+3
| | | | | |
| * | | | | My mistake, ref->page will be NULL during eviction triggered reverse splits,Keith Bostic2015-11-131-5/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | we've already discarded the page. Fix that, and fix the calculation that shows the number of elements being added/subtracted from the parent page.
| * | | | | spelling typoKeith Bostic2015-11-131-1/+1
| | | | | |
| * | | | | Fix 50c9bc9, we still need to clear skiplow on a WT_RESTART return;Keith Bostic2015-11-131-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | we could clear both skiphigh and skiplow in the search loop above, but it's not unreasonable to believe skiplow will allow us to skip some search bytes, so leave it the way it was.