Hi everyone,

1.16 introduced quite 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, I believe, 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)

How can UDF JARs be loaded in 1.16?

Best,
Alexander Fedulov

Reply via email to