Skip to content

UMFPACK algorithm fails with sparse arrays #614

Closed
@ytdHuang

Description

@ytdHuang

Describe the bug 🐞

The following minimal reproducible example (at least) works for LinearSolve v3.4.0, but not for the latest version of LinearSolve

Minimal Reproducible Example 👇

For LinearSolve v3.4.0:

using SparseArrays
using LinearSolve

A = sprand(ComplexF64, 10, 10, 0.5)
b = rand(ComplexF64, 10)

cache = init(LinearProblem(A, b, UMFPACKFactorization()))
sol = solve!(cache)

Error & Stacktrace ⚠️

However, after I upgrade to the latest version of LinearSolve, the above code raises errors:

cache = init(LinearProblem(A, b, UMFPACKFactorization()))
ERROR: ArgumentError: pointer to the SparseArrays.LibSuiteSparse.cholmod_factor_struct object is null. This can happen if the object has been serialized.

which makes

sol = solve!(cache)
ERROR: type Nothing has no field colptr

Environment (please complete the following information):

  • Output of using Pkg; Pkg.status()
LinearSolve v3.14.0
  • Output of versioninfo()
Julia Version 1.10.8
Commit 4c16ff44be8 (2025-01-22 10:06 UTC)
Build Info:
  Official https://julialang.org/ release
Platform Info:
  OS: macOS (x86_64-apple-darwin24.0.0)
  CPU: 12 × Intel(R) Core(TM) i7-8700B CPU @ 3.20GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-15.0.7 (ORCJIT, skylake)
Threads: 1 default, 0 interactive, 1 GC (on 12 virtual cores)

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions