algolia / algolia/algoliasearch-client-python

feat: Edit the requests configuration pool_maxsize variable when initializing client

Aperta
#521 1 commento 1 reazione 0 assegnatari Vedi su GitHub
Lingua principale
Python
Stelle
207
Fork
63
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

- Algolia Client Version: 2.4.0
- Language Version: Python 3.9.1

### Description
I'm replicating a dataset (60k records) with 100 threads (Python's builtin _ThreadExecutor_) at a time. And I find that from time to time I keep getting these warnings from the 'requests' library: **"Connection pool is full, discarding connection: xxxxxxxx.algolia.net"**.

The ability to edit the _pool_maxsize_ configuration variable when initializing the search client would solve this kind of issues, perhaps even allowing to edit other _requests_ configurations.

### Steps To Reproduce
Initialize a ThreadExecutor of 100 max workers.
Create a function that uses 'save_object' to store a record in a predefined index.
Loop through thousands of records, for each record:
-Add the function that saves the record with the record data to the executor

You should get the warning every ~1000 records.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia dal percorso di inizializzazione del client di ricerca e traccia come vengono configurati la sua sessione requests o il suo pool di connessioni. Verifica come le chiamate concorrenti a save_object utilizzano questa configurazione; il lavoro è concluso quando i chiamanti possono impostare pool_maxsize durante la creazione del client e la riproduzione con 100 worker non emette più l'avviso di pool pieno.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
python
Ambito
api, backend
Tipo di issue
Funzionalità
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.