summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Gorrod <alexg@wiredtiger.com>2015-12-02 06:06:23 +0000
committerAlex Gorrod <alexg@wiredtiger.com>2015-12-02 06:06:23 +0000
commit38369aebcf7da942929a3c27f72495e8dbe3e2d3 (patch)
tree11db010e007a2025cafd08590fea43eff6efa199
parent3051f3be9cbdd6ca8a70a83718700842326fba41 (diff)
downloadmongo-38369aebcf7da942929a3c27f72495e8dbe3e2d3.tar.gz
SERVER-21553 3.0 backport bug fix.
Free the referenced block in the right place :(
-rw-r--r--src/btree/bt_split.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/btree/bt_split.c b/src/btree/bt_split.c
index 9aaa157e29b..6e0436bb01f 100644
--- a/src/btree/bt_split.c
+++ b/src/btree/bt_split.c
@@ -1108,6 +1108,7 @@ __split_parent(WT_SESSION_IMPL *session, WT_REF *ref,
*/
WT_ASSERT(session, next_ref->page_del == NULL);
+ WT_TRET(__wt_ref_block_free(session, next_ref));
WT_TRET(__split_safe_free(
session, split_gen, 0, next_ref, sizeof(WT_REF)));
parent_decr += sizeof(WT_REF);
@@ -1121,7 +1122,6 @@ __split_parent(WT_SESSION_IMPL *session, WT_REF *ref,
* Add it to the session discard list, to be freed when it's safe.
*/
size = sizeof(WT_PAGE_INDEX) + pindex->entries * sizeof(WT_REF *);
- WT_TRET(__wt_ref_block_free(session, next_ref));
WT_TRET(__split_safe_free(session, split_gen, closing, pindex, size));
parent_decr += size;