liurenjie1024 commented on code in PR #1227: URL: https://github.com/apache/iceberg-rust/pull/1227#discussion_r2051359067
########## crates/iceberg/src/spec/manifest_list.rs: ########## @@ -656,7 +658,29 @@ impl ManifestFile { /// Load [`Manifest`]. /// /// This method will also initialize inherited values of [`ManifestEntry`], such as `sequence_number`. - pub async fn load_manifest(&self, file_io: &FileIO) -> Result<Manifest> { + /// + /// If `object_cache` is provided, it will be used to cache the manifest. + pub async fn load_manifest( Review Comment: > It should be very clear to use None to bypass the ObjectCache. How about keeping both apis? I'm worrying about breaking public api unnecessarily. > Another idea I have is to extract something like a TableContext that only contains the table's runtime context (for now, it's just FileIO and ObjectCcache), so it doesn't need to be passed around everywhere. I also thought about this, but I thought it's a little over design. Another idea is to have sth like `ManifestListLoader`/`ManifestLoader`, which could be created from table. But these are optional. -- 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