Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork32k
Description
Crash report
What happened?
We see segfaults randomly (not frequently enough to get more detailed info) when running integration tests for PySR. The following segfault was seen on Python 3.12.10.
Full stack trace of the segfault (click to expand)
[2413] signal 11 (1): Segmentation faultin expression starting at none:0_PyObject_IS_GC at /home/runner/work/_temp/SourceCode/./Include/internal/pycore_object.h:343 [inlined]visit_decref at /home/runner/work/_temp/SourceCode/Modules/gcmodule.c:465dict_traverse at /home/runner/work/_temp/SourceCode/Objects/dictobject.c:3549subtract_refs at /home/runner/work/_temp/SourceCode/Modules/gcmodule.c:491 [inlined]deduce_unreachable at /home/runner/work/_temp/SourceCode/Modules/gcmodule.c:1116gc_collect_main at /home/runner/work/_temp/SourceCode/Modules/gcmodule.c:1[242](https://github.com/MilesCranmer/PySR/actions/runs/15098605107/job/42436577017#step:9:243)gc_collect_with_callback at /home/runner/work/_temp/SourceCode/Modules/gcmodule.c:1426gc_collect_generations at /home/runner/work/_temp/SourceCode/Modules/gcmodule.c:1481 [inlined]_Py_RunGC at /home/runner/work/_temp/SourceCode/Modules/gcmodule.c:2318_Py_HandlePending at /home/runner/work/_temp/SourceCode/Python/ceval_gil.c:1045_PyEval_EvalFrameDefault at /home/runner/work/_temp/SourceCode/Python/ceval.c:836_PyEval_EvalFrame at /home/runner/work/_temp/SourceCode/./Include/internal/pycore_ceval.h:89 [inlined]gen_send_ex2 at /home/runner/work/_temp/SourceCode/Objects/genobject.c:230 [inlined]gen_iternext at /home/runner/work/_temp/SourceCode/Objects/genobject.c:603builtin_all at /home/runner/work/_temp/SourceCode/Python/bltinmodule.c:322_PyEval_EvalFrameDefault at /home/runner/work/_temp/SourceCode/Python/bytecodes.c:2913_PyObject_VectorcallTstate at /home/runner/work/_temp/SourceCode/./Include/internal/pycore_call.h:92 [inlined]PyObject_Vectorcall at /home/runner/work/_temp/SourceCode/Objects/call.c:325property_descr_set at /home/runner/work/_temp/SourceCode/Objects/descrobject.c:1678_PyObject_GenericSetAttrWithDict at /home/runner/work/_temp/SourceCode/Objects/object.c:1569 [inlined]PyObject_GenericSetAttr at /home/runner/work/_temp/SourceCode/Objects/object.c:1636wrap_setattr at /home/runner/work/_temp/SourceCode/Objects/typeobject.c:8050wrapperdescr_raw_call at /home/runner/work/_temp/SourceCode/Objects/descrobject.c:537 [inlined]wrapperdescr_call at /home/runner/work/_temp/SourceCode/Objects/descrobject.c:574_PyObject_MakeTpCall at /home/runner/work/_temp/SourceCode/Objects/call.c:240_PyEval_EvalFrameDefault at /home/runner/work/_temp/SourceCode/Python/bytecodes.c:2715_PyObject_VectorcallTstate at /home/runner/work/_temp/SourceCode/./Include/internal/pycore_call.h:92 [inlined]vectorcall_unbound at /home/runner/work/_temp/SourceCode/Objects/typeobject.c:2236 [inlined]vectorcall_method at /home/runner/work/_temp/SourceCode/Objects/typeobject.c:2267 [inlined]slot_tp_setattro at /home/runner/work/_temp/SourceCode/Objects/typeobject.c:8905PyObject_SetAttr at /home/runner/work/_temp/SourceCode/Objects/object.c:1192_PyEval_EvalFrameDefault at /home/runner/work/_temp/SourceCode/Python/bytecodes.c:1135_PyFunction_Vectorcall at /home/runner/work/_temp/SourceCode/Objects/call.c:419 [inlined]_PyObject_FastCallDictTstate at /home/runner/work/_temp/SourceCode/Objects/call.c:144 [inlined]_PyObject_Call_Prepend at /home/runner/work/_temp/SourceCode/Objects/call.c:508slot_tp_init at /home/runner/work/_temp/SourceCode/Objects/typeobject.c:9035type_call at /home/runner/work/_temp/SourceCode/Objects/typeobject.c:1679_PyObject_MakeTpCall at /home/runner/work/_temp/SourceCode/Objects/call.c:240_PyEval_EvalFrameDefault at /home/runner/work/_temp/SourceCode/Python/bytecodes.c:2715_PyObject_VectorcallTstate at /home/runner/work/_temp/SourceCode/./Include/internal/pycore_call.h:92 [inlined]method_vectorcall at /home/runner/work/_temp/SourceCode/Objects/classobject.c:61unknown function (ip: 0x7f18b800f0e4)_PyEval_EvalFrameDefault at /home/runner/work/_temp/SourceCode/Python/bytecodes.c:3[263](https://github.com/MilesCranmer/PySR/actions/runs/15098605107/job/42436577017#step:9:264)_PyObject_VectorcallTstate at /home/runner/work/_temp/SourceCode/./Include/internal/pycore_call.h:92 [inlined]PyObject_CallOneArg at /home/runner/work/_temp/SourceCode/Objects/call.c:401slot_tp_repr at /home/runner/work/_temp/SourceCode/Objects/typeobject.c:8720PyObject_Str at /home/runner/work/_temp/SourceCode/Objects/object.c:630PyFile_WriteObject at /home/runner/work/_temp/SourceCode/Objects/fileobject.c:124builtin_print_impl at /home/runner/work/_temp/SourceCode/Python/bltinmodule.c:2057 [inlined]builtin_print at /home/runner/work/_temp/SourceCode/Python/clinic/bltinmodule.c.h:962cfunction_vectorcall_FASTCALL_KEYWORDS at /home/runner/work/_temp/SourceCode/Objects/methodobject.c:438_PyObject_VectorcallTstate at /home/runner/work/_temp/SourceCode/./Include/internal/pycore_call.h:92 [inlined]PyObject_Vectorcall at /home/runner/work/_temp/SourceCode/Objects/call.c:325_PyEval_EvalFrameDefault at /home/runner/work/_temp/SourceCode/Python/bytecodes.c:[271](https://github.com/MilesCranmer/PySR/actions/runs/15098605107/job/42436577017#step:9:272)5_PyObject_VectorcallTstate at /home/runner/work/_temp/SourceCode/./Include/internal/pycore_call.h:92 [inlined]method_vectorcall at /home/runner/work/_temp/SourceCode/Objects/classobject.c:91_PyEval_EvalFrameDefault at /home/runner/work/_temp/SourceCode/Python/bytecodes.c:3263pyrun_file at /home/runner/work/_temp/SourceCode/Python/pythonrun.c:1674_PyRun_SimpleFileObject at /home/runner/work/_temp/SourceCode/Python/pythonrun.c:459_PyRun_AnyFileObject at /home/runner/work/_temp/SourceCode/Python/pythonrun.c:78pymain_run_file_obj at /home/runner/work/_temp/SourceCode/Modules/main.c:361 [inlined]pymain_run_file at /home/runner/work/_temp/SourceCode/Modules/main.c:380 [inlined]pymain_run_python at /home/runner/work/_temp/SourceCode/Modules/main.c:634 [inlined]Py_RunMain at /home/runner/work/_temp/SourceCode/Modules/main.c:714Py_BytesMain at /home/runner/work/_temp/SourceCode/Modules/main.c:768unknown function (ip: 0x7f18b7a2a1c9)__libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)_start at /opt/hostedtoolcache/Python/3.12.10/x64/bin/python (unknown line)Allocations: 379668601 (Pool: 379663673; Big: 4928); GC: 303/home/runner/work/_temp/b8a8bd4b-faae-4481-94e0-330e30094622.sh: line 1: 2413 Segmentation fault (core dumped) coverage run -m pysr test main,cli,startup
PySR relies onPythonCall.jl to interface with Julia backend libraries.
This stacktrace was seen from the following GitHub action:https://github.com/MilesCranmer/PySR/blob/057e3ec5a9d87c9495f7d36965ce4cbee5ef452a/.github/workflows/CI.yml#L21-L88. I have uploaded the full logs for this action to the following gist:https://gist.github.com/MilesCranmer/1df76efecf606123dae2146e461676b1 which have further details on the system and environment.
Unfortunately I don't think this will be easily reproducible as we see it randomly, and not very frequently. We thought it might be worth reporting anyway, to see if there were any ideas for where the issue is coming from.
The CI runs on 3.8, 3.10, and 3.12. I have not seen this segfault on 3.8 nor on 3.10.
CPython versions tested on:
3.12
Operating systems tested on:
Linux
Output from running 'python -VV' on the command line:
N/A (GitHub action)