[
https://issues.apache.org/jira/browse/FLINK-28987?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
godfrey he closed FLINK-28987.
------------------------------
Resolution: Fixed
Fixed in master:
d402fe255cdca37568ad6ac585ac6fbdf24b5e74
ef97c651f06dc835c36e8213687d66e78d80a0b6
> Incorrect async to sync lookup fallback path of LegacyTableSourceTable
> ----------------------------------------------------------------------
>
> Key: FLINK-28987
> URL: https://issues.apache.org/jira/browse/FLINK-28987
> Project: Flink
> Issue Type: Bug
> Components: Table SQL / Planner
> Affects Versions: 1.16.0
> Reporter: lincoln lee
> Assignee: lincoln lee
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.16.0
>
>
> FLINK-28779 introduces a new lookup hint, for LegacyTableSourceTable
> interface, it defines only one lookup capability of either sync or async is
> supported by 'isAsyncEnabled', but we add a unnecessary fallback path to
> fetch both async and sync lookup in `LookupJoinUtil`, this should be fixed.
> {code:java}
> if (tableSource.isAsyncEnabled()) {
> asyncLookupFunction =
> tableSource.getAsyncLookupFunction(lookupFieldNamesInOrder);
> }
> syncLookupFunction = tableSource.getLookupFunction(lookupFieldNamesInOrder);
> {code}
> Once this was fixed, it can completely avoid create user lookup function
> instance to determine if async lookup is enabled for execution, this can make
> the exec lookup join node immutable and easier to maintain.
> Also, since the new hint adds the capability of configuring async params on
> join level (different joins in same query may has different params), so the
> description of lookup join transformation should carry async params and retry
> strategy (which take effect in runtime) for easier debugging
--
This message was sent by Atlassian Jira
(v8.20.10#820010)