[
https://issues.apache.org/jira/browse/FLINK-19878?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jark Wu reassigned FLINK-19878:
-------------------------------
Assignee: Jark Wu
> Fix WatermarkAssigner shouldn't be after ChangelogNormalize
> -----------------------------------------------------------
>
> Key: FLINK-19878
> URL: https://issues.apache.org/jira/browse/FLINK-19878
> Project: Flink
> Issue Type: Sub-task
> Components: Table SQL / Planner
> Reporter: Leonard Xu
> Assignee: Jark Wu
> Priority: Major
> Fix For: 1.12.0
>
>
> Cutrrently, for a upsertSource like upsert-kafka, the WatermarkAssigner is
> followed after ChangelogNormalize Node, it may returns Long.MaxValue as
> watermark if some parallelism doesn't have data.
>
> {code:java}
> +- Exchange(distribution=[hash[currency]], changelogMode=[I,UA,D])
> +- WatermarkAssigner(rowtime=[rowtime], watermark=[rowtime],
> changelogMode=[I,UA,D])
> +- ChangelogNormalize(key=[currency], changelogMode=[I,UA,D])
> +- Exchange(distribution=[hash[currency]], changelogMode=[UA,D])
> +- TableSourceScan(table=[[default_catalog, default_database,
> rates_history]], fields=[currency, rate, rowtime], changelogMode=[UA,D])
> {code}
>
> As an improvement, we can move the WatermarkAssigner to be after the
> SourceCan Node and thus the watermark will produce like general Source.
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)