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 Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final StringFields inherited from interface org.apache.flink.table.planner.plan.nodes.exec.ExecNode
FIELD_NAME_CONFIGURATION, FIELD_NAME_DESCRIPTION, FIELD_NAME_ID, FIELD_NAME_INPUT_PROPERTIES, FIELD_NAME_OUTPUT_TYPE, FIELD_NAME_STATE, FIELD_NAME_TYPE -
Constructor Summary
ConstructorsConstructorDescriptionStreamExecTemporalJoin(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) 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) -
Method Summary
Modifier and TypeMethodDescriptionprotected org.apache.flink.api.dag.Transformation<org.apache.flink.table.data.RowData>translateToPlanInternal(PlannerBase planner, ExecNodeConfig config) Internal method, translates this node into a Flink operator.Methods inherited from class org.apache.flink.table.planner.plan.nodes.exec.ExecNodeBase
accept, createFormattedTransformationDescription, createFormattedTransformationName, createTransformationDescription, createTransformationMeta, createTransformationMeta, createTransformationName, createTransformationUid, getContextFromAnnotation, getDescription, getId, getInputEdges, getInputProperties, getOutputType, getPersistedConfig, getSimplifiedName, getTransformation, inputsContainSingleton, replaceInputEdge, setCompiled, setInputEdges, supportFusionCodegen, translateToFusionCodegenSpec, translateToFusionCodegenSpecInternal, translateToPlanMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.flink.table.planner.plan.nodes.exec.ExecNode
accept, getDescription, getId, getInputEdges, getInputProperties, getOutputType, replaceInputEdge, setCompiled, setInputEdgesMethods inherited from interface org.apache.flink.table.planner.plan.nodes.exec.ExecNodeTranslator
translateToPlanMethods inherited from interface org.apache.flink.table.planner.plan.nodes.exec.FusionCodegenExecNode
supportFusionCodegen, translateToFusionCodegenSpec
-
Field Details
-
TEMPORAL_JOIN_TRANSFORMATION
- See Also:
-
FIELD_NAME_JOIN_SPEC
- See Also:
-
FIELD_NAME_IS_TEMPORAL_FUNCTION_JOIN
- See Also:
-
FIELD_NAME_LEFT_TIME_ATTRIBUTE_INDEX
- See Also:
-
FIELD_NAME_RIGHT_TIME_ATTRIBUTE_INDEX
- See Also:
-
FIELD_INDEX_FOR_PROC_TIME_ATTRIBUTE
public static final int FIELD_INDEX_FOR_PROC_TIME_ATTRIBUTE- See Also:
-
-
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:ExecNodeBaseInternal method, translates this node into a Flink operator.- Specified by:
translateToPlanInternalin classExecNodeBase<org.apache.flink.table.data.RowData>- Parameters:
planner- The planner.config- per-ExecNodeconfiguration that contains the merged configuration from various layers which all the nodes implementing this method should use, instead of retrieving configuration from theplanner. For more details checkExecNodeConfig.
-