summaryrefslogtreecommitdiff
path: root/src/third_party/wiredtiger/src/schema/schema_drop.c
diff options
context:
space:
mode:
authorLuke Chen <luke.chen@mongodb.com>2017-12-14 11:34:35 -0500
committerLuke Chen <luke.chen@mongodb.com>2017-12-14 11:34:35 -0500
commitec894eecfba4009e2ccd685e15351e4dae5848ad (patch)
treeb347f774ed408c0ff275d6889cc022ab8afe727b /src/third_party/wiredtiger/src/schema/schema_drop.c
parentfe40a36217a2b4e4064165340d44cc1442d84e13 (diff)
downloadmongo-ec894eecfba4009e2ccd685e15351e4dae5848ad.tar.gz
Import wiredtiger: 1a29eac4dc8cf82de437292da546e3f4039268a4 from branch mongodb-3.8
ref: 596a3c7c01..1a29eac4dc for: 3.7.1 WT-3079 Make sure eviction visits all trees WT-3133 Detect or track long latency operations WT-3295 Allow LSM to merge into custom data sources WT-3587 Remove HAVE_VERBOSE conditional compilation WT-3654 Fix warning in Windows build on evergreen WT-3716 Restore the WT_VERB_TEMPORARY verbose flag. WT-3720 flags macros cast flags to unsigned values, hiding warnings. WT-3732 Handle adding WT indices while cursors on the table are open WT-3734 Fix undefined behavior in verbose output WT-3738 Review internal session allocation accounting WT-3753 Building on Windows --enable-java WT-3772 Hot backup causes uncontrolled growth of WiredTigerPreplog files WT-3774 Enhance Python lookaside testing to cover cursor modify WT-3776 Cursor remove operation unpins page too early WT-3780 Improve error messages on invalid WT_CURSOR::modify usage WT-3783 Fix transaction isolation to use the correct enum WT-3786 Transactions with timestamps should read their writes WT-3787 test_compact02 failed as compaction halted due to eviction pressure WT-3790 Switch statistics to rdtsc from epoch calls WT-3793 WiredTiger page debug dump functions should unpack integer keys WT-3794 Coverity 1383547 and lint WT-3795 lint cleanups for the op-tracking software, reduce record write size.
Diffstat (limited to 'src/third_party/wiredtiger/src/schema/schema_drop.c')
-rw-r--r--src/third_party/wiredtiger/src/schema/schema_drop.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/third_party/wiredtiger/src/schema/schema_drop.c b/src/third_party/wiredtiger/src/schema/schema_drop.c
index 4ee34f68a8c..8501de8b805 100644
--- a/src/third_party/wiredtiger/src/schema/schema_drop.c
+++ b/src/third_party/wiredtiger/src/schema/schema_drop.c
@@ -124,7 +124,14 @@ __drop_table(
* being reopened while it is being dropped. One issue is that the
* WT_WITHOUT_LOCKS macro can drop and reacquire the global table lock,
* avoiding deadlocks while waiting for LSM operation to quiesce.
+ *
+ * Temporarily getting the table exclusively serves the purpose
+ * of ensuring that cursors on the table that are already open
+ * must at least be closed before this call proceeds.
*/
+ WT_ERR(__wt_schema_get_table_uri(session, uri, true,
+ WT_DHANDLE_EXCLUSIVE, &table));
+ WT_ERR(__wt_schema_release_table(session, table));
WT_ERR(__wt_schema_get_table_uri(session, uri, true, 0, &table));
/* Drop the column groups. */