dosubot[bot] commented on issue #6741: URL: https://github.com/apache/opendal/issues/6741#issuecomment-3452470898
<!-- Greeting --> Hi @wolfv! I'm [Dosu](https://go.dosu.dev/dosubot) and I’m helping the opendal team. <!-- Answer --> You're correct—OpenDAL does not currently treat HTTP 409 (ConditionalRequestConflict) as retryable by default, and maintainers have stated that 4xx retry logic is handled case by case. According to the S3 docs, retrying on 409 is the right behavior for conditional uploads, so marking 409 as retryable makes sense for your use case. The retry mechanism in OpenDAL will only retry if the error is marked as retryable in the unified retry handler, which is how other retryable errors are handled as well [source](https://github.com/apache/opendal/issues/1531) [source](https://github.com/apache/opendal/issues/196). To implement this, you'll want to locate where S3 HTTP errors are mapped to OpenDAL errors (likely in the S3 service implementation), and update the logic so that 409 responses are marked as retryable. This will ensure that the retry handler kicks in for these cases. If you need more detailed pointers on which files or enums to update, let me know! <!-- Dosu Comment Footer --> *To reply, just mention [@dosu](https://go.dosu.dev/dosubot).* --- <sup>How did I do? [Good](https://app.dosu.dev/response-feedback/3fa366b5-ca8f-4f1a-b815-e575927b3a98?feedback_type=great_response) | [Irrelevant](https://app.dosu.dev/response-feedback/3fa366b5-ca8f-4f1a-b815-e575927b3a98?feedback_type=irrelevant_answer) | [Incorrect](https://app.dosu.dev/response-feedback/3fa366b5-ca8f-4f1a-b815-e575927b3a98?feedback_type=incorrect_sources) | [Verbose](https://app.dosu.dev/response-feedback/3fa366b5-ca8f-4f1a-b815-e575927b3a98?feedback_type=too_verbose) | [Hallucination](https://app.dosu.dev/response-feedback/3fa366b5-ca8f-4f1a-b815-e575927b3a98?feedback_type=hallucination) | [Report 🐛](https://app.dosu.dev/response-feedback/3fa366b5-ca8f-4f1a-b815-e575927b3a98?feedback_type=bug_report) | [Other](https://app.dosu.dev/response-feedback/3fa366b5-ca8f-4f1a-b815-e575927b3a98?feedback_type=other)</sup> [](https://app.dosu.dev/997a2c5a-0c54-497b-989d-44651635dd36/ask?utm_source=githu b) [](https://go.dosu.dev/discord-bot) [](https://twitter.com/intent/tweet?text=%40dosu_ai%20helped%20me%20solve%20this%20issue!&url=https%3A//github.com/apache/opendal/issues/6741) -- 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]
