Github user JamesRTaylor commented on a diff in the pull request:
https://github.com/apache/phoenix/pull/281#discussion_r151015944
--- Diff:
phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java ---
@@ -91,8 +91,23 @@ public QueryPlan optimize(PhoenixStatement statement,
SelectStatement select, Co
}
public QueryPlan optimize(QueryPlan dataPlan, PhoenixStatement
statement, List<? extends PDatum> targetColumns, ParallelIteratorFactory
parallelIteratorFactory) throws SQLException {
- List<QueryPlan>plans = getApplicablePlans(dataPlan, statement,
targetColumns, parallelIteratorFactory, true);
- return plans.get(0);
+ List<QueryPlan> plans = getApplicablePlans(dataPlan, statement,
targetColumns, parallelIteratorFactory, false);
--- End diff --
We'll need to have a new master boolean config option (like
phoenix.optimize.costBased in QueryServices) that controls whether or not we're
doing cost based optimization to make sure users can disable if they want to
keep the existing behavior the same.
---