[SERVER-73790] Separate special pipeline inclusion and pipeline position checks Created: 08/Feb/23 Updated: 11/Dec/23 |
|
| Status: | Backlog |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Romans Kasperovics | Assignee: | Backlog - Query Execution |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Assigned Teams: |
Query Execution
|
| Sprint: | QE 2023-05-15, QE 2023-05-29, QE 2023-06-12, QE 2023-06-26, QE 2023-07-10, QE 2023-07-24, QE 2023-08-07, QE 2023-08-21, QE 2023-09-04, QE 2023-09-18, QE 2023-10-02, QE 2023-10-16, QE 2023-10-30, QE 2023-11-13, QE 2023-11-27, QE 2023-12-11 |
| Participants: |
| Description |
|
PositionRequirement enum specifies if a stage has to be in a certain position in a pipeline. PositionRequirement::kNone means the stage does not have any position requirements. Currently, some special pipelines (change stream, facet and update pipelines), prohibit stages with position requirements for some reason. These pipelines have an alternative mechanism to allow / deny certain stages. If some stages are incompatible with certain special pipelines, the aforementioned mechanism should be used instead of PositionRequirement for better separation of concepts. |