summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Cahill <michael.cahill@mongodb.com>2016-03-18 15:08:25 +1100
committerMichael Cahill <michael.cahill@mongodb.com>2016-03-18 15:08:25 +1100
commit0eeaedd5c2d1158bdd734fad9456cb52181c5e2b (patch)
tree43ceaf8ce916d78222e349a6f9e4df868dcc9179
parent5b4e57c4b5d3651a6d8a7d5fbc63f32a345b6e17 (diff)
downloadmongo-0eeaedd5c2d1158bdd734fad9456cb52181c5e2b.tar.gz
WT-2498 Fix LSM close logic.
Always wait for internal operations, optionally wait for application operations.
-rw-r--r--src/lsm/lsm_tree.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lsm/lsm_tree.c b/src/lsm/lsm_tree.c
index bd9d0671bde..b64b72256cc 100644
--- a/src/lsm/lsm_tree.c
+++ b/src/lsm/lsm_tree.c
@@ -100,7 +100,7 @@ __lsm_tree_close(WT_SESSION_IMPL *session, WT_LSM_TREE *lsm_tree, bool wait)
* access is not available.
*/
for (i = 0;
- lsm_tree->refcnt > 1 && (wait || lsm_tree->queue_ref > 0); ++i) {
+ lsm_tree->queue_ref > 0 || (wait && lsm_tree->refcnt > 1); ++i) {
/*
* Remove any work units from the manager queues. Do this step
* repeatedly in case a work unit was in the process of being