-
Type:
Task
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
Query Integration
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Desugar extension stages need to be validated after the LiteParsedPipeline is created to ensure that they abide by the following constraints:
1. Cycle prevention: A stage must not transitively expand back into itself.
We will check per path by storing a stack of desugar stage names.
2. Bounded desugar depth (kMaxDesugarDepth = 10) per expansion path
We should create a structure similar to the ViewGraph that tracks a list of all seen desugar stage names, as well as increment a depth counter every time we go further down a nested desugaring path.
- depends on
-
SERVER-109564 Modify ParseNode::expand() to return ExtensionContainer instead of a serialized pipeline
-
- Backlog
-
-
SERVER-111605 Implement DocumentSourceExtension::LiteParsed & DocumentSourceExtension::LiteParsedExpanded
-
- In Progress
-
-
SERVER-109527 Create LiteParsedDocumentSourceExtension stubs
-
- Closed
-
-
SERVER-110194 Return desugared pipeline as list of LiteParsedDocumentSource
-
- Closed
-
- related to
-
SERVER-109780 Implement explicit desugaring step for Pipelines with Desugar Stages
-
- Backlog
-