python / python/cpython

Garbage Collection makes some object live for very long

Offen
#83,242 4 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

3.12 interpreter-core performance
Vorherrschende Sprache
Python
Sterne
77.2k
Forks
36k
PR-Merge-Kennzahlen
PR-Kennzahlen ausstehend

Beschreibung

BPO 39061
Nosy @pablogsal, @mistasse
Files
  • late_gc.py: Example program where the unnecessary growing of memory consumption is observable
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = None
    closed_at = None
    created_at = <Date 2019-12-16.10:01:34.949>
    labels = ['interpreter-core', 'performance']
    title = 'Garbage Collection makes some object live for very long'
    updated_at = <Date 2019-12-16.19:06:33.825>
    user = 'https://github.com/mistasse'
    

    bugs.python.org fields:

    activity = <Date 2019-12-16.19:06:33.825>
    actor = 'pablogsal'
    assignee = 'none'
    closed = False
    closed_date = None
    closer = None
    components = ['Interpreter Core']
    creation = <Date 2019-12-16.10:01:34.949>
    creator = 'mistasse'
    dependencies = []
    files = ['48780']
    hgrepos = []
    issue_num = 39061
    keywords = []
    message_count = 4.0
    messages = ['358469', '358486', '358488', '358491']
    nosy_count = 2.0
    nosy_names = ['pablogsal', 'mistasse']
    pr_nums = []
    priority = 'normal'
    resolution = None
    stage = None
    status = 'open'
    superseder = None
    type = 'resource usage'
    url = 'https://bugs.python.org/issue39061'
    versions = []
    

    Beitragsleitfaden

    Beitragsleitfaden öffnen

    Erste Schritte

    1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
    2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
    3. Forke das Repository und arbeite in einem Branch.
    4. Öffne einen Pull Request, der die Issue-Nummer nennt.

    Rechercherichtung

    Führe zunächst das angehängte Beispiel late_gc.py aus, um das unnötige Speicherwachstum zu reproduzieren. Verfolge dann das Verhalten der Garbage Collection im interpreter-core, das daran beteiligt ist, Objekte länger als nötig am Leben zu halten. Die Aufgabe ist erledigt, wenn die Ursache identifiziert wurde und nachgewiesen ist, dass das Beispiel das gemeldete verlängerte Objektleben oder Speicherwachstum nicht mehr zeigt.

    Vom Indexierungsmodell aus dem Issue-Text verfasst.

    Bewertung

    Tech-Stack
    python
    Bereich
    performance
    Issue-Typ
    Bug
    Schwierigkeit
    4/5
    Geschätzter Aufwand
    3-5 Tage
    Aktivitätsstatus
    Veraltet
    Klarheit
    Muss geklärt werden
    Anfängerfreundlichkeit
    25/100

    Neue Issues direkt in Ihr Postfach

    Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.