diff --git a/bin/ofs/Cargo.lock b/bin/ofs/Cargo.lock index 2268a79e6929..54f45c64b6ce 100644 --- a/bin/ofs/Cargo.lock +++ b/bin/ofs/Cargo.lock @@ -1011,7 +1011,7 @@ dependencies = [ "md-5", "once_cell", "percent-encoding", - "quick-xml", + "quick-xml 0.31.0", "rand", "reqsign", "reqwest", @@ -1101,6 +1101,16 @@ dependencies = [ "serde", ] +[[package]] +name = "quick-xml" +version = "0.35.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86e446ed58cef1bbfe847bc2fda0e2e4ea9f0e57b90c507d4781292590d72a4e" +dependencies = [ + "memchr", + "serde", +] + [[package]] name = "quinn" version = "0.11.2" @@ -1218,9 +1228,9 @@ checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" [[package]] name = "reqsign" -version = "0.15.2" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70fe66d4cd0b5ed9b1abbfe639bf6baeaaf509f7da2d51b31111ba945be59286" +checksum = "03dd4ba7c3901dd43e6b8c7446a760d45bc1ea4301002e1a6fa48f97c3a796fa" dependencies = [ "anyhow", "async-trait", @@ -1234,7 +1244,7 @@ dependencies = [ "http", "log", "percent-encoding", - "quick-xml", + "quick-xml 0.35.0", "rand", "reqwest", "rust-ini", diff --git a/core/src/services/s3/error.rs b/core/src/services/s3/error.rs index fdea00d88279..b62dda6d9c7e 100644 --- a/core/src/services/s3/error.rs +++ b/core/src/services/s3/error.rs @@ -87,6 +87,11 @@ pub(crate) fn from_s3_error(s3_error: S3Error, parts: Parts) -> Error { /// All possible error code: pub fn parse_s3_error_code(code: &str) -> Option<(ErrorKind, bool)> { match code { + // > The specified bucket does not exist. + // + // Although the status code is 404, NoSuchBucket is + // a config invalid error, and it's not retryable from OpenDAL. + "NoSuchBucket" => Some((ErrorKind::ConfigInvalid, false)), // > Your socket connection to the server was not read from // > or written to within the timeout period." // @@ -147,7 +152,7 @@ mod tests { http://Example-Bucket.s3.ap-southeast-1.amazonaws.com/Example-Object Example-Bucket - Example-Object + Example-Object "3858f62230ac3c915f300c664312c11f-9" "#,