You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
A loop split between two hot executors never calls CHECK_EVAL_BREAKER() #117442
When a tight for loop without calls is turned into two traces that transfer directly to each other, it seems that CHECK_EVAL_BREAKER() is never called, and the loop won't be interruptible.
Probably we should insert a _CHECK_PERIODIC at the beginning of a trace starting with JUMP_BACKWARD, rather than checking signals in _JUMP_TO_TOP. That way we also wouldn't need to check signals in ENTER_EXECUTOR, _JUMP_TO_TOP, and wherever else is necessary to fix this issue.
Activity
brandtbucher commentedon Apr 2, 2024
Probably we should insert a
_CHECK_PERIODICat the beginning of a trace starting withJUMP_BACKWARD, rather than checking signals in_JUMP_TO_TOP. That way we also wouldn't need to check signals inENTER_EXECUTOR,_JUMP_TO_TOP, and wherever else is necessary to fix this issue.GH-117442: Check eval-breaker at start (rather than end) of tier 2 lo…
pythonGH-117442: Check eval-breaker at start (rather than end) of tie…