[
https://issues.apache.org/jira/browse/FLINK-40889?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18127356#comment-18127356
]
ChenZhuo commented on FLINK-40889:
----------------------------------
Hi, I would like to work on this issue.
My understanding is that StreamNonDeterministicUpdatePlanVisitor does not
dispatch StreamPhysicalVectorSearchTableFunction, causing both TRY_RESOLVE and
EXPLAIN ... PLAN_ADVICE to fail. Since VECTOR_SEARCH only accepts insert-only
input, I plan to add a pass-through branch following the existing ML_PREDICT
pattern, with regression coverage for both paths.
Please assign this issue to me if the approach sounds good.
> NDU plan visitor has no branch for VECTOR_SEARCH, TRY_RESOLVE and EXPLAIN
> PLAN_ADVICE fail
> ------------------------------------------------------------------------------------------
>
> Key: FLINK-40889
> URL: https://issues.apache.org/jira/browse/FLINK-40889
> Project: Flink
> Issue Type: Bug
> Components: Table SQL / Planner
> Affects Versions: 2.2.0, 2.3.0, 2.4.0
> Reporter: Martijn Visser
> Priority: Major
>
> With {{table.optimizer.non-deterministic-update.strategy}} set to
> {{TRY_RESOLVE}}, every query with VECTOR_SEARCH fails during planning, also
> when the pipeline is insert-only:
> {code}
> java.lang.UnsupportedOperationException: Unsupported to visit node
> StreamPhysicalVectorSearchTableFunction, please add the visit implementation
> if it is a newly added stream physical node.
> {code}
> EXPLAIN PLAN_ADVICE fails with the same exception under the default
> {{IGNORE}}, because NonDeterministicUpdateAnalyzer only catches
> TableException.
> VECTOR_SEARCH only accepts insert-only input, so
> StreamNonDeterministicUpdatePlanVisitor needs a pass-through branch like the
> one for ML_PREDICT, and the analyzer should not let the exception escape.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)