-
Type:
Improvement
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Storage Engines, Storage Engines - Transactions
-
SE Transactions - 2025-11-07
-
5
As part of WT-12402 we added a number of statistics that track the reason behind why a page isn't queued for eviction. However we still have places in the tree_walk loop that continue, i.e. have found a ref but decided not to queue it that don't increment any statistic.
This can make it not obvious as to why certain things aren't happening in the eviction server and add confusion to HELP tickets.
These if statements in __evict_try_queue_page are relevant:
if (__wt_atomic_load32(&btree->evict_walk_period) == 0 && !__wt_evict_aggressive(session)) return; } /* Evaluate dirty page candidacy, when eviction is not aggressive. */ if (!__wt_evict_aggressive(session) && modified && __evict_skip_dirty_candidate(session, page)) return;fast: /* If the page can't be evicted, give up. */ if (!__wt_page_can_evict(session, ref, NULL)) return; WT_ASSERT(session, evict_entry->ref == NULL); if (!__evict_push_candidate(session, queue, evict_entry, ref)) return;
- is related to
-
WT-12402 Add stats to track when eviction server skips walking a tree
-
- Closed
-