[
https://issues.apache.org/jira/browse/FLINK-15595?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17016751#comment-17016751
]
Timo Walther commented on FLINK-15595:
--------------------------------------
The core problem is that FLIP-51 is still not entirely implemented and thus the
operator tables are spread across the modules. The design of FLIP-68 is correct
as far as I can see it. The core feature of ingesting Hive built-in functions
works. People can declare there own modules with SQL built-in functions as a
fallback. I agree that the latter behavior is a bit confusing, if there is a
simple solution that requires minimal changes +1 but otherwise we can add a
warning that the module feature has some caveats. Regular users will not use
the modules anyway. What do you think?
> Resolution Order is chaotic not as FLIP-68 defined
> ---------------------------------------------------
>
> Key: FLINK-15595
> URL: https://issues.apache.org/jira/browse/FLINK-15595
> Project: Flink
> Issue Type: Bug
> Components: Table SQL / API
> Reporter: Jingsong Lee
> Priority: Critical
> Fix For: 1.10.0
>
>
> First of all, the implementation is problematic. CoreModule returns
> BuiltinFunctionDefinition, which cannot be resolved in
> FunctionCatalogOperatorTable, so it will fall back to FlinkSqlOperatorTable.
> Second, the function defined by CoreModule is seriously incomplete. You can
> compare it with FunctionCatalogOperatorTable, a lot less. This leads to the
> fact that the priority of some functions is in CoreModule, and the priority
> of some functions is behind all modules. This is confusing, which is not what
> we want to define in FLIP-68.
> We should:
> * We should resolve BuiltinFunctionDefinition correctly in
> FunctionCatalogOperatorTable.
> * CoreModule should contains all functions in FlinkSqlOperatorTable, a
> simple way could provided calcite wrapper to wrap all functions.
> * PlannerContext.getBuiltinSqlOperatorTable should not contains
> FlinkSqlOperatorTable, we should use one
> FunctionCatalogOperatorTable.Otherwise, there will be a lot of confusion.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)