SqlToStreamOperator extends UnaryToUnaryOperator which requires specifying a generic input and output. For SqlToStreamOperator this is set by default to SqlToStreamOperator<Record, Record> however this causes a crash for the JoinOperator in the sql-api as we flatten the tuple2 result after joining. In practice this can lead to cases where if we have a pipeline like:
postgres join -> SqlToStream -> java flatten map
This will crash due to SqlToStream forcing the tuple2 to be a Record.
We need to have a discussion on the output type of the join operator. Shall we keep the Tuple2 as output? Shall we replace it with a Record or shall we extend it with another operator that returns a Record? Any ideas/opinions? @kbeedkar@juripetersen@mspruc
Activity
zkaoudi commented on May 22, 2025
We need to have a discussion on the output type of the join operator. Shall we keep the Tuple2 as output? Shall we replace it with a Record or shall we extend it with another operator that returns a Record? Any ideas/opinions? @kbeedkar @juripetersen @mspruc
novatechflow commented on Dec 15, 2025
Whats the status here? Any outcome of the discussion?