java.lang.Object
org.apache.flink.table.planner.plan.nodes.exec.ExecNodeBase<org.apache.flink.table.data.RowData>
org.apache.flink.table.planner.plan.nodes.exec.common.CommonExecExpand
All Implemented Interfaces:
ExecNode<org.apache.flink.table.data.RowData>, ExecNodeTranslator<org.apache.flink.table.data.RowData>, FusionCodegenExecNode, SingleTransformationTranslator<org.apache.flink.table.data.RowData>
Direct Known Subclasses:
BatchExecExpand, StreamExecExpand

public abstract class CommonExecExpand extends ExecNodeBase<org.apache.flink.table.data.RowData> implements SingleTransformationTranslator<org.apache.flink.table.data.RowData>
Base ExecNode that can expand one row to multiple rows based on given projects.
  • Field Details

  • Constructor Details

    • CommonExecExpand

      public CommonExecExpand(int id, ExecNodeContext context, org.apache.flink.configuration.ReadableConfig persistedConfig, List<List<org.apache.calcite.rex.RexNode>> projects, boolean retainHeader, List<InputProperty> inputProperties, org.apache.flink.table.types.logical.RowType outputType, String description)
  • Method Details

    • translateToPlanInternal

      protected org.apache.flink.api.dag.Transformation<org.apache.flink.table.data.RowData> translateToPlanInternal(PlannerBase planner, ExecNodeConfig config)
      Description copied from class: ExecNodeBase
      Internal method, translates this node into a Flink operator.
      Specified by:
      translateToPlanInternal in class ExecNodeBase<org.apache.flink.table.data.RowData>
      Parameters:
      planner - The planner.
      config - per-ExecNode configuration that contains the merged configuration from various layers which all the nodes implementing this method should use, instead of retrieving configuration from the planner. For more details check ExecNodeConfig.