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

Sergey Nuyanzin updated FLINK-34156:
------------------------------------
    Description: 
This is an umbrella task for migration of Calcite rules from Scala to Java 
mentioned at [https://cwiki.apache.org/confluence/display/FLINK/2.0+Release]

The reason is that since 1.28.0 ( CALCITE-4787 - Move core to use Immutables 
instead of ImmutableBeans ) Calcite started to use Immutables 
([https://immutables.github.io/]) and since 1.29.0 removed ImmutableBeans ( 
CALCITE-4839 - Remove remnants of ImmutableBeans post 1.28 release ). All rule 
configuration related api which is not Immutables based is marked as 
deprecated. Since Immutables implies code generation while java compilation it 
is seems impossible to use for rules in Scala code.

About the procedure to migrate: I would suggest to follow the steps already 
described at javadocs of org.apache.calcite.plan.RelRule
In fact the steps are written for migration from deprecated java api to 
Immutables. It would work for scala to java migration as well.
Also it would make sense to mention that there is +*no need*+ to migrate rules 
extending +ConverterRule+ since such rules do not have the problem described in 
issue description.

  was:
This is an umbrella task for migration of Calcite rules from Scala to Java 
mentioned at https://cwiki.apache.org/confluence/display/FLINK/2.0+Release

The reason is that since 1.28.0 ( CALCITE-4787 - Move core to use Immutables 
instead of ImmutableBeans ) Calcite started to use Immutables 
(https://immutables.github.io/) and since 1.29.0 removed ImmutableBeans ( 
CALCITE-4839 - Remove remnants of ImmutableBeans post 1.28 release ). All rule 
configuration related api which is not Immutables based is marked as 
deprecated. Since Immutables implies code generation while java compilation it 
is seems impossible to use for rules in Scala code.


> Move Flink Calcite rules from Scala to Java
> -------------------------------------------
>
>                 Key: FLINK-34156
>                 URL: https://issues.apache.org/jira/browse/FLINK-34156
>             Project: Flink
>          Issue Type: Technical Debt
>          Components: Table SQL / Planner
>            Reporter: Sergey Nuyanzin
>            Assignee: Sergey Nuyanzin
>            Priority: Major
>             Fix For: 2.0.0
>
>
> This is an umbrella task for migration of Calcite rules from Scala to Java 
> mentioned at [https://cwiki.apache.org/confluence/display/FLINK/2.0+Release]
> The reason is that since 1.28.0 ( CALCITE-4787 - Move core to use Immutables 
> instead of ImmutableBeans ) Calcite started to use Immutables 
> ([https://immutables.github.io/]) and since 1.29.0 removed ImmutableBeans ( 
> CALCITE-4839 - Remove remnants of ImmutableBeans post 1.28 release ). All 
> rule configuration related api which is not Immutables based is marked as 
> deprecated. Since Immutables implies code generation while java compilation 
> it is seems impossible to use for rules in Scala code.
> About the procedure to migrate: I would suggest to follow the steps already 
> described at javadocs of org.apache.calcite.plan.RelRule
> In fact the steps are written for migration from deprecated java api to 
> Immutables. It would work for scala to java migration as well.
> Also it would make sense to mention that there is +*no need*+ to migrate 
> rules extending +ConverterRule+ since such rules do not have the problem 
> described in issue description.



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

Reply via email to