szehon-ho commented on PR #10020: URL: https://github.com/apache/iceberg/pull/10020#issuecomment-2050636746
Because this problem may affect more than just rewrite_position_deletes, I rewrote the patch to make the logic more generic at the Iceberg API level, rather than just PositionDeletesTable. Key changes: - Schema adds a new concept 'metadataFields' (name suggestion welcome), of which field ids will be re-assigned. This allows tables to construct schemas with ids that 'conflict' only if the conflicts are metadata fields. - PartitionSpec has a method 'originalPartitionType' that returns the partition type with the original field ids. - ManifestReader uses the partition spec's original field ids (because they are serialized with those in the manifest file). It is the only place in the code to need this. - Also some fixes in PositionDeletesTable and tests to get the schema/spec from the metadata table (which has the re-assigned field ids) instead of the original table. Sorry for the mess. -- 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: issues-unsubscr...@iceberg.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For additional commands, e-mail: issues-h...@iceberg.apache.org