diff options
Diffstat (limited to 'src/third_party/wiredtiger/src/conn/conn_sweep.c')
-rw-r--r-- | src/third_party/wiredtiger/src/conn/conn_sweep.c | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/src/third_party/wiredtiger/src/conn/conn_sweep.c b/src/third_party/wiredtiger/src/conn/conn_sweep.c index 8854f5e0592..a89b2f5ca6f 100644 --- a/src/third_party/wiredtiger/src/conn/conn_sweep.c +++ b/src/third_party/wiredtiger/src/conn/conn_sweep.c @@ -64,11 +64,9 @@ __sweep_expire_one(WT_SESSION_IMPL *session) WT_BTREE *btree; WT_DATA_HANDLE *dhandle; WT_DECL_RET; - bool evict_reset; btree = S2BT(session); dhandle = session->dhandle; - evict_reset = false; /* * Acquire an exclusive lock on the handle and mark it dead. @@ -92,19 +90,13 @@ __sweep_expire_one(WT_SESSION_IMPL *session) !__wt_txn_visible_all(session, btree->rec_max_txn)) goto err; - /* Ensure that we aren't racing with the eviction server */ - WT_ERR(__wt_evict_file_exclusive_on(session, &evict_reset)); - /* - * Mark the handle as dead and close the underlying file - * handle. Closing the handle decrements the open file count, - * meaning the close loop won't overrun the configured minimum. + * Mark the handle dead and close the underlying file handle. + * Closing the handle decrements the open file count, meaning the close + * loop won't overrun the configured minimum. */ ret = __wt_conn_btree_sync_and_close(session, false, true); - if (evict_reset) - __wt_evict_file_exclusive_off(session); - err: WT_TRET(__wt_writeunlock(session, dhandle->rwlock)); return (ret); @@ -171,7 +163,7 @@ __sweep_discard_trees(WT_SESSION_IMPL *session, u_int *dead_handlesp) !F_ISSET(dhandle, WT_DHANDLE_DEAD)) continue; - /* If the handle is marked "dead", flush it from cache. */ + /* If the handle is marked dead, flush it from cache. */ WT_WITH_DHANDLE(session, dhandle, ret = __wt_conn_btree_sync_and_close(session, false, false)); |