liurenjie1024 commented on issue #1314: URL: https://github.com/apache/iceberg-rust/issues/1314#issuecomment-2893204214
> > I still recommend wrapping it in a struct when passing around in the crate > So are you proposing making Storage a trait instead? If so for the sake of argument, could this just be ObjectStore? I still have concerns for using `ObjectStore` directly for several reasons: 1. Since the goal of this refactoring is to make underlying implementation extensible and allowing user to choose provider freely, I don't think it's a good idea to bind the interface to a specific vendor. For example, we also want to allow user to use `OpenDAL`. 2. Another important goal of this refactoring is to even allowing user to provide their own `FileIO` provider(or `Storage`) implementation. I took a look at `ObjectStore` trait, it's not aligned well with `FileIO` requirement. For example, it requires `copy`/`list` as required methods, which are not required by `FileIO`([this interface](https://github.com/apache/iceberg/blob/f06c4f7dfc98cc944a0e1d3a7b38ade0aaa52ce3/api/src/main/java/org/apache/iceberg/io/SupportsPrefixOperations.java#L25) is 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