-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
3
-
Storage Engines 2020-02-24, Storage Engines 2020-03-09
Following on from discussion: https://github.com/wiredtiger/wiredtiger/pull/5281#issuecomment-588599481
In rec_upd_select, when evicting history store pages, some of the updates are considered uncommitted because of the check:
if (F_ISSET(r, WT_REC_VISIBLE_ALL) && !WT_IS_METADATA(session->dhandle) ? WT_TXNID_LE(r->last_running, txnid) : !__txn_visible_id(session, txnid)) { has_newer_updates = true; continue; }
which is very conservative. However, history store updates are all committed and the page should be evictable. We can ignore the check for history store.
It is not clear if it is safe to ignore the check for both eviction and checkpoint.