You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@quickstep.apache.org by zu...@apache.org on 2016/08/14 02:14:52 UTC
[2/2] incubator-quickstep git commit: Removed unused OptimizerContext,
and construct PhysicalGenerator once.
Removed unused OptimizerContext, and construct PhysicalGenerator once.
Project: http://git-wip-us.apache.org/repos/asf/incubator-quickstep/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-quickstep/commit/d227e19e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-quickstep/tree/d227e19e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-quickstep/diff/d227e19e
Branch: refs/heads/opt-refactor
Commit: d227e19e4b02e6d725782195ee0bcc9d143bc50c
Parents: b5798ed
Author: Zuyu Zhang <zu...@twitter.com>
Authored: Sat Aug 13 18:40:26 2016 -0700
Committer: Zuyu Zhang <zu...@twitter.com>
Committed: Sat Aug 13 18:40:26 2016 -0700
----------------------------------------------------------------------
query_optimizer/ExecutionGenerator.hpp | 6 ------
query_optimizer/Optimizer.cpp | 6 ++----
query_optimizer/Optimizer.hpp | 3 +++
3 files changed, 5 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-quickstep/blob/d227e19e/query_optimizer/ExecutionGenerator.hpp
----------------------------------------------------------------------
diff --git a/query_optimizer/ExecutionGenerator.hpp b/query_optimizer/ExecutionGenerator.hpp
index 3a38f2c..6017aa5 100644
--- a/query_optimizer/ExecutionGenerator.hpp
+++ b/query_optimizer/ExecutionGenerator.hpp
@@ -83,8 +83,6 @@ class InsertDestination;
namespace optimizer {
-class OptimizerContext;
-
/** \addtogroup QueryOptimizer
* @{
*/
@@ -98,14 +96,11 @@ class ExecutionGenerator {
* @brief Constructor. Does not take ownership of \p query_handle.
*
* @param catalog_database The catalog database where this query is executed.
- * @param optimizer_context Optimizer context.
* @param query_handle The pointer to the output query handle.
*/
ExecutionGenerator(CatalogDatabase *catalog_database,
- OptimizerContext *optimizer_context,
QueryHandle *query_handle)
: catalog_database_(DCHECK_NOTNULL(catalog_database)),
- optimizer_context_(DCHECK_NOTNULL(optimizer_context)),
query_handle_(DCHECK_NOTNULL(query_handle)),
execution_plan_(DCHECK_NOTNULL(query_handle->getQueryPlanMutable())),
query_context_proto_(DCHECK_NOTNULL(query_handle->getQueryContextProtoMutable())),
@@ -389,7 +384,6 @@ class ExecutionGenerator {
CatalogDatabase *catalog_database_;
- OptimizerContext *optimizer_context_;
QueryHandle *query_handle_;
QueryPlan *execution_plan_; // A part of QueryHandle.
serialization::QueryContext *query_context_proto_; // A part of QueryHandle.
http://git-wip-us.apache.org/repos/asf/incubator-quickstep/blob/d227e19e/query_optimizer/Optimizer.cpp
----------------------------------------------------------------------
diff --git a/query_optimizer/Optimizer.cpp b/query_optimizer/Optimizer.cpp
index a8b23ba..b14c938 100644
--- a/query_optimizer/Optimizer.cpp
+++ b/query_optimizer/Optimizer.cpp
@@ -21,7 +21,6 @@
#include "query_optimizer/ExecutionGenerator.hpp"
#include "query_optimizer/LogicalGenerator.hpp"
-#include "query_optimizer/PhysicalGenerator.hpp"
namespace quickstep {
namespace optimizer {
@@ -31,11 +30,10 @@ void Optimizer::generateQueryHandle(const ParseStatement &parse_statement,
OptimizerContext *optimizer_context,
QueryHandle *query_handle) {
LogicalGenerator logical_generator(optimizer_context);
- PhysicalGenerator physical_generator;
- ExecutionGenerator execution_generator(catalog_database, optimizer_context, query_handle);
+ ExecutionGenerator execution_generator(catalog_database, query_handle);
execution_generator.generatePlan(
- physical_generator.generatePlan(
+ physical_generator_.generatePlan(
logical_generator.generatePlan(*catalog_database, parse_statement)));
}
http://git-wip-us.apache.org/repos/asf/incubator-quickstep/blob/d227e19e/query_optimizer/Optimizer.hpp
----------------------------------------------------------------------
diff --git a/query_optimizer/Optimizer.hpp b/query_optimizer/Optimizer.hpp
index 13b6d94..36f956a 100644
--- a/query_optimizer/Optimizer.hpp
+++ b/query_optimizer/Optimizer.hpp
@@ -20,6 +20,7 @@
#ifndef QUICKSTEP_QUERY_OPTIMIZER_OPTIMIZER_HPP_
#define QUICKSTEP_QUERY_OPTIMIZER_OPTIMIZER_HPP_
+#include "query_optimizer/PhysicalGenerator.hpp"
#include "utility/Macros.hpp"
namespace quickstep {
@@ -69,6 +70,8 @@ class Optimizer {
QueryHandle *query_handle);
private:
+ PhysicalGenerator physical_generator_;
+
DISALLOW_COPY_AND_ASSIGN(Optimizer);
};