[ https://issues.apache.org/jira/browse/PHOENIX-4437?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16297639#comment-16297639 ]
James Taylor commented on PHOENIX-4437: --------------------------------------- Thanks for the patch, [~maryannxue]. Here's some feedback: - Can you add a comment here on when optimize will *not* be called? I guess it's not being called when you ask the plan for the estimated bytes that will be scanned? {code} +++ b/phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixStatement.java @@ -581,7 +581,12 @@ public class PhoenixStatement implements Statement, SQLCloseable { @Override public QueryPlan compilePlan(PhoenixStatement stmt, Sequence.ValueOp seqAction) throws SQLException { CompilableStatement compilableStmt = getStatement(); - final StatementPlan plan = compilableStmt.compilePlan(stmt, Sequence.ValueOp.VALIDATE_SEQUENCE); + StatementPlan compilePlan = compilableStmt.compilePlan(stmt, Sequence.ValueOp.VALIDATE_SEQUENCE); + if (compilePlan instanceof QueryPlan) { + QueryPlan dataPlan = (QueryPlan) compilePlan; + compilePlan = stmt.getConnection().getQueryServices().getOptimizer().optimize(stmt, dataPlan); + } + final StatementPlan plan = compilePlan; {code} - Do you think it's worth adding some tests, or do you think we have good test coverage from your prior check-in (and those are exercising this new code path)? > Make QueryPlan.getEstimatedBytesToScan() independent of getExplainPlan() and > pull optimize() out of getExplainPlan() > -------------------------------------------------------------------------------------------------------------------- > > Key: PHOENIX-4437 > URL: https://issues.apache.org/jira/browse/PHOENIX-4437 > Project: Phoenix > Issue Type: Improvement > Affects Versions: 4.11.0 > Reporter: Maryann Xue > Assignee: Maryann Xue > Attachments: PHOENIX-4437.patch > > -- This message was sent by Atlassian JIRA (v6.4.14#64029)