[SERVER-32524] Add a parameter to disable query system optimizations for testing Created: 03/Jan/18  Updated: 06/Dec/22

Status: Backlog
Project: Core Server
Component/s: Aggregation Framework, Querying, Testing Infrastructure
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: David Storch Assignee: Backlog - Query Optimization
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Query Optimization
Sprint: Query 2018-01-29
Participants:

 Description   

The query system performs a number of distinct optimization steps in order to choose an efficient plan for a query:

  • Optimizing any match expressions via MatchExpression::optimize().
  • Optimizing any expressions via Expression::optimize().
  • Optimizing an aggregation pipeline via Pipeline::optimize().
  • Generating indexed plans for a query.

All such optimization steps should improve the run time of the query without actually impacting its behavior. In order to test that optimizations are correct, we should introduce an internal configuration parameter that disables them. This will allow us to build testing infrastructure that compares a server configured with optimizations disabled to a server with optimizations enabled.


Generated at Thu Feb 08 04:30:29 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.