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

Failing tests on master #1789

Closed
jishnub opened this issue Oct 16, 2023 · 7 comments
Closed

Failing tests on master #1789

jishnub opened this issue Oct 16, 2023 · 7 comments

Comments

@jishnub
Copy link
Contributor

jishnub commented Oct 16, 2023

I just cloned the package (v0.25.102), and I found the following tests to be failing on Julia v1.9.3:

MvNormal tests: Error During Test at /home/jishnu/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:82
  Test threw exception
  Expression: sqmahal(g, X)  sqm
  DimensionMismatch: Inconsistent argument dimensions.
  Stacktrace:
    [1] macro expansion
      @ ~/.julia/packages/PDMats/sXfcI/src/utils.jl:6 [inlined]
    [2] invquad!(r::Vector{Float64}, a::PDMat{Float64, Matrix{Float64}}, x::Matrix{Float64})
      @ PDMats ~/.julia/packages/PDMats/sXfcI/src/pdmat.jl:149
    [3] sqmahal!(r::Vector{Float64}, d::FullNormal, x::Matrix{Float64})
      @ Distributions ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormal.jl:269
    [4] sqmahal(d::FullNormal, x::Matrix{Float64})
      @ Distributions ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormal.jl:141
    [5] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:478 [inlined]
    [6] test_mvnormal(g::FullNormal, n_tsamples::Int64, rng::Nothing)
      @ Distributions.TestUtils ~/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:82
    [7] test_mvnormal(g::FullNormal, n_tsamples::Int64)
      @ Distributions.TestUtils ~/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:25
    [8] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:59 [inlined]
    [9] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [10] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:16
   [11] include
      @ ./client.jl:478 [inlined]
   [12] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:174 [inlined]
   [13] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1586 [inlined]
   [14] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173 [inlined]
   [15] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [16] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173
   [17] include(fname::String)
      @ Base.MainInclude ./client.jl:478
   [18] top-level scope
      @ none:6
   [19] eval
      @ ./boot.jl:370 [inlined]
   [20] exec_options(opts::Base.JLOptions)
      @ Base ./client.jl:280
   [21] _start()
      @ Base ./client.jl:522
MvNormal tests: Error During Test at /home/jishnu/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:82
  Test threw exception
  Expression: sqmahal(g, X)  sqm
  DimensionMismatch: Inconsistent argument dimensions.
  Stacktrace:
    [1] macro expansion
      @ ~/.julia/packages/PDMats/sXfcI/src/utils.jl:6 [inlined]
    [2] invquad!(r::Vector{Float64}, a::PDMat{Float64, Matrix{Float64}}, x::Matrix{Float64})
      @ PDMats ~/.julia/packages/PDMats/sXfcI/src/pdmat.jl:149
    [3] sqmahal!(r::Vector{Float64}, d::MvNormal{Float64, PDMat{Float64, Matrix{Float64}}, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, x::Matrix{Float64})
      @ Distributions ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormal.jl:269
    [4] sqmahal(d::MvNormal{Float64, PDMat{Float64, Matrix{Float64}}, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, x::Matrix{Float64})
      @ Distributions ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormal.jl:141
    [5] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:478 [inlined]
    [6] test_mvnormal(g::MvNormal{Float64, PDMat{Float64, Matrix{Float64}}, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, n_tsamples::Int64, rng::Nothing)
      @ Distributions.TestUtils ~/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:82
    [7] test_mvnormal(g::MvNormal{Float64, PDMat{Float64, Matrix{Float64}}, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, n_tsamples::Int64)
      @ Distributions.TestUtils ~/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:25
    [8] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:59 [inlined]
    [9] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [10] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:16
   [11] include
      @ ./client.jl:478 [inlined]
   [12] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:174 [inlined]
   [13] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1586 [inlined]
   [14] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173 [inlined]
   [15] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [16] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173
   [17] include(fname::String)
      @ Base.MainInclude ./client.jl:478
   [18] top-level scope
      @ none:6
   [19] eval
      @ ./boot.jl:370 [inlined]
   [20] exec_options(opts::Base.JLOptions)
      @ Base ./client.jl:280
   [21] _start()
      @ Base ./client.jl:522
MvNormal tests: Error During Test at /home/jishnu/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:82
  Test threw exception
  Expression: sqmahal(g, X)  sqm
  DimensionMismatch: Inconsistent argument dimensions.
  Stacktrace:
    [1] macro expansion
      @ ~/.julia/packages/PDMats/sXfcI/src/utils.jl:6 [inlined]
    [2] invquad!(r::Vector{Float64}, a::PDMat{Float64, Matrix{Float64}}, x::Matrix{Float64})
      @ PDMats ~/.julia/packages/PDMats/sXfcI/src/pdmat.jl:149
    [3] sqmahal!(r::Vector{Float64}, d::ZeroMeanFullNormal{Tuple{Base.OneTo{Int64}}}, x::Matrix{Float64})
      @ Distributions ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormal.jl:269
    [4] sqmahal(d::ZeroMeanFullNormal{Tuple{Base.OneTo{Int64}}}, x::Matrix{Float64})
      @ Distributions ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormal.jl:141
    [5] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:478 [inlined]
    [6] test_mvnormal(g::ZeroMeanFullNormal{Tuple{Base.OneTo{Int64}}}, n_tsamples::Int64, rng::Nothing)
      @ Distributions.TestUtils ~/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:82
    [7] test_mvnormal(g::ZeroMeanFullNormal{Tuple{Base.OneTo{Int64}}}, n_tsamples::Int64)
      @ Distributions.TestUtils ~/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:25
    [8] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:59 [inlined]
    [9] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [10] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:16
   [11] include
      @ ./client.jl:478 [inlined]
   [12] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:174 [inlined]
   [13] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1586 [inlined]
   [14] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173 [inlined]
   [15] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [16] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173
   [17] include(fname::String)
      @ Base.MainInclude ./client.jl:478
   [18] top-level scope
      @ none:6
   [19] eval
      @ ./boot.jl:370 [inlined]
   [20] exec_options(opts::Base.JLOptions)
      @ Base ./client.jl:280
   [21] _start()
      @ Base ./client.jl:522
MvNormal tests: Error During Test at /home/jishnu/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:82
  Test threw exception
  Expression: sqmahal(g, X)  sqm
  DimensionMismatch: Inconsistent argument dimensions.
  Stacktrace:
    [1] macro expansion
      @ ~/.julia/packages/PDMats/sXfcI/src/utils.jl:6 [inlined]
    [2] invquad!(r::Vector{Float64}, a::PDMat{Float64, Matrix{Float64}}, x::Matrix{Float64})
      @ PDMats ~/.julia/packages/PDMats/sXfcI/src/pdmat.jl:149
    [3] sqmahal!(r::Vector{Float64}, d::ZeroMeanFullNormal{Tuple{Base.OneTo{Int64}}}, x::Matrix{Float64})
      @ Distributions ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormal.jl:269
    [4] sqmahal(d::ZeroMeanFullNormal{Tuple{Base.OneTo{Int64}}}, x::Matrix{Float64})
      @ Distributions ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormal.jl:141
    [5] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:478 [inlined]
    [6] test_mvnormal(g::ZeroMeanFullNormal{Tuple{Base.OneTo{Int64}}}, n_tsamples::Int64, rng::Nothing)
      @ Distributions.TestUtils ~/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:82
    [7] test_mvnormal(g::ZeroMeanFullNormal{Tuple{Base.OneTo{Int64}}}, n_tsamples::Int64)
      @ Distributions.TestUtils ~/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:25
    [8] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:59 [inlined]
    [9] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [10] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:16
   [11] include
      @ ./client.jl:478 [inlined]
   [12] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:174 [inlined]
   [13] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1586 [inlined]
   [14] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173 [inlined]
   [15] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [16] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173
   [17] include(fname::String)
      @ Base.MainInclude ./client.jl:478
   [18] top-level scope
      @ none:6
   [19] eval
      @ ./boot.jl:370 [inlined]
   [20] exec_options(opts::Base.JLOptions)
      @ Base ./client.jl:280
   [21] _start()
      @ Base ./client.jl:522
MvNormal tests: Error During Test at /home/jishnu/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:82
  Test threw exception
  Expression: sqmahal(g, X)  sqm
  DimensionMismatch: Inconsistent argument dimensions.
  Stacktrace:
    [1] macro expansion
      @ ~/.julia/packages/PDMats/sXfcI/src/utils.jl:6 [inlined]
    [2] quad!(r::Vector{Float64}, a::PDMat{Float64, Matrix{Float64}}, x::Matrix{Float64})
      @ PDMats ~/.julia/packages/PDMats/sXfcI/src/pdmat.jl:126
    [3] sqmahal!(r::Vector{Float64}, d::FullNormalCanon, x::Matrix{Float64})
      @ Distributions ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormalcanon.jl:168
    [4] sqmahal(d::FullNormalCanon, x::Matrix{Float64})
      @ Distributions ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormal.jl:141
    [5] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:478 [inlined]
    [6] test_mvnormal(g::FullNormalCanon, n_tsamples::Int64, rng::Nothing)
      @ Distributions.TestUtils ~/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:82
    [7] test_mvnormal(g::FullNormalCanon, n_tsamples::Int64)
      @ Distributions.TestUtils ~/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:25
    [8] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:59 [inlined]
    [9] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [10] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:16
   [11] include
      @ ./client.jl:478 [inlined]
   [12] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:174 [inlined]
   [13] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1586 [inlined]
   [14] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173 [inlined]
   [15] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [16] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173
   [17] include(fname::String)
      @ Base.MainInclude ./client.jl:478
   [18] top-level scope
      @ none:6
   [19] eval
      @ ./boot.jl:370 [inlined]
   [20] exec_options(opts::Base.JLOptions)
      @ Base ./client.jl:280
   [21] _start()
      @ Base ./client.jl:522
MvNormal tests: Error During Test at /home/jishnu/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:82
  Test threw exception
  Expression: sqmahal(g, X)  sqm
  DimensionMismatch: Inconsistent argument dimensions.
  Stacktrace:
    [1] macro expansion
      @ ~/.julia/packages/PDMats/sXfcI/src/utils.jl:6 [inlined]
    [2] quad!(r::Vector{Float64}, a::PDMat{Float64, Matrix{Float64}}, x::Matrix{Float64})
      @ PDMats ~/.julia/packages/PDMats/sXfcI/src/pdmat.jl:126
    [3] sqmahal!(r::Vector{Float64}, d::FullNormalCanon, x::Matrix{Float64})
      @ Distributions ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormalcanon.jl:168
    [4] sqmahal(d::FullNormalCanon, x::Matrix{Float64})
      @ Distributions ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormal.jl:141
    [5] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:478 [inlined]
    [6] test_mvnormal(g::FullNormalCanon, n_tsamples::Int64, rng::Nothing)
      @ Distributions.TestUtils ~/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:82
    [7] test_mvnormal(g::FullNormalCanon, n_tsamples::Int64)
      @ Distributions.TestUtils ~/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:25
    [8] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:59 [inlined]
    [9] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [10] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:16
   [11] include
      @ ./client.jl:478 [inlined]
   [12] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:174 [inlined]
   [13] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1586 [inlined]
   [14] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173 [inlined]
   [15] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [16] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173
   [17] include(fname::String)
      @ Base.MainInclude ./client.jl:478
   [18] top-level scope
      @ none:6
   [19] eval
      @ ./boot.jl:370 [inlined]
   [20] exec_options(opts::Base.JLOptions)
      @ Base ./client.jl:280
   [21] _start()
      @ Base ./client.jl:522
MvNormal tests: Error During Test at /home/jishnu/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:82
  Test threw exception
  Expression: sqmahal(g, X)  sqm
  DimensionMismatch: Inconsistent argument dimensions.
  Stacktrace:
    [1] macro expansion
      @ ~/.julia/packages/PDMats/sXfcI/src/utils.jl:6 [inlined]
    [2] invquad!(r::Vector{Float64}, a::PDMat{Float64, Matrix{Float64}}, x::Matrix{Float64})
      @ PDMats ~/.julia/packages/PDMats/sXfcI/src/pdmat.jl:149
    [3] sqmahal!(r::Vector{Float64}, d::FullNormal, x::Matrix{Float64})
      @ Distributions ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormal.jl:269
    [4] sqmahal(d::FullNormal, x::Matrix{Float64})
      @ Distributions ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormal.jl:141
    [5] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:478 [inlined]
    [6] test_mvnormal(g::FullNormal, n_tsamples::Int64, rng::Nothing)
      @ Distributions.TestUtils ~/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:82
    [7] test_mvnormal(g::FullNormal, n_tsamples::Int64)
      @ Distributions.TestUtils ~/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:25
    [8] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:59 [inlined]
    [9] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [10] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:16
   [11] include
      @ ./client.jl:478 [inlined]
   [12] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:174 [inlined]
   [13] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1586 [inlined]
   [14] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173 [inlined]
   [15] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [16] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173
   [17] include(fname::String)
      @ Base.MainInclude ./client.jl:478
   [18] top-level scope
      @ none:6
   [19] eval
      @ ./boot.jl:370 [inlined]
   [20] exec_options(opts::Base.JLOptions)
      @ Base ./client.jl:280
   [21] _start()
      @ Base ./client.jl:522
MvNormal tests: Error During Test at /home/jishnu/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:82
  Test threw exception
  Expression: sqmahal(g, X)  sqm
  DimensionMismatch: Inconsistent argument dimensions.
  Stacktrace:
    [1] macro expansion
      @ ~/.julia/packages/PDMats/sXfcI/src/utils.jl:6 [inlined]
    [2] invquad!(r::Vector{Float64}, a::PDMat{Float64, Matrix{Float64}}, x::Matrix{Float64})
      @ PDMats ~/.julia/packages/PDMats/sXfcI/src/pdmat.jl:149
    [3] sqmahal!(r::Vector{Float64}, d::MvNormal{Float64, PDMat{Float64, Matrix{Float64}}, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, x::Matrix{Float64})
      @ Distributions ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormal.jl:269
    [4] sqmahal(d::MvNormal{Float64, PDMat{Float64, Matrix{Float64}}, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, x::Matrix{Float64})
      @ Distributions ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormal.jl:141
    [5] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:478 [inlined]
    [6] test_mvnormal(g::MvNormal{Float64, PDMat{Float64, Matrix{Float64}}, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, n_tsamples::Int64, rng::Nothing)
      @ Distributions.TestUtils ~/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:82
    [7] test_mvnormal(g::MvNormal{Float64, PDMat{Float64, Matrix{Float64}}, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, n_tsamples::Int64)
      @ Distributions.TestUtils ~/Dropbox/JuliaPackages/Distributions.jl/src/test_utils.jl:25
    [8] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:59 [inlined]
    [9] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [10] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:16
   [11] include
      @ ./client.jl:478 [inlined]
   [12] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:174 [inlined]
   [13] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1586 [inlined]
   [14] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173 [inlined]
   [15] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [16] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173
   [17] include(fname::String)
      @ Base.MainInclude ./client.jl:478
   [18] top-level scope
      @ none:6
   [19] eval
      @ ./boot.jl:370 [inlined]
   [20] exec_options(opts::Base.JLOptions)
      @ Base ./client.jl:280
   [21] _start()
      @ Base ./client.jl:522
moment identities: Error During Test at /home/jishnu/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:245
  Got exception outside of a @test
  PosDefException: matrix is not Hermitian; Cholesky factorization failed.
  Stacktrace:
    [1] checkpositivedefinite(info::Int64)
      @ LinearAlgebra ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/LinearAlgebra/src/factorization.jl:18
    [2] cholesky!(A::Matrix{Float64}, ::NoPivot; check::Bool)
      @ LinearAlgebra ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/LinearAlgebra/src/cholesky.jl:297
    [3] cholesky! (repeats 2 times)
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/LinearAlgebra/src/cholesky.jl:294 [inlined]
    [4] #cholesky#162
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/LinearAlgebra/src/cholesky.jl:400 [inlined]
    [5] cholesky (repeats 2 times)
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/LinearAlgebra/src/cholesky.jl:400 [inlined]
    [6] PDMat(mat::Matrix{Float64})
      @ PDMats ~/.julia/packages/PDMats/sXfcI/src/pdmat.jl:19
    [7] MvNormal
      @ ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormal.jl:201 [inlined]
    [8] *(B::Matrix{Float64}, d::DiagNormal)
      @ Distributions ~/Dropbox/JuliaPackages/Distributions.jl/src/multivariate/mvnormal.jl:298
    [9] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:269 [inlined]
   [10] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [11] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:246 [inlined]
   [12] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [13] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/multivariate/mvnormal.jl:245
   [14] include
      @ ./client.jl:478 [inlined]
   [15] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:174 [inlined]
   [16] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1586 [inlined]
   [17] macro expansion
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173 [inlined]
   [18] macro expansion
      @ ~/packages/julias/julia-1.9/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [19] top-level scope
      @ ~/Dropbox/JuliaPackages/Distributions.jl/test/runtests.jl:173
   [20] include(fname::String)
      @ Base.MainInclude ./client.jl:478
   [21] top-level scope
      @ none:6
   [22] eval
      @ ./boot.jl:370 [inlined]
   [23] exec_options(opts::Base.JLOptions)
      @ Base ./client.jl:280
   [24] _start()
      @ Base ./client.jl:522

Since the CI was green on the commit, perhaps the issue lies upstream? It'll be good to identify this anyway

@devmotion
Copy link
Member

Most certainly caused by the recent PDMats updates. Possibly I introduced a new bug and/or numerical instability in these bugfixes.

@devmotion
Copy link
Member

All but the last issue should be fixed by JuliaStats/PDMats.jl#190.

@devmotion
Copy link
Member

Indeed, with the new PDMats release only the cholesky factorization issue shows up in https://github.com/JuliaStats/Distributions.jl/actions/runs/6338587838.

@devmotion
Copy link
Member

The remaining test error seems to be caused by JuliaStats/PDMats.jl@a97533d: With this performance improvement it becomes more likely that the covariance matrix of the scaled mv normal distribution in

Base.:*(B::AbstractMatrix, d::MvNormal) = MvNormal(B * d.μ, X_A_Xt(d.Σ, B))
is numerically not exactly symmetric. I think we should wrap the output of X_A_Xt in a Symmetric or Hermitian, either in PDMats or Distributions, to avoid such errors.

@devmotion
Copy link
Member

I opened JuliaStats/PDMats.jl#191

@devmotion
Copy link
Member

This fixed the remaining issues, tests on the master branch pass again.

@jishnub
Copy link
Contributor Author

jishnub commented Oct 17, 2023

Thanks for the rapid response and the fixes!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants