stevenzwu opened a new pull request, #17523: URL: https://github.com/apache/iceberg/pull/17523
Introduce `SnapshotFile` as the version-agnostic name for the top-level file a snapshot points at, so later v4 work can address a root manifest through the same type that v3 uses for a manifest list. - Add api `SnapshotFile` + core `BaseSnapshotFile`; `ManifestListFile` becomes a deprecated marker interface extending `SnapshotFile`. - `FileIO.newInputFile(SnapshotFile)` and `EncryptingFileIO` override it; the `ManifestListFile` overloads delegate and are deprecated. - `EncryptionUtil.decryptSnapshotFileKeyMetadata` replaces the manifest-list variant, which now delegates. - `Snapshot.snapshotFileLocation()` defaults to `manifestListLocation()`, which is deprecated; `BaseSnapshot` renames its field and accessor accordingly. - `ReachableFileUtil.snapshotFileLocations` replaces `manifestListLocations`. - Migrate main-source callers off the deprecated accessor across core, the Spark `RewriteTablePath` actions, and the Flink `ListMetadataFiles` operators. No behavior change: `snapshotFileLocation()` and `manifestListLocation()` return the same value at every call site. Format-version dispatch arrives with the v4 commits that can actually produce a root manifest. -- 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]
