Details
-
Improvement
-
Resolution: Done
-
Major - P3
-
None
-
None
-
None
Description
Doc-locking storage engines must force fetch documents when they yield: yielding invalidates the OperationContext, which allows documents keyed by RecordIds in a query's WorkingSet to be deleted or modified. Force fetching prevents queries from seeing these modifications when they resume with a new OperationContext.
Moving this force fetching logic into a query execution stage will allow us to expose diagnostics/statistics regarding force fetching via existing mechanisms (e.g. explain and the profiler).