# Simple SciML case - core dumped after switching from julia 1.7 to 1.8

**URL:** <https://discourse.julialang.org/t/simple-sciml-case-core-dumped-after-switching-from-julia-1-7-to-1-8/87549>\
**Category:** General Usage\
**Tags:** question\
**Created:** [September 21, 2022, 7:51am UTC](https://discourse.julialang.org/t/simple-sciml-case-core-dumped-after-switching-from-julia-1-7-to-1-8/87549 "2022-09-21T07:51:07Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![schlichtanders](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/schlichtanders/32/32145_2.png) [@schlichtanders](https://discourse.julialang.org/u/schlichtanders)\
**Post date:** [September 21, 2022, 7:51am UTC](https://discourse.julialang.org/t/simple-sciml-case-core-dumped-after-switching-from-julia-1-7-to-1-8/87549/1 "2022-09-21T07:51:08Z")

</div>

Hi there, I am starting with SciML and getting a core dumped when switching from julia 1.7.2 to julia 1.8.1

It is a simple combination of ODEProblem and Optimization, worked before, now fails dramatically.

```julia
import DifferentialEquations, DiffEqSensitivity, DiffEqFlux
import Symbolics, ModelingToolkit, DataDrivenDiffEq
import Optimization, OptimizationOptimisers, OptimizationOptimJL
import Lux, ComponentArrays
import Plots, Random, Statistics, StatsBase, DelimitedFiles

using CommonSolve: solve

rng = Random.default_rng()
Random.seed!(rng, 12345)

function lotka_volterra(du, u, p, t)
    x, y = u
    α, β, δ, γ = p
    du[1] = dx = α*x - β*x*y
    du[2] = dy = -δ*y + γ*x*y
end
u0 = [1.0, 1.0]
tspan = (0.0, 10.0)
p = [1.5, 1.0, 3.0, 1.0]
ode_prob = DifferentialEquations.ODEProblem(lotka_volterra, u0, tspan, p)
ode_sol = solve(ode_prob, saveat=0.1)

function predict(parameters, ode_prob=ode_prob, t=ode_sol.t)
    solve(ode_prob, saveat = t, p = parameters)
end
function loss_function(parameters, data)
    pred = Array(predict(parameters))[1,:]
    return sum(abs2, pred .- data)
end

ps_initial = ode_prob.p
data = 1.0
loss_function(ps_initial, data)

losses = Float64[]
function callback(p, l)
    push!(losses, l)
    if length(losses) % 50 == 0
        Plots.plot(losses, show = :inline, yscale = :log10,
            label = "loss", xlabel = "#epochs", ylabel="loss (log10 scale)")
    end
    return false # return bool `halt`
end

ps_trained = let data = data
    minimizer = ps_initial
    opt_function = Optimization.OptimizationFunction(
        (ps, data) -> loss_function(ps, data),
        Optimization.AutoZygote(),
    )
    for (optimizer, maxiters) = [
            (OptimizationOptimisers.Adam(0.1), 300),
            (OptimizationOptimisers.Adam(0.01), 500),
        ]
        opt_prob = Optimization.OptimizationProblem(opt_function, minimizer, data)
        opt_sol = solve(opt_prob, optimizer,
            callback = callback, maxiters = maxiters)
        minimizer = opt_sol.minimizer
    end
    minimizer
end

```

This will throw `julia: /workspace/srcdir/Enzyme/enzyme/Enzyme/GradientUtils.h:2093: llvm::SmallVector<llvm::SelectInst*, 4> DiffeGradientUtils::addToDiffe(llvm::Value*, llvm::Value*, llvm::IRBuilder<>&, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::Value*): Assertion `!isConstantValue(val)’ failed.`

here all the details:

> ****
>
> ```julia
> ; Function Attrs: mustprogress willreturn
> define internal void @diffejulia__220_12422_inner.1([1 x { { [1 x [4 x {} addrspace(10)*]], [1 x i8] }, {} addrspace(10)*, [2 x double], {} addrspace(10)* }] %0, {} addrspace(10)* nonnull align 16 dereferenceable(40) %1, {} addrspace(10)* %"'", {} addrspace(10)* nonnull align 16 dereferenceable(40) %2, {} addrspace(10)* nonnull align 16 dereferenceable(40) %3, double %4) local_unnamed_addr #9 !dbg !109 {
> entry:
> %.fca.0.0.0.0.0.extract = extractvalue [1 x { { [1 x [4 x {} addrspace(10)*]], [1 x i8] }, {} addrspace(10)*, [2 x double], {} addrspace(10)* }] %0, 0, 0, 0, 0, 0, !dbg !110
> %_replacementA = phi {}*** 
> call void @llvm.assume(i1 noundef true) #14
> %5 = bitcast {} addrspace(10)* %.fca.0.0.0.0.0.extract to i64 addrspace(10)*, !dbg !111
> %6 = addrspacecast i64 addrspace(10)* %5 to i64 addrspace(11)*, !dbg !111
> %7 = load i64, i64 addrspace(11)* %6, align 8, !dbg !111, !tbaa !38
> %.not = icmp eq i64 %7, 0, !dbg !120
> br i1 %.not, label %L12.i, label %L13.i, !dbg !123
> 
> L12.i: ; preds = %entry
> %_augmented = call fastcc { { {} addrspace(10)*, {} addrspace(10)*, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }, i64, i64 } @augmented_julia_reinit_wrapper_12426({} addrspace(10)* %.fca.0.0.0.0.0.extract), !dbg !124
> %subcache = extractvalue { { {} addrspace(10)*, {} addrspace(10)*, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }, i64, i64 } %_augmented, 0, !dbg !124
> store { {} addrspace(10)*, {} addrspace(10)*, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* } %subcache, { {} addrspace(10)*, {} addrspace(10)*, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }* %subcache_cache, align 1, !dbg !124, !invariant.group !125
> %8 = extractvalue { { {} addrspace(10)*, {} addrspace(10)*, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }, i64, i64 } %_augmented, 1, !dbg !124
> %"'ac" = extractvalue { { {} addrspace(10)*, {} addrspace(10)*, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }, i64, i64 } %_augmented, 2, !dbg !124
> br label %L13.i, !dbg !124
> 
> L13.i: ; preds = %L12.i, %entry
> %9 = phi i64 [%"'ac", %L12.i], [%7, %entry]
> %value_phi.i = phi i64 [%8, %L12.i], [%7, %entry]
> call fastcc void @julia__220_12422u12425() #15, !dbg !126
> %.not7 = icmp eq i64 %value_phi.i, 0, !dbg !128
> br i1 %.not7, label %fail.i, label %julia__220_12422_inner.exit, !dbg !128
> 
> fail.i: ; preds = %L13.i
> call void @ijl_throw({} addrspace(12)* noundef addrspacecast ({}* inttoptr (i64 140567845548720 to {}*) to {} addrspace(12)*)) #16, !dbg !128
> unreachable
> 
> julia__220_12422_inner.exit: ; preds = %L13.i
> %10 = bitcast {} addrspace(10)* %.fca.0.0.0.0.0.extract to i8 addrspace(10)*, !dbg !129
> %11 = addrspacecast i8 addrspace(10)* %10 to i8 addrspace(11)*, !dbg !129
> %12 = getelementptr inbounds i8, i8 addrspace(11)* %11, i64 8, !dbg !129
> %13 = bitcast i8 addrspace(11)* %12 to i64 addrspace(11)*, !dbg !129
> %14 = load i64, i64 addrspace(11)* %13, align 8, !dbg !129, !tbaa !38
> %"'il_phi1" = phi i64 , !dbg !128
> %"'ipc" = inttoptr i64 %9 to void (i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, double)*, !dbg !128
> %15 = inttoptr i64 %value_phi.i to void (i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, double)*, !dbg !128
> %16 = bitcast void (i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, double)* %"'ipc" to { i8* } (i64, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, double)**, !dbg!128
> %17 = load { i8* } (i64, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, double)*, { i8* } (i64, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, double)** %16, align 8, !dbg !128
> %_augmented2 = call { i8* } %17(i64 %14, i64 %14, {} addrspace(10)* %1, {} addrspace(10)* %"'", {} addrspace(10)* %2, {} addrspace(10)* %2, {} addrspace(10)* %3, {} addrspace(10)* %3, double %4) ["jl_roots"({} addrspace(10)* %3, {} addrspace(10)* %2, {} addrspace(10)* %1, {} addrspace(10)* %"'")], !dbg !128
> %subcache3 = extractvalue { i8* } %_augmented2, 0, !dbg !128
> br label %invertjulia__220_12422_inner.exit, !dbg !110
> 
> allocsForInversion: ; No predecessors!
> %subcache_cache = alloca { {} addrspace(10)*, {} addrspace(10)*, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }, align 1
> store { {} addrspace(10)*, {} addrspace(10)*, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* } zeroinitializer, { {} addrspace(10)*, {} addrspace(10)*, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }* %subcache_cache, align 8
> 
> invertentry: ; preds = %invertL13.i, %invertL12.i
> ret void
> 
> invertL12.i: ; preds = %invertL13.i
> %18 = load { {} addrspace(10)*, {} addrspace(10)*, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }, { {} addrspace(10)*, {} addrspace(10)*, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* }* %subcache_cache, align 1, !invariant.group !125
> call fastcc void @diffejulia_reinit_wrapper_12426({} addrspace(10)* %.fca.0.0.0.0.0.extract, { {} addrspace(10)*, {} addrspace(10)*, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)* } %18), !dbg !124
> br label %invertentry
> 
> invertL13.i: ; No predecessors!
> br i1 %.not, label %invertL12.i, label %invertentry
> 
> invertfail.i: ; No predecessors!
> 
> invertjulia __220_12422_inner.exit: ; preds = %julia__ 220_12422_inner.exit
> %19 = bitcast void (i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, double)* %"'ipc" to { double } (i64, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, double, i8*)**
> %20 = getelementptr { double } (i64, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, double, i8*)*, { double } (i64, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, double, i8*)** %19, i64 1
> %21 = load { double } (i64, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, double, i8*)*, { double } (i64, i64, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, {} addrspace(10)*, double, i8*)** %20, align 8
> %22 = call { double } %21(i64 %14, i64 %14, {} addrspace(10)* %1, {} addrspace(10)* %"'", {} addrspace(10)* %2, {} addrspace(10)* %2, {} addrspace(10)* %3, {} addrspace(10)* %3, double %4, i8* %subcache3) ["jl_roots"({} addrspace(10)* %3, {} addrspace(10)* %2, {} addrspace(10)* %1, {} addrspace(10)* %"'")], !dbg !128
> %23 = extractvalue { double } %22, 0
> }
> 
> double %4
> julia: /workspace/srcdir/Enzyme/enzyme/Enzyme/GradientUtils.h:2093: llvm::SmallVector<llvm::SelectInst*, 4> DiffeGradientUtils::addToDiffe(llvm::Value*, llvm::Value*, llvm::IRBuilder<>&, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::Value*): Assertion `!isConstantValue(val)' failed.
> 
> signal (6): Aborted
> in expression starting at REPL[30]:1
> __pthread_kill_implementation at /nix/store/bzd91shky9j9d43girrrj6vmqlw7x9m8-glibc-2.35-163/lib/libc.so.6 (unknown line)
> raise at /nix/store/bzd91shky9j9d43girrrj6vmqlw7x9m8-glibc-2.35-163/lib/libc.so.6 (unknown line)
> abort at /nix/store/bzd91shky9j9d43girrrj6vmqlw7x9m8-glibc-2.35-163/lib/libc.so.6 (unknown line)
> __assert_fail_base.cold.0 at /nix/store/bzd91shky9j9d43girrrj6vmqlw7x9m8-glibc-2.35-163/lib/libc.so.6 (unknown line)
> __assert_fail at /nix/store/bzd91shky9j9d43girrrj6vmqlw7x9m8-glibc-2.35-163/lib/libc.so.6 (unknown line)
> addToDiffe at /workspace/srcdir/Enzyme/enzyme/Enzyme/GradientUtils.h:2093
> addToDiffe at /workspace/srcdir/Enzyme/enzyme/Enzyme/AdjointGenerator.h:1754 [inlined]
> visitCallInst at /workspace/srcdir/Enzyme/enzyme/Enzyme/AdjointGenerator.h:12285
> delegateCallInst at /opt/x86_64-linux-gnu/x86_64-linux-gnu/sys-root/usr/local/include/llvm/IR/InstVisitor.h:302 [inlined]
> visitCall at /opt/x86_64-linux-gnu/x86_64-linux-gnu/sys-root/usr/local/include/llvm/IR/Instruction.def:209 [inlined]
> visit at /opt/x86_64-linux-gnu/x86_64-linux-gnu/sys-root/usr/local/include/llvm/IR/Instruction.def:209
> visit at /opt/x86_64-linux-gnu/x86_64-linux-gnu/sys-root/usr/local/include/llvm/IR/InstVisitor.h:112 [inlined]
> CreatePrimalAndGradient at /workspace/srcdir/Enzyme/enzyme/Enzyme/EnzymeLogic.cpp:3646
> EnzymeCreatePrimalAndGradient at /workspace/srcdir/Enzyme/enzyme/Enzyme/CApi.cpp:439
> EnzymeCreatePrimalAndGradient at /home/ssahm/.julia/packages/Enzyme/di3zM/src/api.jl:111
> enzyme! at /home/ssahm/.julia/packages/Enzyme/di3zM/src/compiler.jl:3271
> unknown function (ip: 0x7fd83e51f92d)
> _jl_invoke at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/gf.c:2367 [inlined]
> ijl_apply_generic at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/gf.c:2549
> #codegen#80 at /home/ssahm/.julia/packages/Enzyme/di3zM/src/compiler.jl:4158
> codegen##kw at /home/ssahm/.julia/packages/Enzyme/di3zM/src/compiler.jl:3878 [inlined]
> _thunk at /home/ssahm/.julia/packages/Enzyme/di3zM/src/compiler.jl:4599
> unknown function (ip: 0x7fd83e8d422d)
> _jl_invoke at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/gf.c:2367 [inlined]
> ijl_apply_generic at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/gf.c:2549
> cached_compilation at /home/ssahm/.julia/packages/Enzyme/di3zM/src/compiler.jl:4637
> unknown function (ip: 0x7fd83e8949d5)
> _jl_invoke at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/gf.c:2367 [inlined]
> ijl_apply_generic at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/gf.c:2549
> #s565#115 at /home/ssahm/.julia/packages/Enzyme/di3zM/src/compiler.jl:4697 [inlined]
> #s565#115 at ./none:0
> _jl_invoke at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/gf.c:2367 [inlined]
> ijl_apply_generic at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/gf.c:2549
> GeneratedFunctionStub at ./boot.jl:582
> _jl_invoke at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/gf.c:2367 [inlined]
> ijl_apply_generic at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/gf.c:2549
> jl_apply at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/julia.h:1838 [inlined]
> jl_call_staged at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/method.c:520
> ijl_code_for_staged at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/method.c:571
> get_staged at ./compiler/utilities.jl:114
> retrieve_code_info at ./compiler/utilities.jl:126 [inlined]
> InferenceState at ./compiler/inferencestate.jl:284
> typeinf_edge at ./compiler/typeinfer.jl:868
> abstract_call_method at ./compiler/abstractinterpretation.jl:641
> abstract_call_gf_by_type at ./compiler/abstractinterpretation.jl:153
> abstract_call_known at ./compiler/abstractinterpretation.jl:1696
> abstract_call at ./compiler/abstractinterpretation.jl:1766
> abstract_call at ./compiler/abstractinterpretation.jl:1733
> abstract_eval_statement at ./compiler/abstractinterpretation.jl:1890
> typeinf_local at ./compiler/abstractinterpretation.jl:2366
> typeinf_nocycle at ./compiler/abstractinterpretation.jl:2462
> _typeinf at ./compiler/typeinfer.jl:230
> typeinf at ./compiler/typeinfer.jl:213
> [... for the full log see https://github.com/SciML/Optimization.jl/issues/372 ...] 
> _jl_invoke at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/gf.c:2367 [inlined]
> ijl_apply_generic at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/gf.c:2549
> #967 at ./client.jl:419
> jfptr_YY.967_49700.clone_1 at /nix/store/ca4hhym3f57vpmhgvylvqp86cmz9gbis-julia-bin-1.8.1/lib/julia/sys.so (unknown line)
> _jl_invoke at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/gf.c:2367 [inlined]
> ijl_apply_generic at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/gf.c:2549
> jl_apply at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/julia.h:1838 [inlined]
> jl_f__call_latest at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/builtins.c:774
> #invokelatest#2 at ./essentials.jl:729 [inlined]
> invokelatest at ./essentials.jl:726 [inlined]
> run_main_repl at ./client.jl:404
> exec_options at ./client.jl:318
> _start at ./client.jl:522
> jfptr__start_61720.clone_1 at /nix/store/ca4hhym3f57vpmhgvylvqp86cmz9gbis-julia-bin-1.8.1/lib/julia/sys.so (unknown line)
> _jl_invoke at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/gf.c:2367 [inlined]
> ijl_apply_generic at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/gf.c:2549
> jl_apply at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/julia.h:1838 [inlined]
> true_main at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/jlapi.c:575
> jl_repl_entrypoint at /cache/build/default-amdci5-0/julialang/julia-release-1-dot-8/src/jlapi.c:719
> main at julia (unknown line)
> __libc_start_call_main at /nix/store/bzd91shky9j9d43girrrj6vmqlw7x9m8-glibc-2.35-163/lib/libc.so.6 (unknown line)
> __libc_start_main at /nix/store/bzd91shky9j9d43girrrj6vmqlw7x9m8-glibc-2.35-163/lib/libc.so.6 (unknown line)
> unknown function (ip: 0x401098)
> Allocations: 401837661 (Pool: 401721260; Big: 116401); GC: 101
> [1] 441621 abort (core dumped) julia --project
> 
> ```

Here my manifest.toml (as txt because github won’t allow .toml files):  
[Manifest.toml.txt](https://github.com/SciML/Optimization.jl/files/9605238/Manifest.toml.txt)

* * *

I already raised this as an issue on Optimization.jl [Simple SciML case - core dumped after switching from julia 1.7 to 1.8 · Issue #372 · SciML/Optimization.jl · GitHub](https://github.com/SciML/Optimization.jl/issues/372) but it occured to me that the problem might be somewhere completely different, so probably it is more apt for a discourse issue.

Any help is highly appreciated

---

<div class="post-metadata">

**Author:** ![ChrisRackauckas](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chrisrackauckas/32/77_2.png) [@ChrisRackauckas](https://discourse.julialang.org/u/ChrisRackauckas)\
**Post date:** [September 21, 2022, 7:52am UTC](https://discourse.julialang.org/t/simple-sciml-case-core-dumped-after-switching-from-julia-1-7-to-1-8/87549/2 "2022-09-21T07:52:51Z")

</div>

There’s no need to repost the same issue multiple times in a day. I’ll get to it, I was just writing a blog post yesterday. [Blog post on compile time improvements by ChrisRackauckas · Pull Request #90 · SciML/sciml.ai · GitHub](https://github.com/SciML/sciml.ai/pull/90) . More emails of the same thing won’t change time.

Let’s keep this discussion to the equivalent issue.

---

<div class="post-metadata">

**Author:** ![schlichtanders](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/schlichtanders/32/32145_2.png) [@schlichtanders](https://discourse.julialang.org/u/schlichtanders)\
**Post date:** [September 21, 2022, 8:05am UTC](https://discourse.julialang.org/t/simple-sciml-case-core-dumped-after-switching-from-julia-1-7-to-1-8/87549/3 "2022-09-21T08:05:29Z")

</div>

Thank you for the clarification and sorry for the noise.

---

<div class="post-metadata">

**Author:** ![ChrisRackauckas](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chrisrackauckas/32/77_2.png) [@ChrisRackauckas](https://discourse.julialang.org/u/ChrisRackauckas)\
**Post date:** [September 21, 2022, 9:29am UTC](https://discourse.julialang.org/t/simple-sciml-case-core-dumped-after-switching-from-julia-1-7-to-1-8/87549/4 "2022-09-21T09:29:00Z")

</div>

It looks like the issue was using the older DiffEqSensitivity v6 instead of the updated SciMLSensitivity v7. All sources should be updated to SciMLSensitivity.jl when possible, as DiffEqSensitivity was deprecated earlier this year. If you find any tutorials with the old library, please let me know and I’ll update it.

---

<div class="post-metadata">

**Author:** ![ChrisRackauckas](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chrisrackauckas/32/77_2.png) [@ChrisRackauckas](https://discourse.julialang.org/u/ChrisRackauckas)\
**Post date:** [September 21, 2022, 9:35am UTC](https://discourse.julialang.org/t/simple-sciml-case-core-dumped-after-switching-from-julia-1-7-to-1-8/87549/5 "2022-09-21T09:35:51Z")

</div>

I think I found the old tutorial. The Optimization.jl documentation was still showing an older v3.8.2 version of the documentation from June. I just setup a tag to release v3.9 which should update that tutorial.

---

<div class="post-metadata">

**Author:** ![ChrisRackauckas](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chrisrackauckas/32/77_2.png) [@ChrisRackauckas](https://discourse.julialang.org/u/ChrisRackauckas)\
**Post date:** [September 21, 2022, 11:06am UTC](https://discourse.julialang.org/t/simple-sciml-case-core-dumped-after-switching-from-julia-1-7-to-1-8/87549/6 "2022-09-21T11:06:33Z")

</div>

[Data Iterators and Minibatching · Optimization.jl](http://optimization.sciml.ai/stable/tutorials/minibatch/) is updated on stable now. Sorry about that.

---

<div class="post-metadata">

**Author:** ![schlichtanders](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/schlichtanders/32/32145_2.png) [@schlichtanders](https://discourse.julialang.org/u/schlichtanders)\
**Post date:** [September 21, 2022, 2:03pm UTC](https://discourse.julialang.org/t/simple-sciml-case-core-dumped-after-switching-from-julia-1-7-to-1-8/87549/7 "2022-09-21T14:03:22Z")

</div>

Thank you so much about your understanding and help. It works now with SciMLSensitivity 🙂

Your help and commitment to SciML is impressive. You have my admiration.

Because you asked, I also used the code for the original UDE paper as a start: [universal\_differential\_equations/LotkaVolterra at master · ChrisRackauckas/universal\_differential\_equations · GitHub](https://github.com/ChrisRackauckas/universal_differential_equations/tree/master/LotkaVolterra), especially [universal\_differential\_equations/scenario\_2.jl at master · ChrisRackauckas/universal\_differential\_equations · GitHub](https://github.com/ChrisRackauckas/universal_differential_equations/blob/master/LotkaVolterra/scenario_2.jl) which was updated 2 months ago. Hence I thought they are trustworthy and (at least in parts) kept up-to-date.

Would be really awesome if those example could be kept up-to-date such that they can be taken as an alternative start to get into SciML UDEs. (in case that matters, you can point to the original code in the front readme by linking the github-repo-fixed-at-a-specific-commit).

---

<div class="post-metadata">

**Author:** ![ChrisRackauckas](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chrisrackauckas/32/77_2.png) [@ChrisRackauckas](https://discourse.julialang.org/u/ChrisRackauckas)\
**Post date:** [September 21, 2022, 3:08pm UTC](https://discourse.julialang.org/t/simple-sciml-case-core-dumped-after-switching-from-julia-1-7-to-1-8/87549/8 "2022-09-21T15:08:45Z")

</div>

> [@schlichtanders](#):
>
> Because you asked, I also used the code for the original UDE paper as a start: [universal\_differential\_equations/LotkaVolterra at master · ChrisRackauckas/universal\_differential\_equations · GitHub](https://github.com/ChrisRackauckas/universal_differential_equations/tree/master/LotkaVolterra), especially [universal\_differential\_equations/scenario\_2.jl at master · ChrisRackauckas/universal\_differential\_equations · GitHub](https://github.com/ChrisRackauckas/universal_differential_equations/blob/master/LotkaVolterra/scenario_2.jl) which was updated 2 months ago. Hence I thought they are trustworthy and (at least in parts) kept up-to-date.

Those are not up to date. My plan is to get versions of those into the SciMLSensitivity.jl documentation as tutorials, so that way they get tested along with the release process. If they are in a separate untested repo, they will continually go out of date, as they do now, which is a sad problem. I planned to do that this month but got a bit behind on it, so there was some version bump but not the complete one IIRC (there might still be an open PR with a better version?)
