JingsongLi commented on PR #9094:
URL: https://github.com/apache/paimon/pull/9094#issuecomment-5214526709

   Thanks for catching this. Addressed in `b3e73b725d`.
   
   For Flink, I chose to constrain the unsupported combination instead of 
advertising `ChangelogMode.all()`: the default Paimon source does not actually 
produce `UPDATE_BEFORE`, so claiming a full changelog would make downstream 
aggregations incorrect. A nullable-primary-key streaming read now fails early 
with a clear instruction to configure a full changelog producer (for example, 
`changelog-producer=input`). Insert-only reads such as `merge-engine=first-row` 
remain supported.
   
   I added both a direct changelog-mode test and a Flink planner IT case 
covering the rejected default path and the supported `input` path, documented 
the limitation, and verified the tests with both the Flink 1.x and Flink 2.x 
profiles.
   
   For Rust and C++, agreed that schema normalization and cross-implementation 
interchange coverage are still needed. I will coordinate those as follow-up 
work so this PR can remain focused on the Java/PyPaimon/Flink implementation.
   


-- 
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