Shopify / Shopify/ci-queue

Sensible Defaults for Python Redis Client

Aperta
#71 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
Ruby
Stelle
240
Fork
36
Merge medio
28m
PR unite (30g)
3

Descrizione

By default no timeouts are set for the Redis client. It's poorly documented, but as far as I can tell, the Redis client will wait hang infinitely by default. This is not a sensible default for ci-queue clients, forcing every client to specify this value. socket_connect_timeout defaults to whatever is specified for socket_timeout, but since that is handled deep down in the Redis client and certainly not documented by ci-queue a responsible client might not rely on that.

I suggest explicitly setting sensible defaults for these two values to reduce the burden on clients.

https://github.com/Shopify/ci-queue/blob/3b7ac596016b8c569ea49a6ff80696443b2569ce/python/ciqueue/_pytest/test_queue.py#L59-L81

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia da python/ciqueue/_pytest/test_queue.py intorno alle righe 59-81 e analizza la configurazione del client Redis per individuare dove vengono configurati socket_timeout e socket_connect_timeout. Determina e documenta valori predefiniti espliciti per entrambi i valori, quindi aggiungi o aggiorna i test del client della coda per verificare che i client non attendano indefinitamente per impostazione predefinita.

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

Valutazione

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

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.