summaryrefslogtreecommitdiff
path: root/src/mongo/db/query/plan_executor_factory.h
diff options
context:
space:
mode:
authorSvilen Mihaylov <svilen.mihaylov@mongodb.com>2022-01-31 21:05:27 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2022-01-31 21:48:46 +0000
commit50db8e9573e191ba2c193b4ef3dba6b5c6488f82 (patch)
tree1d211e40920b5952af569bb6e9fa7dd830d5bbaa /src/mongo/db/query/plan_executor_factory.h
parentb696e034fe97e7699dd45ac2595422e1d510ba2c (diff)
downloadmongo-50db8e9573e191ba2c193b4ef3dba6b5c6488f82.tar.gz
SERVER-62434 Implement query optimizer based on Path algebra and Cascades
Diffstat (limited to 'src/mongo/db/query/plan_executor_factory.h')
-rw-r--r--src/mongo/db/query/plan_executor_factory.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/mongo/db/query/plan_executor_factory.h b/src/mongo/db/query/plan_executor_factory.h
index 380e21cb1e4..17694489add 100644
--- a/src/mongo/db/query/plan_executor_factory.h
+++ b/src/mongo/db/query/plan_executor_factory.h
@@ -35,6 +35,7 @@
#include "mongo/db/exec/working_set.h"
#include "mongo/db/pipeline/pipeline.h"
#include "mongo/db/pipeline/plan_executor_pipeline.h"
+#include "mongo/db/query/optimizer/explain_interface.h"
#include "mongo/db/query/plan_executor.h"
#include "mongo/db/query/plan_yield_policy_sbe.h"
#include "mongo/db/query/query_solution.h"
@@ -106,12 +107,14 @@ StatusWith<std::unique_ptr<PlanExecutor, PlanExecutor::Deleter>> make(
/**
* Constructs a PlanExecutor for the query 'cq' which will execute the SBE plan 'root'. A yield
* policy can optionally be provided if the plan should automatically yield during execution.
+ * "optimizerData" is used to print optimizer ABT plans, and may be empty.
*/
StatusWith<std::unique_ptr<PlanExecutor, PlanExecutor::Deleter>> make(
OperationContext* opCtx,
std::unique_ptr<CanonicalQuery> cq,
std::unique_ptr<QuerySolution> solution,
std::pair<std::unique_ptr<sbe::PlanStage>, stage_builder::PlanStageData> root,
+ std::unique_ptr<optimizer::AbstractABTPrinter> optimizerData,
const CollectionPtr* collection,
size_t plannerOptions,
NamespaceString nss,