New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"AMD64 OpenIndiana 3.x" buildbot: assertion failed in PyObject_Call() in test_subprocess.test_preexec() #66486
Comments
I ran test_subprocess.test_preexec() 2000 times: I'm unable to reproduce the issue on my OpenIndiana VM, nor on Linux. I used this command: The command on the buildbot is: http://buildbot.python.org/all/builders/AMD64%20OpenIndiana%203.x/builds/8549/steps/test/logs/stdio [302/390/1] test_subprocess Current thread 0x0000000000000001 (most recent call first): |
The error may be close to the call to the gc module: gc.isenabled(), gc.disable() or gc.enable(). The error is maybe an exception raised before the call to PyObject_Call(), because the called gc functions are very simple. |
Oh, a lot of tests fail with MemoryError on this buildbot. It may explain this issue. For example, test_json crashed with SIGSEGV in this build, probably because of an unhandled MemoryError exception: |
I reproduced the crash with pyfailmalloc. The problem is that _posixsubprocess.fork_exec() calls gc.enable() on error when preexec_fn is set and the garbage collector was disabled (by fork_exec). Calling a function with an exception set is forbidden. Attached patch fixes this issue, but fix also error handling in fork_exec() and add some unit tests. |
New changeset 16e3d240456f by Victor Stinner in branch 'default': |
I created an issue for this bug: issue bpo-22338. I proposed a fix. |
New changeset 0455cbfd7ae6 by Victor Stinner in branch '3.4': New changeset a74c73477a64 by Victor Stinner in branch 'default': |
I hope that my fix will be enough to fix the issue. Since it was only seen once, I prefer to close the issue. By the way, it would be nice to give more memory to this buildbot! |
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:
bugs.python.org fields:
The text was updated successfully, but these errors were encountered: