Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Including Iceberg Version in metadata json file for better traceability of PendingUpdate #11471

Open
1 of 3 tasks
rice668 opened this issue Nov 5, 2024 · 3 comments
Open
1 of 3 tasks
Labels
improvement PR that improves existing functionality

Comments

@rice668
Copy link
Contributor

rice668 commented Nov 5, 2024

Feature Request / Improvement

When a new feature is released in Iceberg, engines (Spark, Trino, Presto, Flink) and some clients need to upgrade their Iceberg versions accordingly. However, there are cases where individual engines may forget to upgrade, leading to unexpected behavior. We propose including the iceberg version in the metadata JSON file when writing out updates. This would allow for quick identification of which engine or clients wrote the current PendingUpdate, making it much easier to troubleshoot issues.

Query engine

Other

Willingness to contribute

  • I can contribute this improvement/feature independently
  • I would be willing to contribute this improvement/feature with guidance from the Iceberg community
  • I cannot contribute this improvement/feature at this time
@rice668 rice668 added the improvement PR that improves existing functionality label Nov 5, 2024
@nastra
Copy link
Contributor

nastra commented Nov 5, 2024

@rice668 the iceberg version should already be included in the summary of a particular snapshot.

@rice668
Copy link
Contributor Author

rice668 commented Nov 5, 2024

Thanks @nastra ! If it is only recorded in Snapshot, it is not very convenient to troubleshoot the problem. What we need is a PendingUpdate, not just a SnapshotUpdate. It is better to write the version information to the file name, which is much more convenient.

@rice668
Copy link
Contributor Author

rice668 commented Nov 6, 2024

Answer my own question, can use IcebergBuild#fullVersion did it.

FYI: #5236

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
improvement PR that improves existing functionality
Projects
None yet
Development

No branches or pull requests

2 participants