[SERVER-48731] Inclusion of FLE support in the shell drags too much of the query system in Created: 11/Jun/20 Updated: 29/Oct/23 Resolved: 23/Jul/20 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Querying, Shell |
| Affects Version/s: | None |
| Fix Version/s: | 4.7.0 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Andrew Morrow (Inactive) | Assignee: | Svilen Mihaylov (Inactive) |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | qopt-team | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Attachments: |
|
| Backwards Compatibility: | Fully Compatible |
| Operating System: | ALL |
| Steps To Reproduce: | Build an enterprise mongo binary with --link-model=dynamic:
There is probably a lot of other stuff dragged in indirectly as well. |
| Sprint: | Query 2020-07-13, Query 2020-07-27 |
| Participants: |
| Description |
|
The addition of the FLE subsystem to the shell pulls in a very large swath of query code. Some of this is clearly necessary, as FLE needs to understand more about queries than it did in the past. However, other parts seem like they should't be coming along for the ride, like the query planner or the sort subsystem. The inclusion of this extra code causes a roughly 25% startup penalty for a dynamically linked shell, which given how many shells are started in the test suites adds up to a non-zero amount of delay. Some effort should be made to decompose the query code into the interfaces and implementations that are only necessary for to support FLE so that these extra dependencies can be pruned. |
| Comments |
| Comment by Githook User [ 22/Jul/20 ] |
|
Author: {'name': 'Svilen Mihaylov', 'email': 'svilen.mihaylov@mongodb.com', 'username': 'smihaylov-mongodb'}Message: |
| Comment by Githook User [ 22/Jul/20 ] |
|
Author: {'name': 'Svilen Mihaylov', 'email': 'svilen.mihaylov@mongodb.com', 'username': 'smihaylov-mongodb'}Message: |
| Comment by Svilen Mihaylov (Inactive) [ 14/Jul/20 ] |