[
https://issues.apache.org/jira/browse/FLINK-39839?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Yuan Kui updated FLINK-39839:
-----------------------------
Issue Type: New Feature (was: Improvement)
> FLIP-580:AsyncTableFunction supports user-defined timeout handling logic
> ------------------------------------------------------------------------
>
> Key: FLINK-39839
> URL: https://issues.apache.org/jira/browse/FLINK-39839
> Project: Flink
> Issue Type: New Feature
> Components: Table SQL / Planner
> Affects Versions: 2.4.0
> Reporter: Yuan Kui
> Priority: Major
> Fix For: 2.4.0
>
>
> An increasing number of users are leveraging `{{{}AsyncTableFunction`{}}} to
> invoke remote inference clusters. Such invocations are essentially remote
> inference requests, which are far more prone to timeouts than regular I/O
> operations. Users expect to be able to define custom handling logic when a
> timeout occurs — for example, falling back to default data or accumulating
> failure statistics — rather than having a `{{{}TimeoutException`{}}} thrown
> directly and causing the entire job to fail.
> In the current codebase, `{{{}AsyncTableFunction`{}}} is ultimately invoked
> by `{{{}AsyncWaitOperator`{}}}, which already defines its own timeout
> handling logic. The goal of this proposal is therefore to connect the timeout
> call chain from `{{{}AsyncWaitOperator`{}}} all the way down to
> `{{{}AsyncTableFunction`{}}}. {color:#222233}The configured
> timeout(`{color}table.exec.async-lookup.timeout{color:#222233}`) is the total
> budget measured from the first asyncInvoke. When the async-lookup timer
> expires, any pending delayed retry is cancelled and timeout(...) is invoked
> exactly once. {color}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)