Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-34156

Move Flink Calcite rules from Scala to Java

Attach filesAttach ScreenshotAdd voteVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Technical Debt
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • 2.0.0
    • Table SQL / Planner
    • None

    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.

      Attachments

        Issue Links

        1.
        Migrate SimplifyJoinConditionRule Sub-task Open Sergey Nuyanzin Actions
        2.
        Migrate JoinDeriveNullFilterRule Sub-task Open Jacky Lau Actions
        3.
        Migrate WindowGroupReorderRule Sub-task Open Jacky Lau Actions
        4.
        Migrate JoinConditionTypeCoerceRule Sub-task Open Jacky Lau Actions
        5.
        Migrate RemoveRedundantLocalHashAggRule Sub-task Open Sergey Nuyanzin Actions
        6.
        Migrate SimplifyFilterConditionRule Sub-task Open Sergey Nuyanzin Actions
        7.
        Migrate RemoveRedundantLocalRankRule Sub-task Open Sergey Nuyanzin Actions
        8.
        Migrate BatchPhysicalConstantTableFunctionScanRule Sub-task Open Sergey Nuyanzin Actions
        9.
        Migrate PushLimitIntoLegacyTableSourceScanRule Sub-task Open Sergey Nuyanzin Actions
        10.
        Migrate StreamPhysicalConstantTableFunctionScanRule Sub-task Open Sergey Nuyanzin Actions
        11.
        Migrate StreamPhysicalWindowJoinRule Sub-task Open Sergey Nuyanzin Actions
        12.
        Migrate BatchPhysicalBoundedStreamScanRule Sub-task Open Unassigned Actions
        13.
        Migrate BatchPhysicalCalcRule Sub-task Open Unassigned Actions
        14.
        Migrate BatchPhysicalDistributionRule Sub-task Open Unassigned Actions
        15.
        Migrate BatchPhysicalExpandRule Sub-task Open Unassigned Actions
        16.
        Migrate BatchPhysicalUnionRule Sub-task Open Unassigned Actions
        17.
        Migrate BatchPhysicalValuesRule Sub-task Open Unassigned Actions
        18.
        Migrate BatchPhysicalScriptTransformRule Sub-task Open Unassigned Actions
        19.
        Migrate StreamPhysicalLimitRule Sub-task Open Unassigned Actions
        20.
        Migrate StreamPhysicalUnionRule Sub-task Open Unassigned Actions
        21.
        Migrate StreamPhysicalValuesRule Sub-task Open Unassigned Actions
        22.
        Migrate SplitPythonConditionFromJoinRule Sub-task Open Unassigned Actions
        23.
        Migrate JoinConditionEqualityTransferRule Sub-task Open Sergey Nuyanzin Actions
        24.
        Migrate PushProjectIntoLegacyTableSourceScanRule Sub-task Open Unassigned Actions
        25.
        Migrate CalcSnapshotTransposeRule Sub-task Open Sergey Nuyanzin Actions
        26.
        Migrate AggregateReduceGroupingRule Sub-task Open Sergey Nuyanzin Actions
        27.
        Migrate ConvertToNotInOrInRule Sub-task Open Sergey Nuyanzin Actions
        28.
        Migrate JoinDependentConditionDerivationRule Sub-task Open Sergey Nuyanzin Actions
        29.
        Migrate FlinkRewriteSubQueryRule Sub-task Open Sergey Nuyanzin Actions
        30.
        Migrate TemporalJoinUtil Sub-task Open Unassigned Actions
        31.
        Migrate RewriteMultiJoinConditionRule Sub-task Open Unassigned Actions
        32.
        Migrate TwoStageOptimizedAggregateRule Sub-task Open Unassigned Actions
        33.
        Migrate SplitPythonConditionFromCorrelateRule Sub-task Open Unassigned Actions
        34.
        Migrate PythonUtil Sub-task Open Unassigned Actions

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            Sergey Nuyanzin Sergey Nuyanzin
            Sergey Nuyanzin Sergey Nuyanzin

            Dates

              Created:
              Updated:

              Slack

                Issue deployment