diff options
author | Luke Chen <luke.chen@mongodb.com> | 2020-05-29 16:48:08 +1000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2020-05-29 07:01:36 +0000 |
commit | d8292dbefc595e639164aa2e7d0317668781ca0f (patch) | |
tree | 8134fa43e1b78ed47b5a6225d2c14fcf796a3d3f /src/third_party/wiredtiger/src/include/cursor.i | |
parent | 8f1df3e07ad034da2926d73130e0250c40e8e8ef (diff) | |
download | mongo-d8292dbefc595e639164aa2e7d0317668781ca0f.tar.gz |
Import wiredtiger: 943d9cdd2a1cfc4ae357da44ec497b5115ff3139 from branch mongodb-4.4
ref: a7af601643..943d9cdd2a
for: 4.4.0-rc8
WT-6168 Ignore history store visibility when resolving prepared updates
WT-6250 Avoid passing reconcile struct to cell layer for stat logging
WT-6302 Move format operations tracing into WiredTiger log files
WT-6303 Fix commit check may fail because of a prepared rollback
WT-6306 Do not force evict HS pages because of deleted items
WT-6307 Increase the page cache size for all the page allocations
WT-6312 Add history store verification
WT-6315 Fix commit check failure because of updates restored from data store
WT-6317 Create variant of compatibility test that runs faster and generates a smaller artifact footprint
WT-6318 Stop assuming exclusive access when writing to history store pages
WT-6320 Allow eviction of pages with older content
Diffstat (limited to 'src/third_party/wiredtiger/src/include/cursor.i')
-rw-r--r-- | src/third_party/wiredtiger/src/include/cursor.i | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/third_party/wiredtiger/src/include/cursor.i b/src/third_party/wiredtiger/src/include/cursor.i index d3237ad91d2..362efea63a9 100644 --- a/src/third_party/wiredtiger/src/include/cursor.i +++ b/src/third_party/wiredtiger/src/include/cursor.i @@ -210,9 +210,14 @@ __cursor_reset(WT_CURSOR_BTREE *cbt) /* * If we were scanning and saw a lot of deleted records on this page, try to evict the page when * we release it. + * + * A visible stop timestamp could have been treated as a tombstone and accounted in the deleted + * count. Such a page might not have any new updates and be clean, but could benefit from + * reconciliation getting rid of the obsolete content. Hence mark the page dirty to force it + * through reconciliation. */ if (cbt->page_deleted_count > WT_BTREE_DELETE_THRESHOLD) { - __wt_page_evict_soon(session, cbt->ref); + WT_RET(__wt_page_dirty_and_evict_soon(session, cbt->ref)); WT_STAT_CONN_INCR(session, cache_eviction_force_delete); } cbt->page_deleted_count = 0; |