Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Write tests mimicking slow and intermittent network responses #1953

Open
heaths opened this issue Dec 10, 2024 · 1 comment
Open

Write tests mimicking slow and intermittent network responses #1953

heaths opened this issue Dec 10, 2024 · 1 comment
Assignees
Labels
Azure.Core The azure_core crate Client This issue points to a problem in the data-plane of the library.
Milestone

Comments

@heaths
Copy link
Member

heaths commented Dec 10, 2024

As follow up from discussions, implement some integrations in azure_core that mimic slow, chunky network responses where some of those chunks may exhibit a network error. This point is to make sure that - whether calling Response<T>::into_body() and streaming the ResponseBody or calling Response<T: Model>::deserialize_body() - we correctly retry requests.

Note: this is not about ranged request headers e.g., with Storage, but that we at least start over from the beginning and try again for both retriable HTTP status codes as well as network "hiccups".

@heaths heaths added Azure.Core The azure_core crate Client This issue points to a problem in the data-plane of the library. labels Dec 10, 2024
@heaths heaths added this to the 2025-02 milestone Dec 10, 2024
@heaths heaths self-assigned this Dec 10, 2024
@github-project-automation github-project-automation bot moved this to Untriaged in Azure SDK Rust Dec 10, 2024
@heaths
Copy link
Member Author

heaths commented Dec 10, 2024

See #1140. This was brought up for track 1 code as well and into_body() definitely escapes outside the pipeline. I believe at the very least methods for which we buffer the response should be retried. Ideally, we can also handle that for streaming responses but would likely have to start over except for service methods that support Range headers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Azure.Core The azure_core crate Client This issue points to a problem in the data-plane of the library.
Projects
Status: Untriaged
Development

No branches or pull requests

1 participant