[ 
https://issues.apache.org/jira/browse/FLINK-33933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17800230#comment-17800230
 ] 

KarlManong commented on FLINK-33933:
------------------------------------

`SerializedThrowable` method `addAllSuppressed` may accept alreadySeen ?

> SerializedThrowable will be java.lang.StackOverflowError when 
> AsyncLookupFunction throw an exception
> ----------------------------------------------------------------------------------------------------
>
>                 Key: FLINK-33933
>                 URL: https://issues.apache.org/jira/browse/FLINK-33933
>             Project: Flink
>          Issue Type: Bug
>         Environment: tested from 1.16 to 1.18 , the same behavior 
>            Reporter: KarlManong
>            Priority: Minor
>
> Here is a simple example
> {code:java}
> // example
> public class TableA implements LookupTableSource {
> @Nullable
> private final LookupCache cache;
> public TableA(@Nullable LookupCache cache) {
> this.cache = cache;
> }
> @Override
> public LookupRuntimeProvider
> getLookupRuntimeProvider(LookupContext context) {
> FunctionA lookupFunction = new FunctionA();
> if (cache != null) {
> return PartialCachingAsyncLookupProvider.of(lookupFunction, cache);
> } else {
> return AsyncLookupFunctionProvider.of(lookupFunction);
> }
> }
> @Override
> public DynamicTableSource copy() {
> return new TableA(cache);
> }
> @Override
> public String asSummaryString() {
> return "Async Table";
> }
> }
> public class LookupFunctionA extends AsyncLookupFunction {
> @Override
> public CompletableFuture<Collection<RowData>> asyncLookup(RowData keyRow) {
> CompletableFuture<Collection<RowData>> future = new
> CompletableFuture<>();
> future.completeExceptionally(new IOException("request failed"));
> return future;
> }
> }
> {code}
> When using TableA, StackOverflowError occurs



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to