yittg commented on PR #4553:
URL: https://github.com/apache/iceberg/pull/4553#issuecomment-1099802157

   > In this test, the primary key fo the changelog table is the same as the 
partition schema (vs a subset).
   > 
   > ```
   > org.apache.iceberg.flink.TestChangeLogTable > 
testChangeLogOnDataKey[PartitionedTable=true] FAILED
   >     java.lang.AssertionError: Should have the expected records for the 
checkpoint#2 expected:<[Record(1, aaa), Record(2, ccc), Record(2, aaa), 
Record(1, ccc)]> but was:<[Record(1, aaa), Record(2, bbb), Record(2, ccc), 
Record(2, aaa), Record(1, bbb, 1, false), Record(1, ccc)]>
   >         at org.junit.Assert.fail(Assert.java:89)
   >         at org.junit.Assert.failNotEquals(Assert.java:835)
   >         at org.junit.Assert.assertEquals(Assert.java:120)
   >         at 
org.apache.iceberg.flink.TestChangeLogTable.testSqlChangeLog(TestChangeLogTable.java:285)
   >         at 
org.apache.iceberg.flink.TestChangeLogTable.testChangeLogOnDataKey(TestChangeLogTable.java:167)
   > 
   
   @kbendick After roughly investigating, guess that it is because the 
condition whether apply upsert materialize changed.
   After applying SinkUpsertMaterializer, the records iceberg writer receiving 
are not the original input records, it causes the failing case. 
   In 1.14.0, the condition returns false. We can disable it temporarily by 
setting `table.exec.sink.upsert-materialize` to None, then the cases can pass.
   
   Maybe the test cases are invalid, we can decide whether to and how to fix it 
after more investigating.
   
   FYI:
   https://github.com/apache/flink/pull/17699


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


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to