[ 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. We could follow steps from javadocs of {{org.apache.calcite.plan.RelRule}} written for migration from deprecated java api to Immutables. It would work for scala to java migration as well. Please keep in mind that there is +*no need*+ to migrate rules extending +ConverterRule+ since these rules do not have such problem. 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. We could follow steps from javadocs of {{org.apache.calcite.plan.RelRule}} written for migration from deprecated java api to Immutables. It would work for scala to java migration as well. Please keep in mind that there is +*no need*+ to migrate rules extending +ConverterRule+ since such rules do not have such problem. > 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. > We could follow steps from javadocs of {{org.apache.calcite.plan.RelRule}} > written for migration from deprecated java api to Immutables. > It would work for scala to java migration as well. > Please keep in mind that there is +*no need*+ to migrate rules extending > +ConverterRule+ since these rules do not have such problem. -- This message was sent by Atlassian Jira (v8.20.10#820010)