You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Infinite non-cyclic recursion causing StackOverflow leads to crashed Julia session.
I think this is because it throws another stackoverflow trying to print the exception's Salsa Stack.. 😅 Maybe we want to special-case the exception printing to not print the whole thing in the case of a StackOverflow, and/or to have some cut-off for the stack depth we'll print?
Or figure out how to do it in a loop instead of recursively or something?
Here's an example crash:
julia>using Salsa
julia>@derivedfoo(rt, x) =foo(rt, x+1)
foo (generic function with 1 method)
julia> rt =Runtime()
Salsa.Runtime(Salsa.DefaultStorage(0, ...))
julia>foo(rt, 1)
[ Info: DOUBLING SALSA TRACE FREELIST ON THREAD 1
[ Info: DOUBLING SALSA TRACE FREELIST ON THREAD 1
Internal error: encountered unexpected error in runtime:StackOverflowError()
Internal error: encountered unexpected error in runtime:StackOverflowError()
jl_subtype_env at /Applications/Julia-1.6.app/Contents/Resources/julia/lib/julia/libjulia-internal.1.6.dylib (unknown line)
simple_join at /Applications/Julia-1.6.app/Contents/Resources/julia/lib/julia/libjulia-internal.1.6.dylib (unknown line)
...
Infinite non-cyclic recursion causing StackOverflow leads to crashed Julia session.
I think this is because it throws another stackoverflow trying to print the exception's Salsa Stack.. 😅 Maybe we want to special-case the exception printing to not print the whole thing in the case of a StackOverflow, and/or to have some cut-off for the stack depth we'll print?
Or figure out how to do it in a loop instead of recursively or something?
Here's an example crash:
Full log from the crash: https://gist.github.com/rai-nhdaly/69cb50b2a97ed0bf00485e1858725ea7
The text was updated successfully, but these errors were encountered: