Details
-
Sub-task
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
Description
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.
Attachments
Issue Links
- is blocked by
-
FLINK-26519 Remove FlinkTypeFactory.INSTANCE singleton
- Closed
- is related to
-
FLINK-15552 parameters --library and --jar doesn't work for DDL in sqlClient
- Resolved
-
FLINK-15992 Incorrect classloader when finding TableFactory
- Closed
- relates to
-
FLINK-30318 sql-client failed to load jar passed with -j args in flink 1.16.0
- Closed
- links to