-
Type: Improvement
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
StorEng - Refinement Pipeline
Currently, the pre-fetching functionality will go through the regular tree walk function when identifying potential candidate pages for pre-fetching. This walks through all the pages in the b-tree in a sequential manner, and consequently may result in pre-fetch populating the pre-fetch queue with pages which are not useful to read (wasting effort and cache space).
I'm not sure exactly how this would work, but maybe we could recursively call the _tree_walk_internal function with the _wt_btcur_skip_page skip function passed in when we identify that we are walking a tree using a session with pre-fetching enabled. The skip function would help avoid reading in unnecessary pages (e.g. pages with deleted contents/contents that are not visible).