liurenjie1024 commented on code in PR #53: URL: https://github.com/apache/iceberg-rust/pull/53#discussion_r1312621921
########## crates/iceberg/src/error.rs: ########## @@ -44,6 +44,10 @@ pub enum ErrorKind { /// /// This error is returned when given iceberg feature is not supported. FeatureUnsupported, + /// Error during io operation. + /// + /// This error is returned when doing io operations. + IoError, Review Comment: As a `FileIO` module, I don't think we should introduce `TableNotFound`, or `TablePermissionDenial ` error, it should introduce error for file not found or there is no permission to operator on file/dir. But I do admit that converting all opendal error into `IoError` would be too general. In fact when dealing with io, there are two kinds of error: 1. Unrecoverable: permission denied, file not found, operation not supported, etc. These errors should be `Unexpected`. 2. Recoverable: rate limit reached, timeout error, network failure. In this case, we should report it to caller and let caller to decide what to do. I'll refine this later if we reached an agreement that this the correct abstraction. -- 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