[SERVER-65310] Mark constants for encryption in $lookup subpipelines Created: 06/Apr/22 Updated: 06/Dec/22 |
|
| Status: | Backlog |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Hana Pearlman | Assignee: | Backlog - Query Optimization |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||
| Assigned Teams: |
Query Optimization
|
||||
| Participants: | |||||
| Description |
|
For an aggregation like coll.aggregate({$lookup: {from: "coll", as: "docs", pipeline: [{$match: {encryptedField: "1"}}])}} We do not mark the constant "1" for encryption in query analysis. But, we allow self-lookups with encrypted collections, so this kind of query should be supported. Once this is supported in query analysis, the server-side rewrites should be updated to support rewrites of subpipelines. |