[
https://issues.apache.org/jira/browse/FLINK-29890?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alexander Fedulov updated FLINK-29890:
--------------------------------------
Description:
1.16 introduced a lot of changes with respect to classloading in the Table API.
The way UDFs could previously be loaded from JARs in 1.15 does not work in 1.16
anymore - it fails with the ClassNotFound exception when UDFs are used at
runtime.
Here is a repository with a reproducible example:
[https://github.com/afedulov/udfs-flink-1.16/blob/main/src/test/java/com/example/UDFTest.java]
It works as is (Flink 1.15.2) and fails when switching the dependencies to
1.16.0.
Here are some of the PRs that might be related to the issue:
[https://github.com/apache/flink/pull/20001]
[https://github.com/apache/flink/pull/19845]
[https://github.com/apache/flink/pull/20211] (fixes a similar issue introduced
after classloading changes in 1.16)
It is unclear how UDFs can be loaded from JARs in 1.16.
Ideally, this should be covered by tests and described in the documentation.
was:
1.16 introduced a lot of changes with respect to classloading in the Table API.
The way UDFs could previously be loaded from JARs in 1.15 does not work in 1.16
anymore - it fails with the ClassNotFound exception when UDFs are used at
runtime.
Here is a repository with a reproducible example:
[https://github.com/afedulov/udfs-flink-1.16/blob/main/src/test/java/com/example/UDFTest.java]
It works as is (Flink 1.15.2) and fails when switching the dependencies to
1.16.0.
Here are some of the PRs that might be related to the issue:
[https://github.com/apache/flink/pull/20001]
[https://github.com/apache/flink/pull/19845]
[https://github.com/apache/flink/pull/20211] (fixes a similar issue introduced
after classloading changes in 1.16)
It is unclear how UDFs can be loaded from JARs in 1.16.
Ideally, this also should be covered by tests and described in the
documentation.
> UDFs classloading from JARs in 1.16 is broken
> ---------------------------------------------
>
> Key: FLINK-29890
> URL: https://issues.apache.org/jira/browse/FLINK-29890
> Project: Flink
> Issue Type: Bug
> Components: Table SQL / Runtime
> Affects Versions: 1.16.0
> Reporter: Alexander Fedulov
> Priority: Major
>
> 1.16 introduced a lot of changes with respect to classloading in the Table
> API. The way UDFs could previously be loaded from JARs in 1.15 does not work
> in 1.16 anymore - it fails with the ClassNotFound exception when UDFs are
> used at runtime.
> Here is a repository with a reproducible example:
> [https://github.com/afedulov/udfs-flink-1.16/blob/main/src/test/java/com/example/UDFTest.java]
>
> It works as is (Flink 1.15.2) and fails when switching the dependencies to
> 1.16.0.
> Here are some of the PRs that might be related to the issue:
> [https://github.com/apache/flink/pull/20001]
> [https://github.com/apache/flink/pull/19845]
> [https://github.com/apache/flink/pull/20211] (fixes a similar issue
> introduced after classloading changes in 1.16)
>
> It is unclear how UDFs can be loaded from JARs in 1.16.
> Ideally, this should be covered by tests and described in the documentation.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)