[ 
https://issues.apache.org/jira/browse/PHOENIX-3355?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15633685#comment-15633685
 ] 

James Taylor commented on PHOENIX-3355:
---------------------------------------

For (1), I think it'd be fine to change the constructor to 
{{XXXFunction(List<Expression>, StatementContext)}}. I think I resisted that 
initially to try to have a complete separation between compilation and 
execution. This starts to leak compilation data structures into the runtime. 
Not a huge deal, though. There are only a few functions that need this context, 
but adding the context to all would require changing a lot of constructors.

Would another potential way be to have a means of specifying a kind of 
"context-sensitive" default value? Not sure if that's possible in Calcite or 
not - kind of injecting a default value from the context.

> Register Phoenix built-in functions as Calcite functions
> --------------------------------------------------------
>
>                 Key: PHOENIX-3355
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-3355
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: James Taylor
>            Assignee: Eric Lomore
>              Labels: calcite
>         Attachments: PHOENIX-3355.wip, PHOENIX-3355.wip2
>
>
> We should register all Phoenix built-in functions that don't exist in Calcite.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to