[SERVER-43102] Don't add DocumentSourceSequentialDocumentCache to lookup pipelines when disablePipelineOptimization failpoint is enabled Created: 30/Aug/19 Updated: 27/Oct/23 Resolved: 15/Nov/19 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Aggregation Framework |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | James Wahlin | Assignee: | Arun Banala |
| Resolution: | Gone away | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||
| Operating System: | ALL | ||||
| Participants: | |||||
| Linked BF Score: | 7 | ||||
| Description |
|
In order to cache the non-correlated pipeline prefix of a $lookup pipeline, DocumentSourceLookup adds a DocumentSourceSequentialDocumentCache to the end of the foreign pipeline and then relies on pipeline optimization to position the cache directly. When the disablePipelineOptimization failpoint is set, Pipeline::optimizePipeline() will exit early and correct placement of the cache will not occur. This will cause the entire foreign pipeline to be cached and will lead to incorrect results when pipeline correlation exists. |
| Comments |
| Comment by Anton Korshunov [ 15/Nov/19 ] |
|
Fixed in |