Skip to content

Type cache is not correctly invalidated on a class defining mro() #73052

Closed
@sjpalt

Description

@sjpalt
mannequin
BPO 28866
Nosy @terryjreedy, @vstinner, @encukou, @markshannon, @serhiy-storchaka, @Vgr255, @JulienPalard, @miss-islington
PRs
  • bpo-28866: Invalidate type cache on every setattr #13117
  • bpo-28866: No type cache for types with specialized mro, invalidation is hard. #13157
  • [3.7] bpo-28866: No type cache for types with specialized mro, invalidation is hard. (GH-13157) #13589
  • bpo-28866: Add regression test #17573
  • Files
  • weird.py: Steps to reproduce
  • weird_without_interactive.py
  • issue28866.diff
  • 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 2016-12-04.14:35:45.681>
    labels = ['interpreter-core', '3.7', 'type-crash']
    title = 'Type cache is not correctly invalidated on a class defining mro()'
    updated_at = <Date 2019-12-11.12:36:42.450>
    user = 'https://bugs.python.org/sjpalt'

    bugs.python.org fields:

    activity = <Date 2019-12-11.12:36:42.450>
    actor = 'petr.viktorin'
    assignee = 'none'
    closed = False
    closed_date = None
    closer = None
    components = ['Interpreter Core']
    creation = <Date 2016-12-04.14:35:45.681>
    creator = 'sjpalt'
    dependencies = []
    files = ['45752', '45756', '45766']
    hgrepos = []
    issue_num = 28866
    keywords = ['patch']
    message_count = 22.0
    messages = ['282344', '282345', '282349', '282353', '282368', '282375', '282430', '282468', '282485', '282486', '282598', '288072', '341581', '343550', '343581', '343582', '343583', '343585', '343650', '355377', '358257', '358258']
    nosy_count = 9.0
    nosy_names = ['terry.reedy', 'vstinner', 'petr.viktorin', 'Mark.Shannon', 'serhiy.storchaka', 'abarry', 'mdk', 'sjpalt', 'miss-islington']
    pr_nums = ['13117', '13157', '13589', '17573']
    priority = 'high'
    resolution = None
    stage = 'patch review'
    status = 'open'
    superseder = None
    type = 'crash'
    url = 'https://bugs.python.org/issue28866'
    versions = ['Python 2.7', 'Python 3.5', 'Python 3.6', 'Python 3.7']

    Metadata

    Metadata

    Assignees

    No one assigned

      Labels

      3.7 (EOL)end of lifeinterpreter-core(Objects, Python, Grammar, and Parser dirs)type-crashA hard crash of the interpreter, possibly with a core dump

      Projects

      No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions