[ 
https://issues.apache.org/jira/browse/FLINK-38738?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Timo Walther updated FLINK-38738:
---------------------------------
    Release Note: Table sources that use TransformationScanProvider or 
DataStreamScanProvider generated UIDs that got partially overwritten by the 
planner. Newly submitted queries will correctly consider the UID of the last 
transformation. Connector implementers should double check if UIDs of all 
operators are set correctly.  (was: Table sources that use 
TransformationScanProvider or DataStreamScanProvider generated UIDs that got 
partially overwritten by the planner. Newly submitted queries will correctly 
consider the UID of the last transformation. Connection implementers should 
double check if UIDs of all operators are set correctly.)

> Incorrect UID for DataStreamScanProvider and TransformationScanProvider
> -----------------------------------------------------------------------
>
>                 Key: FLINK-38738
>                 URL: https://issues.apache.org/jira/browse/FLINK-38738
>             Project: Flink
>          Issue Type: Bug
>          Components: Table SQL / Runtime
>            Reporter: Arvid Heise
>            Assignee: Timo Walther
>            Priority: Critical
>              Labels: pull-request-available
>             Fix For: 2.3.0
>
>
> The planner guarantees that all operators receive a stable UID. It does this, 
> by deriving the UIDs from the CompiledPlan. Thus, CompiledPlan and 
> savepoint/checkpoint are closely linked.
> The planner does not control the operators and transformations in sources and 
> sinks. From a planner’s perspective, sources and sinks are black boxes. 
> Implementers must ensure that UIDs are assigned to all operators. The planner 
> provides utilities for generating UIDs:
> https://github.com/apache/flink/blob/master/flink-table/flink-table-common/src/main/java/org/apache/flink/table/connector/ProviderContext.java
> Even though a source generates and assigns UIDs for all its operators. The 
> planner overwrites the UID of the last transformation with 
> <ExecNoceId>_source. For example, given a source that adds two 
> transformations: an operator {{4_kafka}} followed by an operator 
> {{4_splitting}}, effectively leads to an operator {{4_kafka}} followed by an 
> operator {{4_source}}. Or a source that adds one transformation, an operator 
> {{4_kafka}}, effectively leads to an operator {{4_source}}.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to