Details
-
Task
-
Resolution: Fixed
-
Major - P3
-
None
Description
Description
Description:
Though the code change is internal code, a consequence of this is that users are no longer allowed to create views whose pipelines contain a $out stage, whether it's at the top level or nested inside a $lookup or $facet.
See the docs changes for
SERVER-34902; they're related.Engineering Ticket Description:
Currently, if a stage (e.g. `$lookup`) has a "sub" pipeline that requires it to write persistent data, the stage's diskRequirement doesn't reflect that.
Instead the parent stage should have the max diskRequirement of it's pipeline's stages under the total ordering
kNoDiskUse < kWritesTmpData < kWritesPersistentDatae.g. of the bug https://github.com/mongodb/mongo/blob/b93fe0e61bf7e8bc96da2edeb66afa1b915b0b77/src/mongo/db/pipeline/document_source_lookup.h#L100-L112
Scope of changes
Just going to tweak the blurbs from DOCS-11807 to explicitly include "not even as part of $facets/$lookup"
Impact to Other Docs
MVP (Work and Date)
Resources (Scope or Design Docs, Invision, etc.)
Attachments
Issue Links
- documents
-
SERVER-35419 Make diskRequirement in StageConstraints in DocumentSource reflect child pipeline requirements.
-
- Closed
-
- is related to
-
DOCS-11807 Docs for SERVER-34902: view definitions should *not* allow $out as a stage
-
- Closed
-
- related to
-
DOCS-12330 Docs for SERVER-38362: Prevent $out stage within $lookup
-
- Closed
-