diff options
author | Xiangyu Yao <xiangyu.yao@mongodb.com> | 2019-07-10 18:38:15 -0400 |
---|---|---|
committer | Xiangyu Yao <xiangyu.yao@mongodb.com> | 2019-07-10 18:38:15 -0400 |
commit | 135c88363bdb5e7b353825f3fec4aa0d7db80571 (patch) | |
tree | 2c0d9dfc909ae4a68085792b719ff8a0fdc9f454 /src/mongo/db/commands/plan_cache_commands.cpp | |
parent | cb3b6c8b2a28190560906db4d78ef833eec44425 (diff) | |
download | mongo-135c88363bdb5e7b353825f3fec4aa0d7db80571.tar.gz |
Revert "SERVER-41279 Eliminate failed plans from consideration during query planning"
This reverts commit 6bba6446e632b557ccc03834d4d48e90336679fc.
Diffstat (limited to 'src/mongo/db/commands/plan_cache_commands.cpp')
-rw-r--r-- | src/mongo/db/commands/plan_cache_commands.cpp | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/src/mongo/db/commands/plan_cache_commands.cpp b/src/mongo/db/commands/plan_cache_commands.cpp index 4fc13e65c6a..fff1ec0905d 100644 --- a/src/mongo/db/commands/plan_cache_commands.cpp +++ b/src/mongo/db/commands/plan_cache_commands.cpp @@ -390,9 +390,7 @@ Status listPlansOriginalFormat(std::unique_ptr<CanonicalQuery> cq, size_t numPlans = entry->plannerData.size(); invariant(numPlans == entry->decision->stats.size()); - invariant(numPlans == - entry->decision->scores.size() + entry->decision->failedCandidates.size()); - invariant(entry->decision->candidateOrder.size() == entry->decision->scores.size()); + invariant(numPlans == entry->decision->scores.size()); for (size_t i = 0; i < numPlans; ++i) { BSONObjBuilder planBob(plansBuilder.subobjStart()); @@ -406,12 +404,7 @@ Status listPlansOriginalFormat(std::unique_ptr<CanonicalQuery> cq, // reason is comprised of score and initial stats provided by // multi plan runner. BSONObjBuilder reasonBob(planBob.subobjStart("reason")); - if (i < entry->decision->candidateOrder.size()) { - reasonBob.append("score", entry->decision->scores[i]); - } else { - reasonBob.append("score", 0.0); - reasonBob.append("failed", true); - } + reasonBob.append("score", entry->decision->scores[i]); BSONObjBuilder statsBob(reasonBob.subobjStart("stats")); PlanStageStats* stats = entry->decision->stats[i].get(); if (stats) { |