Runner.respond uses join leading to slowness

Aperta Adatta ai principianti
#1,079 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
70/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
python
Ambito
cli, performance

Direzione di ricerca

Inizia dal punto di ingresso Runner.respond ed esegui la suite pytest su invoke, concentrandoti sulla gestione dell’output con e senza watchers. La modifica è completata quando l’output di grandi dimensioni non concatena più ripetutamente il buffer quando non sono collegati watchers, mantenendo intatto il comportamento dei watchers.

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

Descrizione

Runner.respond uses a join call of the whole buffer + the new content. We execute pytest over invoke and it can happen, that the pytest output is several hundred MB big. For each line of these, the join is executed leading to a slower and slower processing. For reference, 300MB takes about 2h to process.

Recommendation: as the join is only needed if watchers are used, it can be avoided if no watchers are attached

Lingua principale
Python
Stelle
4.8k
Fork
412
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

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.

Altre issue di pyinvoke/invoke

Tutte le issue di pyinvoke/invoke

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.