Fokko commented on issue #172: URL: https://github.com/apache/iceberg-rust/issues/172#issuecomment-2472808925
To add some context here. As mentioned, `FileIO` should be pluggable. Right now, I've noticed that the `FileIO` is an `impl`, where I would [expect a `trait`](https://github.com/apache/iceberg-rust/blob/52296eb5e1be88a241903488c133214cb5a9a363/crates/iceberg/src/io/file_io.rs#L49). The goal behind `FileIO` is to provide an object-store native abstraction. Today we're heavily relying on `OpenDAL`, since that provides the most functionality out of the box. Still, there is always room for other implementations (as long they are well-maintained and compatible with the Apache license). Another important aspect of the FileIO is that it harmonizes [the configuration](https://iceberg.apache.org/docs/nightly/configuration/#write-properties), so you can easily swap out `FileIO`, or even force a specific `FileIO` through properties (`io-impl` in Java, `py-io-impl` in Python or `rs-io-impl` in Rust?). -- 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