[
https://issues.apache.org/jira/browse/FLINK-32188?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17726203#comment-17726203
]
Xin Chen edited comment on FLINK-32188 at 5/25/23 12:44 PM:
------------------------------------------------------------
I also explore why lookupFunction returned Option.empty:
Its internal call chain:
{code:java}
1、Try(functionCatalog.lookupFunction(identifier))---->
2、resolveAmbiguousFunctionReference(identifier.getObjectName())---->
3、Optional<FunctionDefinition> candidate =
moduleManager.getFunctionDefinition(normalizedName)---->
4、modules.get(moduleName).listFunctions().stream().anyMatch(name::equalsIgnoreCase)
{code}
Empty is returned here because it cannot find
‘FunctionDefinition:ARRAY_VALUE_CONSTRUCTOR’ from loaded module: core.
!screenshot-3.png!
!screenshot-4.png!
!image-2023-05-25-20-44-08-834.png!
!image-2023-05-25-20-44-47-581.png!
was (Author: JIRAUSER298666):
I also explore why lookupFunction returned Option.empty:
Its internal call chain:
{code:java}
1、Try(functionCatalog.lookupFunction(identifier))---->
2、resolveAmbiguousFunctionReference(identifier.getObjectName())---->
3、Optional<FunctionDefinition> candidate =
moduleManager.getFunctionDefinition(normalizedName)---->
4、modules.get(moduleName).listFunctions().stream().anyMatch(name::equalsIgnoreCase)
{code}
Empty is returned here because it cannot find
‘FunctionDefinition:ARRAY_VALUE_CONSTRUCTOR’ from loaded module: core.
!screenshot-3.png!
!screenshot-4.png!
!screenshot-5.png!
!screenshot-6.png!
> Does the custom connector not support pushing down "where" query predicates
> to query fields of array type?
> ----------------------------------------------------------------------------------------------------------
>
> Key: FLINK-32188
> URL: https://issues.apache.org/jira/browse/FLINK-32188
> Project: Flink
> Issue Type: Bug
> Components: Table SQL / Planner
> Affects Versions: 1.12.2, 1.17.0, 1.16.1
> Reporter: Xin Chen
> Priority: Major
> Attachments: image-2023-05-25-17-16-02-288.png,
> image-2023-05-25-20-44-08-834.png, image-2023-05-25-20-44-47-581.png,
> screenshot-1.png, screenshot-2.png, screenshot-3.png, screenshot-4.png,
> screenshot-5.png, screenshot-6.png
>
>
> When I customized a data source connector which assumed as image-connector, I
> found that when creating a table with ddl, I specified a field URL as an
> array type. When submitting an SQL task with Flink, I specified query this
> field as a fixed array. For example, select * from image source where
> URL=ARRAY ['/flink. jpg', '/flink_1. jpg'], but it couldn't obtain the
> corresponding predicate filters at all.
> Does the custom connector not support to query fields of array type with
> "where"?
--
This message was sent by Atlassian Jira
(v8.20.10#820010)