Skip to content
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

Random segmentation fault at exit on 1.10.0-rc1 when starting Julia with threads #52024

Closed
jaakkor2 opened this issue Nov 4, 2023 · 11 comments · Fixed by #51213
Closed

Random segmentation fault at exit on 1.10.0-rc1 when starting Julia with threads #52024

jaakkor2 opened this issue Nov 4, 2023 · 11 comments · Fixed by #51213
Labels
regression Regression in behavior compared to a previous version
Milestone

Comments

@jaakkor2
Copy link
Contributor

jaakkor2 commented Nov 4, 2023

Julia v1.10.0-rc1 on Linux

$ for i in {1..20}; do echo $i; ./julia-1.10.0-rc1/bin/julia -t 8 --project=ten --banner=no --startup-file=no -e "using HTTP, Makie"; done

gives segmentation faults at exit randomly. I can start REPL, using HTTP, Makie, and then pressing Ctrl-D to get seg fault.

Example output from the loop is

1

[48474] signal (11.1): Segmentation fault
in expression starting at none:0
2
3
4

[48617] signal (11.1): Segmentation fault
in expression starting at none:0
5
6
7

[48758] signal (11.1): Segmentation fault
in expression starting at none:0
8

[48805] signal (11.1): Segmentation fault
in expression starting at none:0
9
10
11
12
13
14

[49181] signal (11.1): Segmentation fault
in expression starting at none:0
15
16
17
18
19
20

Julia 1.9.3 is fine. Julia 1.10.0-rc1 seems to work when started with -t 1.

Package versions, and version info

(ten) pkg> st
Status `~/julia/ten/Project.toml`
  [cd3eb016] HTTP v1.10.0
  [ee78f7c6] Makie v0.19.12

julia> versioninfo()
Julia Version 1.10.0-rc1
Commit 5aaa9485436 (2023-11-03 07:44 UTC)
Build Info:
  Official https://julialang.org/ release
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: 64 × AMD EPYC 7371 16-Core Processor
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-15.0.7 (ORCJIT, znver1)
  Threads: 1 on 64 virtual cores
@KristofferC KristofferC added this to the 1.10 milestone Nov 4, 2023
@ViralBShah ViralBShah added the regression Regression in behavior compared to a previous version label Nov 4, 2023
@jishnub
Copy link
Contributor

jishnub commented Nov 7, 2023

I was unable to reproduce this on

julia> versioninfo()
Julia Version 1.10.0-rc1
Commit 5aaa9485436 (2023-11-03 07:44 UTC)
Build Info:
  Official https://julialang.org/ release
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: 8 × 11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-15.0.7 (ORCJIT, tigerlake)
  Threads: 1 on 8 virtual cores
Environment:
  LD_LIBRARY_PATH = :/usr/lib/x86_64-linux-gnu/gtk-3.0/modules
  JULIA_EDITOR = subl

using

for i in {1..20}; do echo $i; julia-1.10 -t 4 --project --banner=no --startup-file=no -e "using HTTP, Makie"; done

Perhaps an rr trace would help here

@ktdq
Copy link

ktdq commented Nov 7, 2023

I can reliably reproduce and git bisecting gives:

81d8c12 is the first bad commit
commit 81d8c12
Author: DilumAluthgeBot [email protected]
Date: Tue Oct 31 18:49:17 2023 -0400

🤖 [backports-release-1.10] Bump the Pkg stdlib from 9261a54d3 to e63c601bd (#51964)

@KristofferC
Copy link
Member

I can reliably reproduce and git bisecting gives:

That's a bit surprising since no Pkg commands seems to be executed.

@ktdq
Copy link

ktdq commented Nov 7, 2023

Yeah, it is strange, it must be triggering some other bug. Because if I git revert 81d8c12adfe5d687a3e25599996aa6a244b2c3da things work fine again and there are no crashes.

@vtjnash
Copy link
Member

vtjnash commented Nov 7, 2023

These packages actually use Pkg quite heavily (edit, although many seem to be from SuiteSparse_jll, which falsely declares a dependency):

`why` output
(@v1.11) pkg> activate --temp
  Activating new project at `/var/folders/r7/k49rwnbx0w15d55pw31jlrrr0000gn/T/jl_RYxJwg`

(jl_RYxJwg) pkg> add HTTP Makie

(jl_RYxJwg) pkg> why Pkg
  Makie → Animations → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → Animations → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ColorBrewer → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ColorBrewer → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ColorSchemes → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ColorSchemes → ColorVectorSpace → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ColorSchemes → ColorVectorSpace → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ColorSchemes → ColorVectorSpace → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → ColorSchemes → ColorVectorSpace → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ColorSchemes → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ColorSchemes → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ColorSchemes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → ExactPredicates → IntervalArithmetic → CRlibm → CRlibm_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → LinearAlgebraX → SimplePolynomials → Polynomials → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → Optim → ForwardDiff → DiffRules → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → Optim → ForwardDiff → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → Optim → LineSearches → NLSolversBase → FiniteDiff → ArrayInterface → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → Optim → LineSearches → NLSolversBase → FiniteDiff → ArrayInterface → SuiteSparse → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → Optim → LineSearches → NLSolversBase → FiniteDiff → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → Optim → LineSearches → NLSolversBase → ForwardDiff → DiffRules → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → Optim → LineSearches → NLSolversBase → ForwardDiff → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → Optim → NLSolversBase → FiniteDiff → ArrayInterface → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → Optim → NLSolversBase → FiniteDiff → ArrayInterface → SuiteSparse → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → Optim → NLSolversBase → FiniteDiff → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → Optim → NLSolversBase → ForwardDiff → DiffRules → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → Optim → NLSolversBase → ForwardDiff → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → Optim → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → Optim → StatsBase → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → Optim → StatsBase → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → SimplePolynomials → Polynomials → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → SimpleRandom → Distributions → PDMats → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → SimpleRandom → Distributions → PDMats → SuiteSparse → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → SimpleRandom → Distributions → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → SimpleRandom → Distributions → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → SimpleRandom → Distributions → StatsBase → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → SimpleRandom → Distributions → StatsBase → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → SimpleRandom → Distributions → StatsFuns → HypergeometricFunctions → DualNumbers → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → SimpleRandom → Distributions → StatsFuns → HypergeometricFunctions → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → SimpleRandom → Distributions → StatsFuns → Rmath → Rmath_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → SimpleRandom → Distributions → StatsFuns → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → SparseArrays → SuiteSparse_jll → Pkg
  Makie → DelaunayTriangulation → SimpleGraphs → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → Distributions → PDMats → SparseArrays → SuiteSparse_jll → Pkg
  Makie → Distributions → PDMats → SuiteSparse → SparseArrays → SuiteSparse_jll → Pkg
  Makie → Distributions → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → Distributions → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → Distributions → StatsBase → SparseArrays → SuiteSparse_jll → Pkg
  Makie → Distributions → StatsBase → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → Distributions → StatsFuns → HypergeometricFunctions → DualNumbers → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → Distributions → StatsFuns → HypergeometricFunctions → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → Distributions → StatsFuns → Rmath → Rmath_jll → Pkg
  Makie → Distributions → StatsFuns → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → FFMPEG_jll → Bzip2_jll → Pkg
  Makie → FFMPEG_jll → FreeType2_jll → Bzip2_jll → Pkg
  Makie → FFMPEG_jll → FriBidi_jll → Pkg
  Makie → FFMPEG_jll → LAME_jll → Pkg
  Makie → FFMPEG_jll → Ogg_jll → Pkg
  Makie → FFMPEG_jll → Opus_jll → Pkg
  Makie → FFMPEG_jll → libaom_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → Bzip2_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → FreeType2_jll → Bzip2_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → FriBidi_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Bzip2_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Fontconfig_jll → Bzip2_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Fontconfig_jll → FreeType2_jll → Bzip2_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Fontconfig_jll → Libuuid_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Fontconfig_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → FreeType2_jll → Bzip2_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Glib_jll → Gettext_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Glib_jll → Libffi_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Glib_jll → Libmount_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → LZO_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Pixman_jll → LLVMOpenMP_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Xorg_libXext_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Xorg_libXext_jll → Xorg_libX11_jll → Xorg_libxcb_jll → XSLT_jll → Libgcrypt_jll → Libgpg_error_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Xorg_libXext_jll → Xorg_libX11_jll → Xorg_libxcb_jll → XSLT_jll → Libgcrypt_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Xorg_libXext_jll → Xorg_libX11_jll → Xorg_libxcb_jll → XSLT_jll → Libgpg_error_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Xorg_libXext_jll → Xorg_libX11_jll → Xorg_libxcb_jll → XSLT_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Xorg_libXrender_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Xorg_libXrender_jll → Xorg_libX11_jll → Xorg_libxcb_jll → XSLT_jll → Libgcrypt_jll → Libgpg_error_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Xorg_libXrender_jll → Xorg_libX11_jll → Xorg_libxcb_jll → XSLT_jll → Libgcrypt_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Xorg_libXrender_jll → Xorg_libX11_jll → Xorg_libxcb_jll → XSLT_jll → Libgpg_error_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → Xorg_libXrender_jll → Xorg_libX11_jll → Xorg_libxcb_jll → XSLT_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Cairo_jll → libpng_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Fontconfig_jll → Bzip2_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Fontconfig_jll → FreeType2_jll → Bzip2_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Fontconfig_jll → Libuuid_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Fontconfig_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → FreeType2_jll → Bzip2_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Glib_jll → Gettext_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Glib_jll → Libffi_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Glib_jll → Libmount_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Graphite2_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Libffi_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → HarfBuzz_jll → Pkg
  Makie → FFMPEG_jll → libass_jll → Pkg
  Makie → FFMPEG_jll → libfdk_aac_jll → Pkg
  Makie → FFMPEG_jll → libvorbis_jll → Ogg_jll → Pkg
  Makie → FFMPEG_jll → libvorbis_jll → Pkg
  Makie → FFMPEG_jll → x264_jll → Pkg
  Makie → FFMPEG_jll → x265_jll → Pkg
  Makie → FileIO → Pkg
  Makie → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → FreeType → FreeType2_jll → Bzip2_jll → Pkg
  Makie → FreeTypeAbstraction → ColorVectorSpace → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → FreeTypeAbstraction → ColorVectorSpace → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → FreeTypeAbstraction → ColorVectorSpace → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → FreeTypeAbstraction → ColorVectorSpace → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → FreeTypeAbstraction → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → FreeTypeAbstraction → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → FreeTypeAbstraction → FreeType → FreeType2_jll → Bzip2_jll → Pkg
  Makie → FreeTypeAbstraction → GeometryBasics → EarCut_jll → Pkg
  Makie → GeometryBasics → EarCut_jll → Pkg
  Makie → GridLayoutBase → GeometryBasics → EarCut_jll → Pkg
  Makie → ImageIO → FileIO → Pkg
  Makie → ImageIO → JpegTurbo → FileIO → Pkg
  Makie → ImageIO → JpegTurbo → ImageCore → ColorVectorSpace → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → JpegTurbo → ImageCore → ColorVectorSpace → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → JpegTurbo → ImageCore → ColorVectorSpace → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → ImageIO → JpegTurbo → ImageCore → ColorVectorSpace → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → JpegTurbo → ImageCore → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → JpegTurbo → ImageCore → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → JpegTurbo → ImageCore → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → JpegTurbo → ImageCore → Graphics → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → JpegTurbo → ImageCore → Graphics → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → FileIO → Pkg
  Makie → ImageIO → Netpbm → ImageCore → ColorVectorSpace → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageCore → ColorVectorSpace → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageCore → ColorVectorSpace → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → ImageIO → Netpbm → ImageCore → ColorVectorSpace → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageCore → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageCore → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageCore → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageCore → Graphics → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageCore → Graphics → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageBase → ImageCore → ColorVectorSpace → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageBase → ImageCore → ColorVectorSpace → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageBase → ImageCore → ColorVectorSpace → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageBase → ImageCore → ColorVectorSpace → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageBase → ImageCore → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageBase → ImageCore → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageBase → ImageCore → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageBase → ImageCore → Graphics → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageBase → ImageCore → Graphics → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageCore → ColorVectorSpace → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageCore → ColorVectorSpace → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageCore → ColorVectorSpace → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageCore → ColorVectorSpace → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageCore → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageCore → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageCore → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageCore → Graphics → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageAxes → ImageCore → Graphics → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageBase → ImageCore → ColorVectorSpace → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageBase → ImageCore → ColorVectorSpace → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageBase → ImageCore → ColorVectorSpace → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageBase → ImageCore → ColorVectorSpace → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageBase → ImageCore → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageBase → ImageCore → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageBase → ImageCore → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageBase → ImageCore → Graphics → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageBase → ImageCore → Graphics → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageCore → ColorVectorSpace → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageCore → ColorVectorSpace → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageCore → ColorVectorSpace → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageCore → ColorVectorSpace → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageCore → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageCore → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageCore → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageCore → Graphics → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Netpbm → ImageMetadata → ImageCore → Graphics → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → OpenEXR → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → OpenEXR → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → OpenEXR → FileIO → Pkg
  Makie → ImageIO → PNGFiles → ImageCore → ColorVectorSpace → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → PNGFiles → ImageCore → ColorVectorSpace → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → PNGFiles → ImageCore → ColorVectorSpace → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → ImageIO → PNGFiles → ImageCore → ColorVectorSpace → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → PNGFiles → ImageCore → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → PNGFiles → ImageCore → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → PNGFiles → ImageCore → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → PNGFiles → ImageCore → Graphics → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → PNGFiles → ImageCore → Graphics → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → PNGFiles → libpng_jll → Pkg
  Makie → ImageIO → QOI → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → QOI → FileIO → Pkg
  Makie → ImageIO → QOI → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Sixel → FileIO → Pkg
  Makie → ImageIO → Sixel → ImageCore → ColorVectorSpace → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Sixel → ImageCore → ColorVectorSpace → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Sixel → ImageCore → ColorVectorSpace → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → ImageIO → Sixel → ImageCore → ColorVectorSpace → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Sixel → ImageCore → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Sixel → ImageCore → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Sixel → ImageCore → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Sixel → ImageCore → Graphics → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Sixel → ImageCore → Graphics → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → Sixel → libsixel_jll → Pkg
  Makie → ImageIO → Sixel → libsixel_jll → libpng_jll → Pkg
  Makie → ImageIO → TiffImages → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → TiffImages → FileIO → Pkg
  Makie → ImageIO → TiffImages → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ImageIO → TiffImages → PkgVersion → Pkg
  Makie → Isoband → isoband_jll → Pkg
  Makie → KernelDensity → Distributions → PDMats → SparseArrays → SuiteSparse_jll → Pkg
  Makie → KernelDensity → Distributions → PDMats → SuiteSparse → SparseArrays → SuiteSparse_jll → Pkg
  Makie → KernelDensity → Distributions → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → KernelDensity → Distributions → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → KernelDensity → Distributions → StatsBase → SparseArrays → SuiteSparse_jll → Pkg
  Makie → KernelDensity → Distributions → StatsBase → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → KernelDensity → Distributions → StatsFuns → HypergeometricFunctions → DualNumbers → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → KernelDensity → Distributions → StatsFuns → HypergeometricFunctions → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → KernelDensity → Distributions → StatsFuns → Rmath → Rmath_jll → Pkg
  Makie → KernelDensity → Distributions → StatsFuns → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → KernelDensity → FFTW → FFTW_jll → Pkg
  Makie → KernelDensity → FFTW → MKL_jll → IntelOpenMP_jll → Pkg
  Makie → KernelDensity → FFTW → MKL_jll → LazyArtifacts → Pkg
  Makie → KernelDensity → FFTW → MKL_jll → Pkg
  Makie → KernelDensity → Interpolations → AxisAlgorithms → SparseArrays → SuiteSparse_jll → Pkg
  Makie → KernelDensity → Interpolations → AxisAlgorithms → WoodburyMatrices → SparseArrays → SuiteSparse_jll → Pkg
  Makie → KernelDensity → Interpolations → SparseArrays → SuiteSparse_jll → Pkg
  Makie → KernelDensity → Interpolations → WoodburyMatrices → SparseArrays → SuiteSparse_jll → Pkg
  Makie → KernelDensity → StatsBase → SparseArrays → SuiteSparse_jll → Pkg
  Makie → KernelDensity → StatsBase → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → MathTeXEngine → FreeTypeAbstraction → ColorVectorSpace → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → MathTeXEngine → FreeTypeAbstraction → ColorVectorSpace → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → MathTeXEngine → FreeTypeAbstraction → ColorVectorSpace → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → MathTeXEngine → FreeTypeAbstraction → ColorVectorSpace → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → MathTeXEngine → FreeTypeAbstraction → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → MathTeXEngine → FreeTypeAbstraction → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → MathTeXEngine → FreeTypeAbstraction → FreeType → FreeType2_jll → Bzip2_jll → Pkg
  Makie → MathTeXEngine → FreeTypeAbstraction → GeometryBasics → EarCut_jll → Pkg
  Makie → MathTeXEngine → GeometryBasics → EarCut_jll → Pkg
  Makie → Packing → GeometryBasics → EarCut_jll → Pkg
  Makie → PlotUtils → ColorSchemes → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → PlotUtils → ColorSchemes → ColorVectorSpace → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → PlotUtils → ColorSchemes → ColorVectorSpace → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → PlotUtils → ColorSchemes → ColorVectorSpace → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → PlotUtils → ColorSchemes → ColorVectorSpace → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → PlotUtils → ColorSchemes → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → PlotUtils → ColorSchemes → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → PlotUtils → ColorSchemes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → PlotUtils → Colors → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → PlotUtils → Colors → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → PlotUtils → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ShaderAbstractions → ColorTypes → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ShaderAbstractions → FixedPointNumbers → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → ShaderAbstractions → GeometryBasics → EarCut_jll → Pkg
  Makie → SignedDistanceFields → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → SparseArrays → SuiteSparse_jll → Pkg
  Makie → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → StatsBase → SparseArrays → SuiteSparse_jll → Pkg
  Makie → StatsBase → Statistics → SparseArrays → SuiteSparse_jll → Pkg
  Makie → StatsFuns → HypergeometricFunctions → DualNumbers → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → StatsFuns → HypergeometricFunctions → SpecialFunctions → OpenSpecFun_jll → Pkg
  Makie → StatsFuns → Rmath → Rmath_jll → Pkg
  Makie → StatsFuns → SpecialFunctions → OpenSpecFun_jll → Pkg

@ktdq
Copy link

ktdq commented Nov 7, 2023

I spoke too soon, this reproducer is not stressing it enough. If I have ~100 packages in the project and run it longer then git bisect points to upgrade to LLVM 15:

There are only 'skip'ped commits left to test.
The first bad commit could be any of:

190f841
9e3da19
2ddbb5a

We cannot bisect more!
bisect run cannot continue any more

@ktdq
Copy link

ktdq commented Nov 8, 2023

And the fix is already in the nightly builds, just needs to be backported:

#51213

@LilithHafner
Copy link
Member

I also cannot reproduce the issue in the OP; @ktdq, would you share the more stressful reproducer you have?

Julia Version 1.10.0-rc1
Commit 5aaa9485436 (2023-11-03 07:44 UTC)
Build Info:
  Official https://julialang.org/ release
Platform Info:
  OS: macOS (arm64-apple-darwin22.4.0)
  CPU: 8 × Apple M2
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-15.0.7 (ORCJIT, apple-m1)
  Threads: 1 on 4 virtual cores
Environment:
  JULIA_EDITOR = code

@ktdq
Copy link

ktdq commented Nov 8, 2023

Project.toml:

[deps]
Arpack = "7d9fca2a-8960-54d3-9f78-7d1dccf2cb97"
BenchmarkTools = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf"
CSV = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b"
CodeTracking = "da1fd8a2-8d9e-5ec2-8556-3022fb5608a2"
CoverageTools = "c36e975a-824b-4404-a568-ef97ca766997"
DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0"
DataStructures = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8"
HTTP = "cd3eb016-35fb-5094-929b-558a96fad6f3"
Optim = "429524aa-4258-5aef-a3af-852621145aeb"
OrderedCollections = "bac558e1-5e72-5ebc-8fee-abe8a469f55d"
PackageCompiler = "9b87118b-4619-50d2-8e1e-99f35a4d4d9d"
PyPlot = "d330b81b-6aea-500a-939a-2ce795aea3ee"
TranscodingStreams = "3bb67fe8-82b1-5028-8e26-92a6c54297fa"

stress.sh:

./julia --pkgimages=no -e "using Pkg ; Pkg.update(); using PackageCompiler ; PackageCompiler.create_sysimage(;sysimage_path=\"../test.so\")"
for i in {1..100};
do
        echo $i
        output=$(./julia -J ../test.so -t 100 -e "using HTTP, PackageCompiler" 2>&1 )
        if [[ "$output" == *"Segmentation fault"* ]]; then
                        echo Bad
                        exit 0
        else
                echo $output
        fi
done
echo Good
exit 1

@LilithHafner
Copy link
Member

I can confirm that that stress test fails reliably (prints Bad, exits 0) on 1.10-rc1 and succeeds reliably (prints Good exits 1) on 1.10-rc1 with 3d88550 cherry-picked onto it.

@LilithHafner
Copy link
Member

Thank you for your work bisecting the fix for this, @ktdq, I really appreciate it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
regression Regression in behavior compared to a previous version
Projects
None yet
Development

Successfully merging a pull request may close this issue.

8 participants