Class StreamExecTemporalJoin

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.stream.StreamExecTemporalJoin
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>, StreamExecNode<org.apache.flink.table.data.RowData>

@ExecNodeMetadata(name="stream-exec-temporal-join", version=1, producedTransformations="temporal-join", minPlanVersion=v1_15, minStateVersion=v1_15) public class StreamExecTemporalJoin extends ExecNodeBase<org.apache.flink.table.data.RowData> implements StreamExecNode<org.apache.flink.table.data.RowData>, SingleTransformationTranslator<org.apache.flink.table.data.RowData>
StreamExecNode for temporal table join (FOR SYSTEM_TIME AS OF) and temporal TableFunction join (LATERAL TemporalTableFunction(o.proctime)).

The legacy temporal table function join is the subset of temporal table join, the only difference is the validation, we reuse most same logic here.

  • Field Details

  • Constructor Details

    • StreamExecTemporalJoin

      public StreamExecTemporalJoin(org.apache.flink.configuration.ReadableConfig tableConfig, JoinSpec joinSpec, boolean isTemporalTableFunctionJoin, int leftTimeAttributeIndex, int rightTimeAttributeIndex, InputProperty leftInputProperty, InputProperty rightInputProperty, org.apache.flink.table.types.logical.RowType outputType, String description)
    • StreamExecTemporalJoin

      public StreamExecTemporalJoin(int id, ExecNodeContext context, org.apache.flink.configuration.ReadableConfig persistedConfig, JoinSpec joinSpec, boolean isTemporalTableFunctionJoin, int leftTimeAttributeIndex, int rightTimeAttributeIndex, 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.