justinjoseph89 opened a new pull request, #6589:
URL: https://github.com/apache/opendal/pull/6589

   # Which issue does this PR close?
   
   Closes https://github.com/apache/opendal/issues/6588
   
   # Rationale for this change
   
   OpenDAL's S3 service currently only handles AWS S3's rate limiting pattern 
(HTTP 503 with "SlowDown" error code). Many S3-compatible services like Oracle 
Cloud Infrastructure Object Storage, Scaleway, and others return HTTP 429 with 
"TooManyRequests" error codes .
   
   When these services return HTTP 429, OpenDAL classifies them as 
non-retryable `ErrorKind::Unexpected` errors, causing applications to fail 
permanently instead of implementing proper retry logic with exponential 
backoff. This breaks rate limiting functionality for users of S3-compatible 
services.
   
   # What changes are included in this PR?
   
   - Add HTTP 429 status code mapping to `ErrorKind::RateLimited` in the 
`parse_error()` function
   - Add "TooManyRequests" S3 error code mapping to `ErrorKind::RateLimited` in 
the `parse_s3_error_code()` function
   - Both mappings mark errors as retryable (`true`) to enable proper retry 
behavior
   
   


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to