JuliaWeb/Gumbo.jl

Segfault from `map(x->parsehtml(String(x.body)), xs)`

anandijain opened this issue · 1 comments

I'm assuming that it was just out of memory error, but Julia still crashed from segfault, so filing an issue.
The stacktrace is rather long, so I just included the start and end.

julia> versioninfo()
Julia Version 1.5.2
Commit 539f3ce943 (2020-09-23 23:17 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-9.0.1 (ORCJIT, skylake)
Environment:
  JULIA_NUM_THREADS = 4
julia> b = map(x->parsehtml(String(x.body)), a)
241-element Array{HTMLDocument,1}:

signal (11): Segmentation fault
in expression starting at none:0
page_metadata at /buildworker/worker/package_linux64/build/src/gc.h:448 [inlined]
gc_setmark_pool at /buildworker/worker/package_linux64/build/src/gc.c:751 [inlined]
gc_setmark at /buildworker/worker/package_linux64/build/src/gc.c:758 [inlined]
gc_mark_loop at /buildworker/worker/package_linux64/build/src/gc.c:2572
_jl_gc_collect at /buildworker/worker/package_linux64/build/src/gc.c:2902
jl_gc_collect at /buildworker/worker/package_linux64/build/src/gc.c:3108
maybe_collect at /buildworker/worker/package_linux64/build/src/gc.c:827 [inlined]
jl_gc_pool_alloc at /buildworker/worker/package_linux64/build/src/gc.c:1142
iterate at ./compiler/ssair/ir.jl:393
iterate at ./compiler/ssair/ir.jl:385 [inlined]
replace_code_newstyle! at ./compiler/ssair/legacy.jl:71
optimize at ./compiler/optimize.jl:220
typeinf at ./compiler/typeinfer.jl:33

unknown function (ip: (nil))
Allocations: 86180299 (Pool: 86152106; Big: 28193); GC: 96
fish: '/home/sippycups/julia-1.5.2/bin…' terminated by signal SIGSEGV (Address boundary error)
aviks commented

Is this sefault reproducible? If you can reliably reporoduct it, it would be great to get an RR trace of it. (https://julialang.org/blog/2020/05/rr/)