MagicStack / MagicStack/uvloop
Memory leak in uvloop and tornado
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Cython
- Sterne
- 11.9k
- Forks
- 616
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
- uvloop version: 0.11.1
- Python version: 3.6.4
- Platform: Ubuntu 16.04 x64
- Can you reproduce the bug with
PYTHONASYNCIODEBUGin env?: This no effect
I have a platform to which mobile devices will constantly connect via TCP, about 20k per instance. After a few hours of work, memory consumption rises to 2 GB. We use tornado 5.0.1 as TCP server and install uvloop for loop for asyncio. I conducted one experiment using tracemalloc, when the devices are disconnected and then the memory leak is again connected in this code line , the number of objects and the total expanding. Can you help find what these objects are and how to remove this leak?

Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne bei Tornados tornado/platform/asyncio.py um Zeile 148, reproduziere anschließend das Szenario einer langlebigen TCP-Verbindung und untersuche das Objektwachstum mit tracemalloc. Vergleiche das Speicherverhalten, wenn Geräte die Verbindung trennen und wiederherstellen; als abgeschlossen gilt die Untersuchung, wenn das Leck durch einen reproduzierbaren Test oder ein eindeutiges diagnostisches Ergebnis eingegrenzt ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- backend, networking
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 25/100