Since FDB uses async IO and has its own page cache, it could choose to expose an API to users which, when performing a range read, doesn’t cache any disk pages read while performing the scan.
This is a “dangerous” feature if you don’t know what you’re doing, but it also has the potential to allow background workloads to cooperate efficiently with interactive workloads.
The reasoning is that the working set of an application will always be in cache under normal circumstances, but if a large background range scan comes along and reads as many pages as are available in the page cache, you’ve thrown away your entire working set.
This is relevant for certain existing workloads like performing backups, but may be useful in more places.
Does this already exist, and if not, does it seem like a worthwhile feature to implement?