Kyle Stanley <aeros...@gmail.com> added the comment:

> Sorry I haven't gotten back to you sooner, Kyle.  Thanks for working on this. 
>  I'm looking at your PR right now.

> BTW, Kyle, your problem-solving approach on this is on-track.  Don't get 
> discouraged.  This stuff is tricky. :)

No problem at all, and thank you for the words of encouragement. (:

> Regarding "is_running()", notice that it relies almost entirely on 
> "frame->f_executing".  That might not be enough (or maybe the behavior there 
> changed).  That would be worth checking out.

Hmm, that's an interesting point that I hadn't considered. 

> @aeros, feel free too keep investigating.  I'd be glad to help you out.  
> Otherwise I'll dive into this probably next week.

Sounds good, I'll do some further digging around, particularly anywhere that 
interacts with PyFrameObject's `f_executing` field. I think it's possible that 
there's a non-obvious issue with `_is_running()`, where it works correctly 99% 
of the time. That seems to be a significant commonality between the different 
areas where the intermittent failures are occurring, they all directly or 
indirectly call `_is_running()`.

Also, thanks again Eric for the PR review. Looking back it after Eric's 
analysis and having a couple of months to think it over, I don't think that 
GH-16293 is the correct solution. It seems unlikely that this is being caused 
by a lack of proper GIL acquisition, as that would likely be causing far more 
consistent build failures. I'm thinking that it's more likely to be an issue 
with either:

1) Subinterpreters occasionally disappearing due to premature cleanup (as Eric 
suggested)

2) _is_running() being incorrect a small percentage of the time

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue37224>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to