algolia / algolia/algoliasearch-client-python
retryable error doesn't increment connection timeout number
- Dominant language
- Python
- Stars
- 207
- Forks
- 63
- PR merge metrics
- No merged PRs in 30d
Description
Looking at the retry specs, we see that:
```
When retrying, use the next host in your array.
When retrying because of a timeout, raise the timeouts like this:
number_of_tries * base_timeout
Example: Search (5s timeout) → Search timeout → Search (10s timeout) → Repeat.
```
At the moment, on the Python API Client we don't use yet the `retry_count` for this.
**Goal**:
1. Multiple timeouts by the number of tries on the line https://github.com/algolia/algoliasearch-client-python/blob/97a6f15542f6a8951cdbcd0d2881a744ec24e329/algoliasearch/http/transporter.py#L72.
2. Add a test on it.
Implementation on C#: https://github.com/algolia/algoliasearch-client-csharp/blob/42ab1842f859df87482602b12d5cb714bfa8ec71/src/Algolia.Search/Transport/HttpTransport.cs#L118
Contributor guide
Research direction
Start in algoliasearch/http/transporter.py at the linked line and review the retry specs for timeout behavior, using the C# implementation as a reference. Add a test covering timeout growth by retry count, and consider the work done when the retryable connection timeout increases as specified and the test passes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- api, search
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 50/100