muttcg opened a new pull request, #7186:
URL: https://github.com/apache/paimon/pull/7186

   <!-- Please specify the module before the PR name: [core] ... or [flink] ... 
-->
   
   ### Purpose
   
   <!-- Linking this pull request to the issue -->
   Linked issue: close #7068
   
   <!-- What is the purpose of the change -->
   Handles fieldId incompatibility between Paimon (starts at 0) and Iceberg 
(starts at 1).
   
   Iceberg REST schema creation shifts all fieldIds by +1, causing field 
disorder. While schemas can be updated post-creation to start at fieldId 0, 
creating an empty schema first triggers partition evolution issues that break 
some query engines, making them believe the partition has evolved and that 
queries must account for this.
   
   Strategy based on partition field position in the schema:
   
   - Position 0: Creates empty schema first, because partition evolution 
unavoidable
   - Position > 0: Creates dummy schema with offset fields and gap filling to 
preserve the partition spec
   
   ### Tests
   
   Added new unit test 
`IcebergRestMetadataCommitterTest.testPartitionedPrimaryKeyTableWithNonZeroFieldId`
   Made tests with Polaris REST catalog and StarRocks
   


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