@ExecNodeMetadata(name="stream-exec-lookup-join", version=1, producedTransformations="lookup-join", minPlanVersion=v1_15, minStateVersion=v1_15) public class StreamExecLookupJoin extends CommonExecLookupJoin implements StreamExecNode<org.apache.flink.table.data.RowData>, MultipleTransformationTranslator<org.apache.flink.table.data.RowData>
StreamExecNode for temporal table join that implemented by lookup.| Modifier and Type | Field and Description |
|---|---|
static String |
FIELD_NAME_LOOKUP_KEY_CONTAINS_PRIMARY_KEY |
static String |
FIELD_NAME_REQUIRE_UPSERT_MATERIALIZE |
static String |
STATE_NAME |
FIELD_NAME_ASYNC_OPTIONS, FIELD_NAME_FILTER_ON_TEMPORAL_TABLE, FIELD_NAME_INPUT_CHANGELOG_MODE, FIELD_NAME_JOIN_TYPE, FIELD_NAME_LOOKUP_KEYS, FIELD_NAME_PRE_FILTER_CONDITION, FIELD_NAME_PROJECTION_ON_TEMPORAL_TABLE, FIELD_NAME_REMAINING_JOIN_CONDITION, FIELD_NAME_RETRY_OPTIONS, FIELD_NAME_TEMPORAL_TABLE, LOOKUP_JOIN_MATERIALIZE_TRANSFORMATION, LOOKUP_JOIN_TRANSFORMATIONFIELD_NAME_CONFIGURATION, FIELD_NAME_DESCRIPTION, FIELD_NAME_ID, FIELD_NAME_INPUT_PROPERTIES, FIELD_NAME_OUTPUT_TYPE, FIELD_NAME_STATE, FIELD_NAME_TYPE| Constructor and Description |
|---|
StreamExecLookupJoin(int id,
ExecNodeContext context,
org.apache.flink.configuration.ReadableConfig persistedConfig,
org.apache.flink.table.runtime.operators.join.FlinkJoinType joinType,
org.apache.calcite.rex.RexNode preFilterCondition,
org.apache.calcite.rex.RexNode remainingJoinCondition,
TemporalTableSourceSpec temporalTableSourceSpec,
Map<Integer,LookupJoinUtil.LookupKey> lookupKeys,
List<org.apache.calcite.rex.RexNode> projectionOnTemporalTable,
org.apache.calcite.rex.RexNode filterOnTemporalTable,
boolean lookupKeyContainsPrimaryKey,
boolean upsertMaterialize,
LookupJoinUtil.AsyncLookupOptions asyncLookupOptions,
LookupJoinUtil.RetryLookupOptions retryOptions,
org.apache.flink.table.connector.ChangelogMode inputChangelogMode,
List<StateMetadata> stateMetadataList,
List<InputProperty> inputProperties,
org.apache.flink.table.types.logical.RowType outputType,
String description) |
StreamExecLookupJoin(org.apache.flink.configuration.ReadableConfig tableConfig,
org.apache.flink.table.runtime.operators.join.FlinkJoinType joinType,
org.apache.calcite.rex.RexNode preFilterCondition,
org.apache.calcite.rex.RexNode remainingJoinCondition,
TemporalTableSourceSpec temporalTableSourceSpec,
Map<Integer,LookupJoinUtil.LookupKey> lookupKeys,
List<org.apache.calcite.rex.RexNode> projectionOnTemporalTable,
org.apache.calcite.rex.RexNode filterOnTemporalTable,
boolean lookupKeyContainsPrimaryKey,
boolean upsertMaterialize,
LookupJoinUtil.AsyncLookupOptions asyncLookupOptions,
LookupJoinUtil.RetryLookupOptions retryOptions,
org.apache.flink.table.connector.ChangelogMode inputChangelogMode,
InputProperty inputProperty,
org.apache.flink.table.types.logical.RowType outputType,
String description) |
| Modifier and Type | Method and Description |
|---|---|
protected org.apache.flink.api.dag.Transformation<org.apache.flink.table.data.RowData> |
createSyncLookupJoinWithState(org.apache.flink.api.dag.Transformation<org.apache.flink.table.data.RowData> inputTransformation,
org.apache.calcite.plan.RelOptTable temporalTable,
ExecNodeConfig config,
ClassLoader classLoader,
Map<Integer,LookupJoinUtil.LookupKey> allLookupKeys,
org.apache.flink.table.functions.TableFunction<?> syncLookupFunction,
RelBuilder relBuilder,
org.apache.flink.table.types.logical.RowType inputRowType,
org.apache.flink.table.types.logical.RowType tableSourceRowType,
org.apache.flink.table.types.logical.RowType resultRowType,
boolean isLeftOuterJoin,
boolean isObjectReuseEnabled,
boolean lookupKeyContainsPrimaryKey) |
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.
|
createJoinTransformation, createSyncLookupJoinFunction, getProjectionOutputRelDataType, getRightOutputRowType, getTemporalTableSourceSpec, validateLookupKeyTypeaccept, createFormattedTransformationDescription, createFormattedTransformationName, createTransformationDescription, createTransformationMeta, createTransformationMeta, createTransformationName, createTransformationUid, getContextFromAnnotation, getDescription, getId, getInputEdges, getInputProperties, getOutputType, getPersistedConfig, getSimplifiedName, getTransformation, inputsContainSingleton, replaceInputEdge, setCompiled, setInputEdges, supportFusionCodegen, translateToFusionCodegenSpec, translateToFusionCodegenSpecInternal, translateToPlanclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaccept, getDescription, getId, getInputEdges, getInputProperties, getOutputType, replaceInputEdge, setCompiled, setInputEdgestranslateToPlansupportFusionCodegen, translateToFusionCodegenSpecpublic static final String FIELD_NAME_REQUIRE_UPSERT_MATERIALIZE
public static final String FIELD_NAME_LOOKUP_KEY_CONTAINS_PRIMARY_KEY
public static final String STATE_NAME
public StreamExecLookupJoin(org.apache.flink.configuration.ReadableConfig tableConfig,
org.apache.flink.table.runtime.operators.join.FlinkJoinType joinType,
@Nullable
org.apache.calcite.rex.RexNode preFilterCondition,
@Nullable
org.apache.calcite.rex.RexNode remainingJoinCondition,
TemporalTableSourceSpec temporalTableSourceSpec,
Map<Integer,LookupJoinUtil.LookupKey> lookupKeys,
@Nullable
List<org.apache.calcite.rex.RexNode> projectionOnTemporalTable,
@Nullable
org.apache.calcite.rex.RexNode filterOnTemporalTable,
boolean lookupKeyContainsPrimaryKey,
boolean upsertMaterialize,
@Nullable
LookupJoinUtil.AsyncLookupOptions asyncLookupOptions,
@Nullable
LookupJoinUtil.RetryLookupOptions retryOptions,
org.apache.flink.table.connector.ChangelogMode inputChangelogMode,
InputProperty inputProperty,
org.apache.flink.table.types.logical.RowType outputType,
String description)
public StreamExecLookupJoin(int id,
ExecNodeContext context,
org.apache.flink.configuration.ReadableConfig persistedConfig,
org.apache.flink.table.runtime.operators.join.FlinkJoinType joinType,
@Nullable
org.apache.calcite.rex.RexNode preFilterCondition,
@Nullable
org.apache.calcite.rex.RexNode remainingJoinCondition,
TemporalTableSourceSpec temporalTableSourceSpec,
Map<Integer,LookupJoinUtil.LookupKey> lookupKeys,
@Nullable
List<org.apache.calcite.rex.RexNode> projectionOnTemporalTable,
@Nullable
org.apache.calcite.rex.RexNode filterOnTemporalTable,
boolean lookupKeyContainsPrimaryKey,
boolean upsertMaterialize,
@Nullable
LookupJoinUtil.AsyncLookupOptions asyncLookupOptions,
@Nullable
LookupJoinUtil.RetryLookupOptions retryOptions,
@Nullable
org.apache.flink.table.connector.ChangelogMode inputChangelogMode,
@Nullable
List<StateMetadata> stateMetadataList,
List<InputProperty> inputProperties,
org.apache.flink.table.types.logical.RowType outputType,
String description)
public org.apache.flink.api.dag.Transformation<org.apache.flink.table.data.RowData> translateToPlanInternal(PlannerBase planner,
ExecNodeConfig config)
ExecNodeBasetranslateToPlanInternal in class ExecNodeBase<org.apache.flink.table.data.RowData>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.protected org.apache.flink.api.dag.Transformation<org.apache.flink.table.data.RowData> createSyncLookupJoinWithState(org.apache.flink.api.dag.Transformation<org.apache.flink.table.data.RowData> inputTransformation,
org.apache.calcite.plan.RelOptTable temporalTable,
ExecNodeConfig config,
ClassLoader classLoader,
Map<Integer,LookupJoinUtil.LookupKey> allLookupKeys,
org.apache.flink.table.functions.TableFunction<?> syncLookupFunction,
RelBuilder relBuilder,
org.apache.flink.table.types.logical.RowType inputRowType,
org.apache.flink.table.types.logical.RowType tableSourceRowType,
org.apache.flink.table.types.logical.RowType resultRowType,
boolean isLeftOuterJoin,
boolean isObjectReuseEnabled,
boolean lookupKeyContainsPrimaryKey)
createSyncLookupJoinWithState in class CommonExecLookupJoinCopyright © 2014–2025 The Apache Software Foundation. All rights reserved.