← Back to events
ActiveTechRelease

viable/strict/1790888005: [dynamo] Don't let observed exceptions pin the Python stack (#197567)

What happened

An ObservedException that unwinds out of a tracer ends up in a reference cycle with its own traceback, and only the cyclic GC can break it. That matters because the traceback covers the entire live Python stack at the point of the raise, so until the next gc pass the cycle pins every frame below Dynamo -- including user frames and everything their locals reference. Root cause: InstructionTranslatorBase.exception_han…

Summary assembled by rule from the sources below

Why it's spreading

Sources