diff options
author | Mihai Andrei <mihai.andrei@10gen.com> | 2022-04-13 14:57:07 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2022-04-13 16:11:14 +0000 |
commit | ce01958144a09035887f45be8761afa08bc01cde (patch) | |
tree | 2a72e513048c83f9e8f12471af6cc458bd7c7e54 /src/mongo/db/query/planner_analysis.cpp | |
parent | e80b351a8b543f93fb2b35f3b546953e9c421d43 (diff) | |
download | mongo-ce01958144a09035887f45be8761afa08bc01cde.tar.gz |
SERVER-64443 Verify that replanning works for HashJoin
Diffstat (limited to 'src/mongo/db/query/planner_analysis.cpp')
-rw-r--r-- | src/mongo/db/query/planner_analysis.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/mongo/db/query/planner_analysis.cpp b/src/mongo/db/query/planner_analysis.cpp index eea3c702a61..654fa0f56ca 100644 --- a/src/mongo/db/query/planner_analysis.cpp +++ b/src/mongo/db/query/planner_analysis.cpp @@ -670,7 +670,9 @@ void QueryPlannerAnalysis::determineLookupStrategy( return boost::none; }(); - if (foreignIndex) { + if (!foreignCollItr->second.exists) { + eqLookupNode->lookupStrategy = EqLookupNode::LookupStrategy::kNonExistentForeignCollection; + } else if (foreignIndex) { eqLookupNode->lookupStrategy = EqLookupNode::LookupStrategy::kIndexedLoopJoin; eqLookupNode->idxEntry = foreignIndex; } else if (allowDiskUse && isEligibleForHashJoin(foreignCollItr->second)) { |