[SERVER-59628] Reorganize lite parsing to include constraints information Created: 26/Aug/21  Updated: 06/Dec/22

Status: Backlog
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: Ruslan Abdulkhalikov (Inactive) Assignee: Backlog - Query Optimization
Resolution: Unresolved Votes: 0
Labels: quick-tech-debt
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Query Optimization
Participants:

 Description   

At this moment mongo parses MQL query twice: using lite parser and "heavy" one (::createFromBSON). Those a two distinct stages with almost no shared information. This leads to complexity (duplication of the code). Lite parsing lacks certain information to make informed decisions.

In this particular case, it is necessary for lite parsing to have access to sources constraints in order to reject or accept an embedded pipeline on $lookup stage. The current check is based on the name of the first stage in the pipeline which is unnecessarily specific.



 Comments   
Comment by Githook User [ 27/Aug/21 ]

Author:

{'name': 'Ruslan Abdulkhalikov', 'email': 'ruslan.abdulkhalikov@mongodb.com', 'username': 'rusabd1'}

Message: SERVER-58807 Allow collectionless $lookup with $documents

Generated at Thu Feb 08 05:47:42 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.