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

Maryann Xue commented on PHOENIX-3355:
--------------------------------------

Yes, think the default value approach is fine for all scalar functions, and 
those functions that need ExpressionManager for instantiation are aggregate 
functions.
 
I suppose you have a function name to function info map for function resolving. 
If that's the case, things should be fine even without factories. I did notice 
that for CEIL, you'd switch to different concrete function class, like 
CeilDecimalExpression or CeilDateExpression, so you need to return all these 
signatures for CEIL and Calcite will do the parameter matching. Anyway, feel 
free to choose the factory approach if you think it'll work better.

> 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.function_constructor.patch, 
> 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