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.StreamExecJoin
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-join", version=1, producedTransformations="join", minPlanVersion=v1_15, minStateVersion=v1_15) public class StreamExecJoin 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 regular Joins.

Regular joins are the most generic type of join in which any new records or changes to either side of the join input are visible and are affecting the whole join result.

  • Field Details

  • Constructor Details

    • StreamExecJoin

      public StreamExecJoin(org.apache.flink.configuration.ReadableConfig tableConfig, JoinSpec joinSpec, List<int[]> leftUpsertKeys, List<int[]> rightUpsertKeys, InputProperty leftInputProperty, InputProperty rightInputProperty, Map<Integer,Long> stateTtlFromHint, org.apache.flink.table.types.logical.RowType outputType, String description)
    • StreamExecJoin

      public StreamExecJoin(int id, ExecNodeContext context, org.apache.flink.configuration.ReadableConfig persistedConfig, JoinSpec joinSpec, List<int[]> leftUpsertKeys, List<int[]> rightUpsertKeys, @Nullable List<StateMetadata> stateMetadataList, 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.