timholy / SnoopCompile.jl

Provide insights about latency (TTFX) for Julia packages
https://timholy.github.io/SnoopCompile.jl/dev/
Other
309 stars 48 forks source link

Intermittently hitting an assert #302

Closed lamorton closed 1 year ago

lamorton commented 2 years ago

Twice when I've pushed new changes (latest example) to my PR in ModelingToolkit, I've gotten the following failure during SnoopCompile:

Run julia --project -e 'using SnoopCompileCore; invalidations = @snoopr begin using ModelingToolkit end; using SnoopCompile; inv_owned = length(filtermod(ModelingToolkit, invalidation_trees(invalidations))); inv_total = length(uinvalidated(invalidations)); inv_deps = inv_total - inv_owned; @show inv_total, inv_deps; println("::set-output name=total::$(inv_total)");  println("::set-output name=deps::$(inv_deps)")'
ERROR: AssertionError: leaf !== nothing
Stacktrace:
 [1] invalidation_trees(list::Vector{Any}; exclude_corecompiler::Bool)
   @ SnoopCompile ~/.julia/packages/SnoopCompile/TtLwA/src/invalidations.jl:351
 [2] invalidation_trees(list::Vector{Any})
   @ SnoopCompile ~/.julia/packages/SnoopCompile/TtLwA/src/invalidations.jl:288
 [3] top-level scope
   @ none:1
Error: Process completed with exit code 1.

I tried running this on my machine & didn't reproduce the error. It also seems to come & go in the runs on Github Actions.

timholy commented 1 year ago

It seems quite likely this has been fixed (https://github.com/timholy/SnoopCompile.jl/issues/315#issuecomment-1377218195). Feel free to reopen if you can reproduce it.