[
https://issues.apache.org/jira/browse/FLINK-9501?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Rong Rong updated FLINK-9501:
-----------------------------
Description:
Idea here is to treat every Java parameter objects type as SQL ANY type. While
disallowing SQL ANY type in result object.
This ticket is specifically to deal with composite generic erasure types such
as
{code:java}
public String eval(Map<String, ?> mapArg) { /* ... */ }
public String eval(Map<String, Object> mapArg) { /* ... */ }
{code}
The changes needed here I can think of for now are:
1. Ensure SQL ANY type is used for component/field types for composite
TypeInformation with GenericTypeInfo nested fields
2. Modify FunctionCatalog lookup to use SQL ANY type if generic erasure types
happens.
was:
Idea here is to treat every Java parameter objects type as SQL ANY type. While
disallowing SQL ANY type in result object.
This ticket is specifically to deal with composite generic erasure types such
as
{code:java}
public String eval(Map<String, ?> mapArg) { //...}
public String eval(Map<String, Object> mapArg) { //... }
{code}
The changes needed here I can think of for now are:
1. Ensure SQL ANY type is used for component/field types for composite
TypeInformation with GenericTypeInfo nested fields
2. Modify FunctionCatalog lookup to use SQL ANY type if generic erasure types
happens.
> Allow Object or Wildcard type in user-define functions as parameter types but
> not result types
> ----------------------------------------------------------------------------------------------
>
> Key: FLINK-9501
> URL: https://issues.apache.org/jira/browse/FLINK-9501
> Project: Flink
> Issue Type: Sub-task
> Components: Table API & SQL
> Reporter: Rong Rong
> Assignee: Rong Rong
> Priority: Major
>
> Idea here is to treat every Java parameter objects type as SQL ANY type.
> While disallowing SQL ANY type in result object.
> This ticket is specifically to deal with composite generic erasure types such
> as
> {code:java}
> public String eval(Map<String, ?> mapArg) { /* ... */ }
> public String eval(Map<String, Object> mapArg) { /* ... */ }
> {code}
> The changes needed here I can think of for now are:
> 1. Ensure SQL ANY type is used for component/field types for composite
> TypeInformation with GenericTypeInfo nested fields
> 2. Modify FunctionCatalog lookup to use SQL ANY type if generic erasure types
> happens.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)