diff options
Diffstat (limited to 'src/third_party/wiredtiger/src/btree/bt_read.c')
-rw-r--r-- | src/third_party/wiredtiger/src/btree/bt_read.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/third_party/wiredtiger/src/btree/bt_read.c b/src/third_party/wiredtiger/src/btree/bt_read.c index 6baf6f780df..77196a7175b 100644 --- a/src/third_party/wiredtiger/src/btree/bt_read.c +++ b/src/third_party/wiredtiger/src/btree/bt_read.c @@ -381,6 +381,13 @@ read: goto skip_evict; /* + * Don't evict if we are operating in a transaction on a checkpoint cursor. Eviction + * would use the cursor's snapshot, which won't be correct. + */ + if (F_ISSET(session->txn, WT_TXN_IS_CHECKPOINT)) + goto skip_evict; + + /* * Forcibly evict pages that are too big. */ if (force_attempts < 10 && __evict_force_check(session, ref)) { |