junmuz commented on PR #7739:
URL: https://github.com/apache/paimon/pull/7739#issuecomment-4397292431

   > > > Could you add coverage for input changelog with row tracking enabled?
   > > 
   > > 
   > > @XiaoHongbo-Hope [Row tracking 
](https://paimon.apache.org/docs/master/append-table/row-tracking/)requires 
tables without primary keys (row-tracking.enabled is only valid on append-only 
tables with bucket=-1), while changelog-producer requires primary keys to be 
defined. These two features looks mutually exclusive by design. I don't see a 
valid table configuration where both can be active simultaneously. The existing 
test 
[test_reject_changelog_producer_on_append_only_table](https://github.com/apache/paimon/pull/7739/changes#diff-38a7ba6c1e4012afdf0076beb2394f16b652f917146b12a3c29c7076e1edcc00R269-R282)
 already verifies that we reject changelog-producer on tables without primary 
keys, which should cover all row-tracking tables.
   > 
   > This validation can still be bypassed because it only runs in 
Schema.from_pyarrow_schema(). Directly constructing Schema(fields=..., 
primary_keys=[], options={'changelog-producer': 'input'}) and passing it to 
catalog.create_table() still creates an append-only table
   
   @XiaoHongbo-Hope I have tried addressing your comment. I have moved the 
guard-rail to the constructor to prevent it from being by-passed.


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