[ 
https://issues.apache.org/jira/browse/FLINK-24427?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17423039#comment-17423039
 ] 

Seth Wiesman commented on FLINK-24427:
--------------------------------------

Hi [~eloisant], 

 

The goal is to hide the planner from the user code classloader so that user 
code can use any scala version without the community having to cross build the 
planner. There are a few ways to achieve this in practice; and I'm not sure 
what specifically Timo has in mind. One option is to use Flink's plugin 
mechanism, which is used to load file systems and metric reporters, and hides 
all dependencies in a dedicated classloader. Another is what we recently did to 
hide akka from flink-runtime, making it effectively scala free FLINK-18783

 

 

> Hide Scala in flink-table-planner from API
> ------------------------------------------
>
>                 Key: FLINK-24427
>                 URL: https://issues.apache.org/jira/browse/FLINK-24427
>             Project: Flink
>          Issue Type: Sub-task
>          Components: API / Scala, Table SQL / API, Table SQL / Planner
>            Reporter: Timo Walther
>            Priority: Major
>
> FLIP-32 has decoupled the planner from the API. However, the planner code 
> base is still the largest Scala code base we have in Flink that we cannot 
> port to Java easily.
> In order to allow arbitrary Scala versions in the user API, we suggest to 
> hide the Scala version of the planner from the Scala version of the API. The 
> API is mostly developed in Java and contains only a couple of classes 
> implemented in Scala. Those should be easier to maintain for various Scala 
> versions. The planner is already discovered via Java SPI.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to