Skip to content

Julia 1.11.5: msolve segfault on multithreaded rational parametrization #97

Description

@rprebet

Since the new Julia version 1.11.5, I get a systematic segmentation fault when calling msolve from any function from solver.jl, with parameter nr_thrds>1. Note that this problem does not occur with the groebner_basis function.

Here is an example of a session where the bug occurs.

   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.11.5 (2025-04-14)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

julia> using AlgebraicSolving

julia> R,(x,y) = polynomial_ring(QQ, [:x,:y])
(Multivariate polynomial ring in 2 variables over QQ, QQMPolyRingElem[x, y])

julia> groebner_basis(Ideal([x+y,x-y]), nr_thrds=2)
2-element Vector{QQMPolyRingElem}:
 y
 x

julia> rational_parametrization(Ideal([x+y,x-y]), nr_thrds=2)

[38300] signal 11 (1): Segmentation fault
in expression starting at REPL[7]:1
Allocations: 10914284 (Pool: 10913944; Big: 340); GC: 14
Segmentation fault (core dumped)

And with the previous Julia release:

   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.10.9 (2025-03-10)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

julia> using AlgebraicSolving

julia> R,(x,y) = polynomial_ring(QQ, [:x,:y])
(Multivariate polynomial ring in 2 variables over QQ, QQMPolyRingElem[x, y])

julia> rational_parametrization(Ideal([x+y,x-y]), nr_thrds=2)
AlgebraicSolving.RationalParametrization([:x, :y], ZZRingElem[], x, 1, Nemo.QQPolyRingElem[0])

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions