Class CommonExecLegacySink<T>
java.lang.Object
org.apache.flink.table.planner.plan.nodes.exec.ExecNodeBase<T>
org.apache.flink.table.planner.plan.nodes.exec.common.CommonExecLegacySink<T>
- Type Parameters:
T- The return type of theTableSink.
- All Implemented Interfaces:
ExecNode<T>,ExecNodeTranslator<T>,FusionCodegenExecNode,MultipleTransformationTranslator<T>
- Direct Known Subclasses:
BatchExecLegacySink,StreamExecLegacySink
public abstract class CommonExecLegacySink<T>
extends ExecNodeBase<T>
implements MultipleTransformationTranslator<T>
Base
ExecNode to write data into an external sink defined by a TableSink.-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final booleanprotected final booleanprotected final org.apache.flink.table.legacy.sinks.TableSink<T>protected final String[]Fields 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
ConstructorsConstructorDescriptionCommonExecLegacySink(int id, ExecNodeContext context, org.apache.flink.configuration.ReadableConfig persistedConfig, org.apache.flink.table.legacy.sinks.TableSink<T> tableSink, String[] upsertKeys, boolean needRetraction, boolean isStreaming, InputProperty inputProperty, org.apache.flink.table.types.logical.LogicalType outputType, String description) -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract org.apache.flink.table.types.logical.RowTypecheckAndConvertInputTypeIfNeeded(org.apache.flink.table.types.logical.RowType inputRowType) Check whether the given row type is legal and do some conversion if needed.protected org.apache.flink.api.dag.Transformation<T>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.ExecNodeTranslator
translateToPlan
-
Field Details
-
tableSink
-
upsertKeys
-
needRetraction
protected final boolean needRetraction -
isStreaming
protected final boolean isStreaming
-
-
Constructor Details
-
CommonExecLegacySink
public CommonExecLegacySink(int id, ExecNodeContext context, org.apache.flink.configuration.ReadableConfig persistedConfig, org.apache.flink.table.legacy.sinks.TableSink<T> tableSink, @Nullable String[] upsertKeys, boolean needRetraction, boolean isStreaming, InputProperty inputProperty, org.apache.flink.table.types.logical.LogicalType outputType, String description)
-
-
Method Details
-
translateToPlanInternal
protected org.apache.flink.api.dag.Transformation<T> translateToPlanInternal(PlannerBase planner, ExecNodeConfig config) Description copied from class:ExecNodeBaseInternal method, translates this node into a Flink operator.- Specified by:
translateToPlanInternalin classExecNodeBase<T>- 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.
-
checkAndConvertInputTypeIfNeeded
protected abstract org.apache.flink.table.types.logical.RowType checkAndConvertInputTypeIfNeeded(org.apache.flink.table.types.logical.RowType inputRowType) Check whether the given row type is legal and do some conversion if needed.
-