[ 
https://issues.apache.org/jira/browse/FLINK-15635?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jark Wu closed FLINK-15635.
---------------------------
    Release Note: TableEnvironment introduces a user class loader to have a 
consistent class loading behavior in table programs, SQL Client and SQL 
Gateway. The user classloader manages all user jars such as jar added by `ADD 
JAR` or `CREATE FUNCTION .. USING JAR ..` statements. User-defined 
functions/connectors/catalogs should replace 
`Thread.currentThread().getContextClassLoader()` with the user class loader to 
load classes. Otherwise, ClassNotFoundException maybe thrown. The user class 
loader can be accessed via `FunctionContext#getUserCodeClassLoader`, 
`DynamicTableFactory.Context#getClassLoader` and 
`CatalogFactory.Context#getClassLoader`.
      Resolution: Fixed

> Allow passing a ClassLoader to EnvironmentSettings
> --------------------------------------------------
>
>                 Key: FLINK-15635
>                 URL: https://issues.apache.org/jira/browse/FLINK-15635
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Table SQL / API
>            Reporter: Timo Walther
>            Assignee: Francesco Guardiani
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.16.0
>
>
> We had a couple of class loading issues in the past because people forgot to 
> use the right classloader in {{flink-table}}. The SQL Client executor code 
> hacks a classloader into the planner process by using {{wrapClassLoader}} 
> that sets the threads context classloader.
> Instead we should allow passing a class loader to environment settings. This 
> class loader can be passed to the planner and can be stored in table 
> environment, table config, etc. to have a consistent class loading behavior.
> Having this in place should replace the need for 
> {{Thread.currentThread().getContextClassLoader()}} in the entire 
> {{flink-table}} module.



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

Reply via email to