diff options
author | Michael Cahill <michael.cahill@mongodb.com> | 2016-11-16 21:10:29 +1100 |
---|---|---|
committer | Michael Cahill <michael.cahill@mongodb.com> | 2016-11-16 21:10:29 +1100 |
commit | fb4ae3792065e98696e391ac1c4602216b8502cb (patch) | |
tree | 7d6ab84b45c4eb26bbe59e73a3950e9aa2233f41 /src/third_party/wiredtiger/src/lsm/lsm_cursor.c | |
parent | 6904d0ac5ea4bba1822103eb4e7a623cc81de641 (diff) | |
download | mongo-fb4ae3792065e98696e391ac1c4602216b8502cb.tar.gz |
Import wiredtiger: ca6eee06ffdacc8e191987e64b3791740dad21e1 from branch mongodb-3.4
ref: 74430da40c..ca6eee06ff
for: 3.4.0
WT-2962 Provide a way to configure builtin extensions
WT-2984 Search of metadata for recently created collection gets WT_NOTFOUND
WT-3000 Missing log records in recovery when crashing after a log file switch
WT-3002 Allow applications to exempt threads from eviction.
WT-3004 lint: declare functions that don't return a value as void
WT-3011 __wt_curjoin_open() saves the wrong URI in the cursor.
WT-3012 Test format hanging on LSM configurations
WT-3015 Test format stuck with 2mb cache
WT-3016 Tests needed for systems without ftruncate
WT-3017 Hazard pointer race with page replace causes error
WT-3018 lint
WT-3020 LSM primary changes impact parallel-pop-lsm load time
WT-3022 LSM operations get stuck in __wt_clsm_await_switch waiting for switch on tree to complete
WT-3023 Test format hang on zSeries
WT-3024 wtperf medium-lsm-compact test can hang
Diffstat (limited to 'src/third_party/wiredtiger/src/lsm/lsm_cursor.c')
-rw-r--r-- | src/third_party/wiredtiger/src/lsm/lsm_cursor.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/third_party/wiredtiger/src/lsm/lsm_cursor.c b/src/third_party/wiredtiger/src/lsm/lsm_cursor.c index c20673563d9..9c124885086 100644 --- a/src/third_party/wiredtiger/src/lsm/lsm_cursor.c +++ b/src/third_party/wiredtiger/src/lsm/lsm_cursor.c @@ -34,7 +34,7 @@ __wt_clsm_request_switch(WT_CURSOR_LSM *clsm) lsm_tree = clsm->lsm_tree; session = (WT_SESSION_IMPL *)clsm->iface.session; - if (!F_ISSET(lsm_tree, WT_LSM_TREE_NEED_SWITCH)) { + if (!lsm_tree->need_switch) { /* * Check that we are up-to-date: don't set the switch if the * tree has changed since we last opened cursors: that can lead @@ -44,8 +44,8 @@ __wt_clsm_request_switch(WT_CURSOR_LSM *clsm) __wt_lsm_tree_readlock(session, lsm_tree); if (lsm_tree->nchunks == 0 || (clsm->dsk_gen == lsm_tree->dsk_gen && - !F_ISSET(lsm_tree, WT_LSM_TREE_NEED_SWITCH))) { - F_SET(lsm_tree, WT_LSM_TREE_NEED_SWITCH); + !lsm_tree->need_switch)) { + lsm_tree->need_switch = true; ret = __wt_lsm_manager_push_entry( session, WT_LSM_WORK_SWITCH, 0, lsm_tree); } @@ -129,7 +129,7 @@ __clsm_enter_update(WT_CURSOR_LSM *clsm) * chunk grows twice as large as the configured size, block until it * can be switched. */ - hard_limit = F_ISSET(lsm_tree, WT_LSM_TREE_NEED_SWITCH); + hard_limit = lsm_tree->need_switch; if (have_primary) { WT_ENTER_PAGE_INDEX(session); @@ -215,7 +215,7 @@ __clsm_enter(WT_CURSOR_LSM *clsm, bool reset, bool update) goto open; if (txn->isolation == WT_ISO_SNAPSHOT) - WT_RET(__wt_txn_cursor_op(session)); + __wt_txn_cursor_op(session); /* * Figure out how many updates are required for @@ -700,7 +700,7 @@ retry: if (F_ISSET(clsm, WT_CLSM_MERGE)) { if (btree->bulk_load_ok) { btree->bulk_load_ok = false; WT_WITH_BTREE(session, btree, - __wt_btree_evictable(session, false)); + __wt_btree_lsm_switch_primary(session, true)); } } |