summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Cahill <michael.cahill@mongodb.com>2015-10-02 14:54:03 +1000
committerMichael Cahill <michael.cahill@mongodb.com>2015-10-02 14:54:03 +1000
commit3b865f94cbdc1b6c71f6233ac6675e5edfa34ebd (patch)
tree18a4a7ce562b9aaadb5ae75a4e2139e7f795809d
parentea38cdc9c2aa753d7720913fe92d1763bfb1763e (diff)
downloadmongo-3b865f94cbdc1b6c71f6233ac6675e5edfa34ebd.tar.gz
Import wiredtiger-wiredtiger-mongodb-3.0.6-29-g5c32a0b.tar.gz from wiredtiger branch mongodb-3.0
-rw-r--r--src/third_party/wiredtiger/src/btree/bt_split.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/third_party/wiredtiger/src/btree/bt_split.c b/src/third_party/wiredtiger/src/btree/bt_split.c
index be7dc27c8b0..12f86925849 100644
--- a/src/third_party/wiredtiger/src/btree/bt_split.c
+++ b/src/third_party/wiredtiger/src/btree/bt_split.c
@@ -825,6 +825,12 @@ __split_parent_lock(
F_CLR_ATOMIC(parent, WT_PAGE_SPLIT_LOCKED);
continue;
}
+ /*
+ * If a checkpoint is running and we fail to lock the parent
+ * page, give up immmediately to avoid deadlock.
+ */
+ if (S2BT(session)->checkpointing)
+ return (EBUSY);
__wt_yield();
}