[
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)