-
Type:
Task
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
Query Integration
-
None
-
None
-
None
-
None
-
None
-
None
-
None
As part of the LiteParsedPipeline expansion for desugar stages, we must implement new specializations of LiteParsedDocumentSource:
https://docs.google.com/document/d/1mEAk6lF4zMJbIFTxVaBKWsq2JLcKwOBQdzClqaLtO8U/edit?tab=t.cmh028a5t5iy#bookmark=kix.odhqha3zsmvr
As part of this ticket, implement DocumentSourceExtension::LiteParsed & DocumentSourceExtension::LiteParsedExpanded.
At instantiation time, DocumentSourceExtension::LiteParsed should recursively generate its expanded pipeline and keep it as a private/protected member.
At expansion time:
1. If the extension returns a host: : ParseNode, parse it into a LiteParsedDocumentSource.
2. If the extension returns an extension ParseNode, instantiate a DocumentSourceExtension::LiteParsed and continue recursively expanding
3. If the extension returns an extension AstNode, instantiate a DocumentSourceExtension::LiteParseExpanded.
For this ticket, do not implement depth validation, it will be tackled instead in SERVER-109558
- depends on
-
SERVER-109778 Introduce host::HostParseNode to the API
-
- In Code Review
-
- is depended on by
-
SERVER-109558 Enforce constraints for LiteParsed desugar stages
-
- In Progress
-
-
SERVER-111736 Implement end-to-end jstests for query shape serialization.
-
- Needs Scheduling
-