KarlManong created FLINK-33933: ---------------------------------- Summary: 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
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)