summaryrefslogtreecommitdiff
path: root/src/mongo/db/query/plan_cache_test.cpp
diff options
context:
space:
mode:
authorDavid Storch <david.storch@mongodb.com>2021-01-07 17:23:11 -0500
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2021-01-15 20:52:42 +0000
commit8ccc099b1821a18a120a9ce483bf64dac1899ad1 (patch)
treeebe12b1d0209d72077221b5e12398392610273a4 /src/mongo/db/query/plan_cache_test.cpp
parent601e94d2edd7a07ca5dd3a66bf3bebaaf7597b4a (diff)
downloadmongo-8ccc099b1821a18a120a9ce483bf64dac1899ad1.tar.gz
SERVER-53435 Make queries run with DBHelpers plus SBE circumvent 'checkCanServeReadsFor()'
Such queries may be run when a node is neither primary nor secondary, e.g. as part of executing an initial sync. This affects only the SBE engine, since SBE's internal lock policy requires it to have its own calls to 'checkCanServeReadsFor()'.
Diffstat (limited to 'src/mongo/db/query/plan_cache_test.cpp')
-rw-r--r--src/mongo/db/query/plan_cache_test.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/mongo/db/query/plan_cache_test.cpp b/src/mongo/db/query/plan_cache_test.cpp
index c10a1d2a2cb..e465979baaa 100644
--- a/src/mongo/db/query/plan_cache_test.cpp
+++ b/src/mongo/db/query/plan_cache_test.cpp
@@ -286,7 +286,7 @@ std::pair<CoreIndexInfo, std::unique_ptr<WildcardProjection>> makeWildcardUpdate
*/
struct GenerateQuerySolution {
QuerySolution* operator()() const {
- unique_ptr<QuerySolution> qs(new QuerySolution());
+ unique_ptr<QuerySolution> qs(new QuerySolution(QueryPlannerParams::Options::DEFAULT));
qs->cacheData.reset(new SolutionCacheData());
qs->cacheData->solnType = SolutionCacheData::COLLSCAN_SOLN;
qs->cacheData->tree.reset(new PlanCacheIndexTree());
@@ -349,7 +349,8 @@ void assertShouldNotCacheQuery(const char* queryStr) {
}
std::unique_ptr<QuerySolution> getQuerySolutionForCaching() {
- std::unique_ptr<QuerySolution> qs = std::make_unique<QuerySolution>();
+ std::unique_ptr<QuerySolution> qs =
+ std::make_unique<QuerySolution>(QueryPlannerParams::Options::DEFAULT);
qs->cacheData = std::make_unique<SolutionCacheData>();
qs->cacheData->tree = std::make_unique<PlanCacheIndexTree>();
return qs;
@@ -1136,7 +1137,7 @@ protected:
// Create a CachedSolution the long way..
// QuerySolution -> PlanCacheEntry -> CachedSolution
- QuerySolution qs;
+ QuerySolution qs{QueryPlannerParams::Options::DEFAULT};
qs.cacheData = soln.cacheData->clone();
std::vector<QuerySolution*> solutions;
solutions.push_back(&qs);