algolia / algolia/algoliasearch-client-python
retryable error doesn't increment connection timeout number
- Lenguaje dominante
- Python
- Estrellas
- 207
- Forks
- 63
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
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
Guía de contribución
Línea de trabajo
Comienza en algoliasearch/http/transporter.py, en la línea enlazada, y revisa las especificaciones de reintento para el comportamiento de timeout, usando la implementación de C# como referencia. Añade una prueba que cubra el crecimiento del timeout según el número de reintentos, y considera terminado el trabajo cuando el timeout de conexión reintentable aumente según lo especificado y la prueba pase.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- python
- Área
- api, search
- Tipo de issue
- Error
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Estado de actividad
- Estancado
- Claridad
- Bien especificado
- Aptitud para principiantes
- 50/100