JuliaLang / Downloads.jl

MIT License
89 stars 34 forks source link

Segfault & `Error: curl_multi_remove_handle: 8` on 1.10 #239

Open mortenpi opened 2 months ago

mortenpi commented 2 months ago

On Julia 1.10.2, we're seeing this segfault. Just before it, we also get this:

┌ Error: curl_multi_remove_handle: 8
└ @ Downloads.Curl /usr/local/julia/share/julia/stdlib/v1.10/Downloads/src/Curl/utils.jl:57

This is the segfault stacktrace:

Curl_llist_insert_next at /usr/local/julia/bin/../lib/julia/libcurl.so.4 (unknown line)
multi_runsingle at /usr/local/julia/bin/../lib/julia/libcurl.so.4 (unknown line)
multi_socket at /usr/local/julia/bin/../lib/julia/libcurl.so.4 (unknown line)
curl_multi_socket_action at /usr/local/julia/bin/../lib/julia/libcurl.so.4 (unknown line)
curl_multi_socket_action at /cache/build/builder-amdci5-1/julialang/julia-release-1-dot-10/usr/share/julia/stdlib/v1.10/Downloads/src/Curl/Curl.jl:51 [inlined]
curl_multi_socket_action at /cache/build/builder-amdci5-1/julialang/julia-release-1-dot-10/usr/share/julia/stdlib/v1.10/Downloads/src/Curl/Curl.jl:59 [inlined]
macro expansion at /cache/build/builder-amdci5-1/julialang/julia-release-1-dot-10/usr/share/julia/stdlib/v1.10/Downloads/src/Curl/utils.jl:56 [inlined]
#59 at /cache/build/builder-amdci5-1/julialang/julia-release-1-dot-10/usr/share/julia/stdlib/v1.10/Downloads/src/Curl/Multi.jl:199
lock at ./lock.jl:229
#58 at /cache/build/builder-amdci5-1/julialang/julia-release-1-dot-10/usr/share/julia/stdlib/v1.10/Downloads/src/Curl/Multi.jl:197
unknown function (ip: 0x7fc757c58f72)
_jl_invoke at /cache/build/builder-amdci5-1/julialang/julia-release-1-dot-10/src/gf.c:2894 [inlined]
ijl_apply_generic at /cache/build/builder-amdci5-1/julialang/julia-release-1-dot-10/src/gf.c:3076
jl_apply at /cache/build/builder-amdci5-1/julialang/julia-release-1-dot-10/src/julia.h:1982 [inlined]
start_task at /cache/build/builder-amdci5-1/julialang/julia-release-1-dot-10/src/task.c:1238
Allocations: 232730906 (Pool: 232046900; Big: 684006); GC: 503

Unfortunately, I don't have an MWE right now, and the stacktrace doesn't actually say which Downloads call in our code is actually throwing (in expression starting at points to the top-level main() call).