algolia / algolia/algoliasearch-client-python
retryable error doesn't increment connection timeout number
- Vorherrschende Sprache
- Python
- Sterne
- 207
- Forks
- 63
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
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
Beitragsleitfaden
Rechercherichtung
Beginne in algoliasearch/http/transporter.py an der verlinkten Zeile und überprüfe die Retry-Spezifikationen für das Timeout-Verhalten, wobei du die C#-Implementierung als Referenz verwendest. Füge einen Test hinzu, der das Wachstum des Timeouts mit der Anzahl der Retries abdeckt, und betrachte die Arbeit als abgeschlossen, wenn das retrybare Verbindungs-Timeout wie spezifiziert zunimmt und der Test erfolgreich ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- api, search
- Issue-Typ
- Bug
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Aktivitätsstatus
- Veraltet
- Klarheit
- Klar beschrieben
- Anfängerfreundlichkeit
- 50/100