-
Type:
Task
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Query Optimization
The DepsTracker is described with this comment: "This struct allows components in an agg pipeline to report what they need from their input."
Somewhere along the way, we decided to do a bit of validation inside the DepsTracker, to confirm that requests for any particular metadata are valid requests. For example, if you have a $project stage with {$meta: "textScore"}, we must validate that the preceding pipeline generates the "textScore". As the validation logic has ballooned, it's become clear that the DepsTracker is not quite the right structure to handle both tracking what is needed from the input and validating references to metadata are valid.
- is related to
-
SERVER-100587 Enable pipeline optimization when $meta is used in an exclusion projection
-
- Backlog
-
- related to
-
SERVER-40900 Agg pipeline static analysis does not always fail $meta when metadata is unavailable
-
- Backlog
-