I tried to dig into the Calcite codebase and found there is likely no way
to enable JDBC codepath:
1. There is no planner config in CalciteConnectionProperty [1].
2.  In CalcitePrepareImpl, there is only one createPlannerFactory with one
createPlanner, in which VolcanoPlanner is used [2].


If my understanding is correct, then there could be an improvement that
adds a config to CalciteConnectionProperty, and use that config to control
which planner to use by JDBC approach.


[1]:
https://github.com/apache/calcite/blob/master/core/src/main/java/org/apache/calcite/config/CalciteConnectionProperty.java#L37
[2]:
https://github.com/apache/calcite/blob/2088488ac8327b19512a76a122cae2961fc551c3/core/src/main/java/org/apache/calcite/prepare/CalcitePrepareImpl.java#L427


-Rui

On Sun, Aug 2, 2020 at 8:55 AM Meron Avigdor <[email protected]>
wrote:

> Hi.
> I have implemented an extension of org.apache.calcite.jdbc.Driver, and I
> have the model handler extend org.apache.calcite.avatica.HandlerImpl
>
> For performance optimizations, I would like to test VolcanoPlanner vs.
> HepPlanner
> as the documentation says that the latter is faster.
>
> How is this to be configured? I could not find a hook point to return the
> planner to be used.
>
> Thank you.
> Meron
>

Reply via email to