summaryrefslogtreecommitdiff
path: root/src/mongo/db/query/query_planner.h
diff options
context:
space:
mode:
authorDavid Storch <david.storch@10gen.com>2015-04-13 22:30:46 -0400
committerDavid Storch <david.storch@10gen.com>2015-04-13 22:31:19 -0400
commit81a1f70b87b3f3754931829b11faa0a53df64527 (patch)
tree6709655fa170d218abc7e42aeb6710e70e2419c0 /src/mongo/db/query/query_planner.h
parent14fbbf72657a1d1898a7a9c9db48fc978992fde8 (diff)
downloadmongo-81a1f70b87b3f3754931829b11faa0a53df64527.tar.gz
SERVER-15225 CachedPlanStage can replan poorly performing queries after a trial period
Diffstat (limited to 'src/mongo/db/query/query_planner.h')
-rw-r--r--src/mongo/db/query/query_planner.h22
1 files changed, 3 insertions, 19 deletions
diff --git a/src/mongo/db/query/query_planner.h b/src/mongo/db/query/query_planner.h
index b212b49694e..80d41bef1e8 100644
--- a/src/mongo/db/query/query_planner.h
+++ b/src/mongo/db/query/query_planner.h
@@ -57,20 +57,6 @@ namespace mongo {
std::vector<QuerySolution*>* out);
/**
- * Helper that does most of the heavy lifting for the planFromCache
- * method which this overloads. Whereas the overloaded version plans
- * from cache twice (once for the winning solution and once from the
- * backup solution), this version plans from cache once.
- *
- * It requires a single SolutionCacheData, rather than a CachedSolution, which
- * owns a vector of SolutionCacheData instances.
- */
- static Status planFromCache(const CanonicalQuery& query,
- const QueryPlannerParams& params,
- const SolutionCacheData& cacheData,
- QuerySolution** out);
-
- /**
* Attempt to generate a query solution, given data retrieved
* from the plan cache.
*
@@ -79,15 +65,13 @@ namespace mongo {
* @param cachedSoln -- the CachedSolution retrieved from the plan cache.
* @param out -- an out-parameter which will be filled in with the solution
* generated from the cache data
- * @param backupOut -- if 'out' contains a blocking sort, then backoutOut may
- * contain an alternative solution with no blocking sort; otherwise it will
- * contain NULL on return.
+ *
+ * On success, the caller is responsible for deleting *out.
*/
static Status planFromCache(const CanonicalQuery& query,
const QueryPlannerParams& params,
const CachedSolution& cachedSoln,
- QuerySolution** out,
- QuerySolution** backupOut);
+ QuerySolution** out);
/**
* Used to generated the index tag tree that will be inserted