Github user hequn8128 commented on a diff in the pull request: https://github.com/apache/flink/pull/5327#discussion_r184993457 --- Diff: flink-libraries/flink-table/src/main/scala/org/apache/flink/table/plan/nodes/datastream/DataStreamRel.scala --- @@ -53,4 +53,8 @@ trait DataStreamRel extends FlinkRelNode { */ def consumesRetractions: Boolean = false + /** + * Whether the [[DataStreamRel]] produces retraction messages. + */ + def producesRetractions: Boolean = false --- End diff -- A join generates retraction if it's type is left/right/full. It is different from agg which generates retractions if `sendsUpdatesAsRetraction(node) && node.producesUpdates` is true.
---