dev-donghwan commented on PR #4437:
URL: https://github.com/apache/flink-cdc/pull/4437#issuecomment-4935635684

   Thanks @yuxiqian, that makes sense — emitting `REPLACE` (+U only) in upsert 
changelog mode, instead of an `UPDATE` event with a null `before`.
   
   Agreed this is the cleaner approach: `REPLACE` is already handled by the 
event serializer and all pipeline sinks (e.g. FLINK-39684 already covers it in 
the Paimon writer), so no sink needs to become null-tolerant, and the 
null-tolerant `DataChangeEventSerializer` changes in this PR would no longer be 
needed either.
   
   We implemented this and verified it with a real pipeline run on Docker 
(Flink 2.2.1, PostgreSQL 15 with `REPLICA IDENTITY DEFAULT`, pgoutput) — the 
UPDATE arrives at the sink as `op=REPLACE` carrying the after image only.
   
   @cansakiroglu I've opened a PR against your branch with this change as a 
single commit: https://github.com/cansakiroglu/flink-cdc/pull/1 — feel free to 
merge or cherry-pick it so it can be folded into this PR.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to