I’m encountering a strange segfault error in my package tests that appears to be non-deterministic, and is only triggered during CI with GitHub Actions. I’m not able to reproduce locally.
This issue is occurring on MacOS and Ubuntu with Julia 1.5.3, but seems to be non-deterministic, and only triggered during multithreaded tests. First it passed on MacOS and failed on Ubuntu, then later (with no changes to source code, but simply re-running the GitHub Actions jobs) it passed on Ubuntu and failed on MacOS.
I’m not sure if the information I have now is sufficient to open an actionable issue on JuliaLang/julia. Would enabling debug logging on GitHub Actions and posting that be sufficient? Or any ideas from the community about what the underlying issue might be?
Here’s the full stacktrace. The link above leads to the full logs of GitHub Actions.
signal (11): Segmentation fault: 11
in expression starting at /Users/runner/work/Omniscape.jl/Omniscape.jl/test/runtests.jl:91
_ZNSt3__127__tree_balance_after_insertIPNS_16__tree_node_baseIPvEEEEvT_S5_ at /Users/runner/hostedtoolcache/julia/1.5.3/x64/lib/julia/libLLVM.dylib (unknown line)
_ZN4llvm9DWARFUnit19updateAddressDieMapENS_8DWARFDieE at /Users/runner/hostedtoolcache/julia/1.5.3/x64/lib/julia/libLLVM.dylib (unknown line)
_ZN4llvm9DWARFUnit19updateAddressDieMapENS_8DWARFDieE at /Users/runner/hostedtoolcache/julia/1.5.3/x64/lib/julia/libLLVM.dylib (unknown line)
_ZN4llvm9DWARFUnit19updateAddressDieMapENS_8DWARFDieE at /Users/runner/hostedtoolcache/julia/1.5.3/x64/lib/julia/libLLVM.dylib (unknown line)
_ZN4llvm9DWARFUnit19updateAddressDieMapENS_8DWARFDieE at /Users/runner/hostedtoolcache/julia/1.5.3/x64/lib/julia/libLLVM.dylib (unknown line)
_ZN4llvm9DWARFUnit19updateAddressDieMapENS_8DWARFDieE at /Users/runner/hostedtoolcache/julia/1.5.3/x64/lib/julia/libLLVM.dylib (unknown line)
_ZN4llvm9DWARFUnit19updateAddressDieMapENS_8DWARFDieE at /Users/runner/hostedtoolcache/julia/1.5.3/x64/lib/julia/libLLVM.dylib (unknown line)
_ZN4llvm9DWARFUnit23getSubroutineForAddressEy at /Users/runner/hostedtoolcache/julia/1.5.3/x64/lib/julia/libLLVM.dylib (unknown line)
_ZN4llvm9DWARFUnit25getInlinedChainForAddressEyRNS_15SmallVectorImplINS_8DWARFDieEEE at /Users/runner/hostedtoolcache/julia/1.5.3/x64/lib/julia/libLLVM.dylib (unknown line)
_ZN4llvm12DWARFContext25getInliningInfoForAddressENS_6object16SectionedAddressENS_19DILineInfoSpecifierE at /Users/runner/hostedtoolcache/julia/1.5.3/x64/lib/julia/libLLVM.dylib (unknown line)
lookup_pointer at /Users/julia/buildbot/worker/package_macos64/build/src/debuginfo.cpp:547
jl_getFunctionInfo at /Users/julia/buildbot/worker/package_macos64/build/src/debuginfo.cpp:0
jl_lookup_code_address at /Users/julia/buildbot/worker/package_macos64/build/src/stackwalk.c:572
lookup at ./stacktraces.jl:107
firstcaller at ./deprecated.jl:110
firstcaller at ./deprecated.jl:105 [inlined]
macro expansion at ./deprecated.jl:90 [inlined]
macro expansion at ./logging.jl:321 [inlined]
#depwarn#797 at ./deprecated.jl:85
depwarn at ./deprecated.jl:80 [inlined]
#cg!#23 at /Users/runner/.julia/packages/IterativeSolvers/upIVv/src/cg.jl:230
cg!##kw at /Users/runner/.julia/packages/IterativeSolvers/upIVv/src/cg.jl:223
#cg#22 at /Users/runner/.julia/packages/IterativeSolvers/upIVv/src/cg.jl:169
cg##kw at /Users/runner/.julia/packages/IterativeSolvers/upIVv/src/cg.jl:169 [inlined]
solve_linear_system at /Users/runner/.julia/packages/Circuitscape/9x9VD/src/core.jl:577
macro expansion at ./timing.jl:233 [inlined]
multiple_solver at /Users/runner/.julia/packages/Circuitscape/9x9VD/src/raster/advanced.jl:284
calculate_current at /Users/runner/work/Omniscape.jl/Omniscape.jl/src/utils.jl:410
unknown function (ip: 0x14cea7a78)
solve_target! at /Users/runner/work/Omniscape.jl/Omniscape.jl/src/utils.jl:496
unknown function (ip: 0x14cf09d02)
macro expansion at /Users/runner/work/Omniscape.jl/Omniscape.jl/src/main.jl:273 [inlined]
#71#threadsfor_fun at ./threadingconstructs.jl:81
#71#threadsfor_fun at ./threadingconstructs.jl:48
unknown function (ip: 0x144b7ff2c)
jl_apply at /Users/julia/buildbot/worker/package_macos64/build/src/./julia.h:1690 [inlined]
start_task at /Users/julia/buildbot/worker/package_macos64/build/src/task.c:705
Allocations: 136222984 (Pool: 136126583; Big: 96401); GC: 104
ERROR: Package Omniscape errored during testing (received signal: 11)
Stacktrace:
[1] pkgerror(::String) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.5/Pkg/src/Types.jl:52
[2] test(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}; coverage::Bool, julia_args::Cmd, test_args::Cmd, test_fn::Nothing) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.5/Pkg/src/Operations.jl:1578
[3] test(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}; coverage::Bool, test_fn::Nothing, julia_args::Cmd, test_args::Cmd, kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.5/Pkg/src/API.jl:327
[4] #test#61 at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.5/Pkg/src/API.jl:67 [inlined]
[5] test(; name::Nothing, uuid::Nothing, version::Nothing, url::Nothing, rev::Nothing, path::Nothing, mode::Pkg.Types.PackageMode, subdir::Nothing, kwargs::Base.Iterators.Pairs{Symbol,Bool,Tuple{Symbol},NamedTuple{(:coverage,),Tuple{Bool}}}) at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.5/Pkg/src/API.jl:80
[6] top-level scope at none:1
Error: Process completed with exit code 1.