[
https://issues.apache.org/jira/browse/CALCITE-3008?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16820604#comment-16820604
]
Haisheng Yuan commented on CALCITE-3008:
----------------------------------------
{quote}
That's actually a good point. SqlToRelConverter requires us to generate one
AuxiliaryConverter instance for each SqlFunction (e.g. the List), so it would
be very inefficient to pass a reflective class object and then call the
newInstance method.
I do have the option to change the AuxiliaryConverter API to do
RexNode convert(RexBuilder rexBuilder, RexNode groupCall, RexNode e,
SqlFunction sqlCall);
With the extra parameter, we can make the AuxiliaryConverter static. This
require to change a public interface which I hesitated to do so.
{quote}
I am inclined to pass SqlFunction to convert function of AuxiliaryConverter,
and deprecate the old method and Impl.f.
[~julianhyde] Any reason you want to keep SqlFunction as a member of
AuxiliaryConverter.Impl?
> Making AuxiliaryConverter Pluggable
> -----------------------------------
>
> Key: CALCITE-3008
> URL: https://issues.apache.org/jira/browse/CALCITE-3008
> Project: Calcite
> Issue Type: Improvement
> Components: core
> Reporter: Rong Rong
> Priority: Major
> Labels: pull-request-available
> Time Spent: 20m
> Remaining Estimate: 0h
>
> Currently the {{AuxiliaryConverter}} in calcite core is set to be static with
> only one basic implementation. It would be nice to have it pluggable so that
> other systems can implement its own.
> Was wondering if this would be a good feature to add?
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)