awslabs / awslabs/aws-sdk-rust

Retry for Hyper Errors [unexpected EOF, SSLShutdown]

Open
#889 2 comments 0 reactions 1 assignee Claimed by @rcoh View on GitHub
feature-request p2
Dominant language
Rust
Stars
3.3k
Forks
290
Avg merge
1d 12h
Merged PRs (30d)
3

Description

### Describe the feature

When forming many client connections we get the following errors:
```
unrecognized error from Hyper. If this error should be retried, please file an issue. err=error trying to connect: the SSL session has been shut down: the SSL session has been shut down (hyper::Error(Connect, Ssl(Error { code: ErrorCode(6), cause: None }, X509VerifyResult { code: 0, error: "ok" })))
```
and
```
unrecognized error from Hyper. If this error should be retried, please file an issue. err=error trying to connect: unexpected EOF: unexpected EOF (hyper::Error(Connect, Ssl(Error { code: ErrorCode(5), cause: None }, X509VerifyResult { code: 0, error: "ok" })))
```

### Use Case

We should still be able to retry if we make too many client connections and our host shut downs our sockets.

### Proposed Solution

We should retry these errors as transient errors [here](https://github.com/awslabs/aws-sdk-rust/blob/c1b7d791516e7c77aa88573742e9252fb49a4211/sdk/aws-smithy-client/src/hyper_ext.rs#L210).

### Other Information

_No response_

### Acknowledgements

- [X] I may be able to implement this feature request
- [ ] This feature might incur a breaking change

### A note for the community

### Community Note
* Please vote on this issue by adding a 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/) to the original issue to help the community and maintainers prioritize this request
* Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
* If you are interested in working on this issue, please leave a comment

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.