Skip to content

Commit

Permalink
fix: address comments
Browse files Browse the repository at this point in the history
Signed-off-by: yihong0618 <[email protected]>
  • Loading branch information
yihong0618 committed Jan 16, 2025
1 parent 10f9db4 commit f4e2542
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 4 deletions.
4 changes: 2 additions & 2 deletions core/src/services/azblob/error.rs
Original file line number Diff line number Diff line change
Expand Up @@ -60,8 +60,8 @@ impl Debug for AzblobError {

/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
let (parts, mut body) = resp.into_parts();
let bs = body.copy_to_bytes(body.remaining());
let (parts, body) = resp.into_parts();
let bs = body.to_bytes();

let (kind, retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
Expand Down
5 changes: 3 additions & 2 deletions core/src/services/s3/error.rs
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ pub(crate) struct S3Error {
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
let (parts, body) = resp.into_parts();
let bs = body.to_bytes();

let (mut kind, mut retryable) = match parts.status.as_u16() {
403 => (ErrorKind::PermissionDenied, false),
Expand All @@ -49,10 +50,10 @@ pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
_ => (ErrorKind::Unexpected, false),
};

let body_content = body.chunk();
let body_content = bs.chunk();
let (message, s3_err) = de::from_reader::<_, S3Error>(body_content.reader())
.map(|s3_err| (format!("{s3_err:?}"), Some(s3_err)))
.unwrap_or_else(|_| (String::from_utf8_lossy(body_content).into_owned(), None));
.unwrap_or_else(|_| (String::from_utf8_lossy(&bs).into_owned(), None));

if let Some(s3_err) = s3_err {
(kind, retryable) = parse_s3_error_code(s3_err.code.as_str()).unwrap_or((kind, retryable));
Expand Down

0 comments on commit f4e2542

Please sign in to comment.